@tekka You sir, are my new best friend
Sure enough, disabling the debug and uploading the code seems to make everything work. The gateway outputs the correct IP and is now pingable !
@tekka You sir, are my new best friend
Sure enough, disabling the debug and uploading the code seems to make everything work. The gateway outputs the correct IP and is now pingable !
Just a little update:
I build a serial gateway and attached it to Domoticz. Been working ever since, even during the night. Guess this is the way to go for now.
@sundberg84 I've tried different power supplies already with the same problem.
I'll source some more components from different shops and will build another gateway to test. Will report back once done.
@tekka After my original report that the serial gateway worked through the night, I have had to reset it every ~24 hours. Somewhere around that timeframe, the serial gateway just doesn't respond anymore. Restarting the controller doesn't help. When I reset the serial gateway, it instantly works again and continues to do so for around 24 hours. So it seems that although the serial gateway works longer, it eventually also suffers the same issue.... Is this some kind of memory leak perhaps ?
@tekka I've got a bunch of esp8266 modules laying around. Maybe I'll just search how to wire those up to my nano's and find some code to run it as a dedicated gateway / sensor node. I've noticed the site uses a NodeMCU board for this instead of an Arduino (Nano) ?
Just a little update:
I build a serial gateway and attached it to Domoticz. Been working ever since, even during the night. Guess this is the way to go for now.
@tekka Yeah, I was afraid of that....
I think I might just build a serial gateway and use that for Domoticz as those seem a lot more stable. Then when I find a good source for a w5100 module, I'll get some of those for building an ethernet gateway.
The next run it only took 20 mins. before the gateway stopped responding....
@tekka Next I tried is adding a capacitor to both the gateway and node RF module. I added a 10uF capacitor to both of them. This seems to have stabilized RF communication. I'm not seeing any failures anymore and data is flowing...
Back to the original issue... The gateway that seems to die...
I've added some debug statements to the loop() to see if this would keep on running when the gateway seemingly dies.
After 2 hours of operation, the gateway stopped responding to pings, and the controller also noticed the gateway was not alive anymore. When this happens, the output of the serial console is :
New loop iteration: 21734
New loop iteration: 21735
New loop iteration: 21736
New loop iteration: 21737
New loop iteration: 21738
New loop iteration: 21739
New loop iteration: 21740
New loop iteration: 21741
New loop iteration: 21742
New loop iteration: 21743
New loop iteration: 21744
As you can see, my loop code keeps on running at this point, suggesting it's just the ENC interface thats no longer reachable or has an issue. When I close and re-open the serial port monitor from the Arduino IDE, the gateway springs back to life and everything starts working again.
@tekka Before I go the route of messing with the power supply, I did some fiddling...
I added the following statements to both the gateway and the sensor sketches:
//LOW POWER MODE RADIO
#define MY_RF24_PA_LEVEL RF24_PA_LOW
//DEBUG FOR RADIO
#define MY_DEBUG_VERBOSE_RF24
//RADIO THROUGHPUT
#define MY_RF24_DATARATE RF24_1MBPS
Next I put them a little bit closer together (around 80cm apart). The FPAR:FAIL message are gone now. I see in the output on the Sensor node that it communicates with the gateway. Currently, the gateway is running with this setup and the controller (Domoticz) gets values. So this seems to be working OK.
However, on the sensor node, the log sometimes indicates an error. Something like this :
RF24:write register, reg=0, value=14
RF24:open writing pipe, recipient=0
RF24:write register, reg=10, value=0
RF24:write register, reg=16, value=0
RF24:send message to 0, len=12
RF24:flushTX
RF24:write register, reg=7, value=48
RF24:MAX_RT
RF24:flushTX
RF24:start listening
RF24:write register, reg=0, value=15
RF24:write register, reg=10, value=1
!TSP:MSG:SEND 1-1-0-0 s=1,c=1,t=0,pt=7,l=5,sg=0,ft=4,st=fail:29.0
T: 29.00
RF24:write register, reg=0, value=12
RF24:power down
RF24:write register, reg=0, value=12
RF24:power down
RF24:stop listening
RF24:write register, reg=0, value=14
RF24:open writing pipe, recipient=0
RF24:write register, reg=10, value=0
RF24:write register, reg=16, value=0
RF24:send message to 0, len=12
RF24:flushTX
RF24:write register, reg=7, value=48
RF24:start listening
RF24:write register, reg=0, value=15
RF24:write register, reg=10, value=1
TSP:MSG:SEND 1-1-0-0 s=0,c=1,t=1,pt=7,l=5,sg=0,ft=5,st=ok:36.0
H: 36.00
RF24:write register, reg=0, value=12
RF24:power down
From what I've read, the st:fail means there was an error transmitting the value. Could this still be power related ? It seems so intermittent to me that my gut tells me power isn't the issue.
@tekka Sorry it took a while.
I gave it a try, but ever since adding print statements to the gateway loop(), the sensor nodes stopped communicating with it given FPAR failures. Even when I remove the print statements and return to the previous state, it keeps on giving FPAR failures on all sensor nodes... What would cause this ?
May have spoken to soon....
Although the gateway now runs, after a few mins it seems to die. LAN leds keep blinking everything seems in order, but it's not pingable anymore and Domoticz starts logging messages that the gateway is unreachable. Is this somehow related? Or is this a whole different issue?
@tekka probably knows what to do, right?