Many Hearbeat request at the same time
-
Hi,
My nodes are only Smart sleep enabled with sleep duration of 60 minutes
When they wake up, nodes do job and send heartbeat response before sleep.
At this moment, MyController ask many Heartbeat request (I think they are queud during 60 minutes).
Sample log :mysgw: TSF:MSG:READ,4-4-0,s=255,c=3,t=22,pt=5,l=4,sg=0:206897 mysgw: TSF:MSG:SEND,0-0-4-4,s=255,c=3,t=18,pt=0,l=0,sg=0,ft=0,st=OK: mysgw: TSF:MSG:READ,4-4-0,s=255,c=3,t=22,pt=5,l=4,sg=0:207241 mysgw: TSF:MSG:SEND,0-0-4-4,s=255,c=3,t=18,pt=0,l=0,sg=0,ft=0,st=OK: mysgw: TSF:MSG:READ,4-4-0,s=255,c=3,t=22,pt=5,l=4,sg=0:207291 mysgw: TSF:MSG:SEND,0-0-4-4,s=255,c=3,t=18,pt=0,l=0,sg=0,ft=0,st=OK: mysgw: TSF:MSG:READ,4-4-0,s=255,c=3,t=22,pt=5,l=4,sg=0:207438 mysgw: TSF:MSG:SEND,0-0-4-4,s=255,c=3,t=18,pt=0,l=0,sg=0,ft=0,st=OK: mysgw: TSF:MSG:READ,4-4-0,s=255,c=3,t=22,pt=5,l=4,sg=0:207471
Here they a way to remove duplicate call in queue ?
Thanks -
We can address this in two ways.
-
Change global
Node alive check interval
to 60 minutes. If you do not have any active node.
-
Suppose you have active node(repeater node) and want to change this interval for particular node. Edit the node and on properties add
"aliveCheckInterval":60
which means check alive status 60 minutes once.
-
-
@jkandasa Thanks for your response
I already use "aliveCheckInterval" propreties with value 7 (minutes)
(you have create this after my request : http://forum.mycontroller.org/topic/109/best-way-to-check-status-of-mysensors-sleeping-node/3 , many thanks for this)
But my Smart Sleep nodes have a particular way of doing his jobs :
They sleep during X seconds for an number of loop without Smart Sleep (so no heartbeat sended, no wait for response) and after T (threshold) loops , do a smart sleep, then restart his cycle...
For example :
My Node do normal sleep during 300 seconds (X) with threshold 10, so after 10 loop of normal sleep, it makes a smart sleep (heartbeat send + wait 2 seconds).I do this for battery saving (less wait time).
Maybe I'm wrong and I should always do smart sleep....
Or set aliveCheckInterval to 50 minutes (300*10)