- Posts: 12
- Thank you received: 0
public void Setup()
{
EventHelper.ModuleChangedHandler((o, m, p) =>
{
if (m.Domain == Domains.VIRTUAL && m.Address == "N9S0" && p.Property == "Sensor.Temperature")
DriverHelper.ProcessCommad(Domains.MYSENSORS, "N2S1", "ControlLevel", p.Value);
return true;
});
}
Please Log in or Create an account to join the conversation.
mihai.aldea wrote: Yes, that's exactly what I did.
N9S0 is a virtual node configured as Temperature Output, N2S1 is a physical node also configured as Temperature Output.
If I move the N9S0 glider up or down, it changes its value, however the N2S1 value remains unchanged. If I upload a sketch that prevents N2S1 from sleeping (without the gw.sleep() directive) and leave it to constantly loop on gw.process(), whenever I change N9S0 value, it is instantly replicated to N2S1.
This is the automation code I'm using:
public void Setup() { EventHelper.ModuleChangedHandler((o, m, p) => { if (m.Domain == Domains.VIRTUAL && m.Address == "N9S0" && p.Property == "Sensor.Temperature") DriverHelper.ProcessCommad(Domains.MYSENSORS, "N2S1", "ControlLevel", p.Value); return true; }); }
This is why I think that a Temperature Output value can not be updated unless the physical node gets the info, sends the acknowledgement to the gateway and the gateway updates the gauge with the actual data sent back by the node as part of the acknowledgement.
Please Log in or Create an account to join the conversation.