How does it work? Sleep , WDG ..
-
Hi.
I want ask for more detail about few function .
Sleep - what timer is used and on what mode??
Watch dog - if set in MCU fuse bit Watch dog always On .. how to set WDG in MySensor ?regards.
-
....em ... why you not write to me that Watch dog is not possible to use because is used for sleep function..
now better understand it..
regards..
gw.process(); is result true or false .. what depend what is result?
and how to check ACK if sens pakcet to gateway??regards...
-
It returns true if there is a (none-internal) message available destined for this node. But usually you would want to use the call-back functionality to pick up the messages.
https://github.com/mysensors/Arduino/blob/master/libraries/MySensors/MySensor.cpp#L378
Regarding sleep.. not forbidden to look in the code you know...
https://github.com/mysensors/Arduino/blob/master/libraries/MySensors/MySensor.cpp#L462
-
hi hek ..
Yes I look to source code to understand how it working ..
for sleep function I understand for 100% .. is used watchdog as timer ..and INT0,INT1 for wake up from sleep ..but for ACK .. pls write the practical code how to check if send packet from (for example : BinarySwitchSleep ) node to gateway check ACK , that packet delivery for 100% to gateway.. I need to know this ...
pls help me with this code ..
regards ..
-
-
good.. but problem is not possible for battery operated..
I want make binary switch sleep with ack function.. is it possible??
If send command to gateway want inform user that packet delivery for 100%.. but battery operated..in my house I use rf switch on the wall .. not working for 100% and are only one way (not inform if command 100% delivery) then I want new one ..
battery operated device with ACK..regards
-
Then you myst wait and call process() for a while before going to sleep or resend message.
-
yes.. I know must wait some time .. but I don't know how to do it .. I can use some timer for waiting .. but need help with this .. then use example for relay actuator .. and if send packet from button (int0 for example) then wait some time (100ms for example) if not received ACK then beep or blink led..
regards
-
No need to introduce times... just use millis().
Pseudo code:
unit saved_time; loop() { gw.process() if (value-changed-and-time-to-send) { send-some-value-with-ack saved_time = millis(); } if (millis()-saved_time > 500) // 0.5 sec gotosleep }
-
yeah , I will test it .. thanks . If button change then send packet with ACK , and wait .. if not ack received then error ..
rebards
Suggested Topics
-
Watchdog on Ethernet Gateway
General Discussion • 18 Feb 2015, 18:48 • BulldogLowell 22 Jul 2015, 17:56 -
Binary / Temp sensor help - sleep time
Development • 16 Nov 2014, 05:21 • niccodemi 17 Nov 2014, 05:08 -
Watchdog on 2.0
General Discussion • 11 Sept 2016, 16:10 • CrankyCoder 7 Jan 2017, 11:57 -
Reboot Node
General Discussion • 20 May 2016, 17:34 • dzairo 21 May 2016, 08:01 -
Update RF24 library to latest version
Bug Reports • 23 Mar 2014, 23:37 • andriej 24 Mar 2014, 22:52 -
sleep mode not working as expected...
Development • 16 Sept 2018, 08:59 • rmh 16 Sept 2018, 17:32