NRF24L01+PA+LNA msg send failure
-
Thanks for your advice guys. I've also verified the 20 standard NRF24L01+ that I got and I found 18 of them working fine, 1 not working at all and another with a behavior similar to the +PA+LNA, even if a bit more random but still failing while sending. To me this means I need to test a few more NRF24L01+PA+LNA to drive any conclusion :-)
-
I've just received two new NRF24L01+PA+LNA and the result is always the same (send failure). I'm using also a capacitor and external power supply for the radio. Only minor difference I've noticed is when defining MY_RF24_PA_LEVEL as RF24_PA_MIN, 1 time out of 10 seems working for a while but I couldn't understand the why behind that single time that is working. Looks like there is something I do (consistently) wrong since the result is the same with 3 different devices :)
-
I've just tried with a few different channels but the result is the same. This was a good try, thanks for pointing it out!
-
Have you tried to recompile the gateway? I don't like "Listening for connections on 0.0.0.0:5003"
In addition if the log is still the same (remember to check it on the https://www.mysensors.org/build/parser) it seems gateway is receiving the message and it also replies but the node with ID 2 is not responding: chances are node has some problems or signal/antenna is not right. I have seen videos on youtube where some Chinese products were shipped with wrong frequency antenna that of course caused problems.
-
Yes, I tried it, I've moved from the raspberry gw (used in my first post, hence the listening from connections) to a serial gw to test the new boards. I've also tried to replace the two arduino boards (both gateway and sensor) and the NRF24L01 radio on the sensor.
I've also noticed I did not run a test so far with encryption disabled. I turned it off and nothing changed. Don't know if it is expected but I've also measures the current draw for the gw with the NRF24L01+PA+LNA and it was around 24mA. Of course I have a basic multimeter so it is not accurate but I was expecting way more than that with MY_RF24_PA_LEVEL not defined. -
I had similar issues. I had a serial GW with a NRF24L01+PA+LNA and the option MY_RF24_PA_LEVEL to HIGH and worked for more than one year; than I decided to convert it to an Ethernet GW and I had many failure in sending messages. When I was out of ideas (after checking connection wiring and power issues, adding capacitor, making the ugly shield fix) I decided to play with the MY_RF24_PA_LEVEL, and it started to work again with the value MIN.
-
Thank you both, I'll try to give RF24_PA_MIN another try since also in my case happened to work (even if for just a couple of times) with this setting (default if not set is RF24_PA_MAX).
-
I run a few other tests with MY_RF24_PA_LEVEL always set to RF24_PA_MIN and the results are...very random which is the worst scenario :-/
Basic setup with a serial gateway with NRF24L01+PA+LNA and simple sensor with NRF24L01. Out of 15 reboot of both of them, a couple of times the gw was able to send the message but even in this case apparently with some failures in between:0;255;3;0;9;TSF:MSG:BC 0;255;3;0;9;TSF:MSG:FPAR REQ,ID=100 0;255;3;0;9;TSF:CKU:OK,FCTRL 0;255;3;0;9;TSF:MSG:GWL OK 0;255;3;0;9;TSF:MSG:SEND,0-0-100-100,s=255,c=3,t=8,pt=1,l=1,sg=0,ft=0,st=OK:0 0;255;3;0;9;TSF:MSG:READ,100-100-0,s=255,c=3,t=24,pt=1,l=1,sg=0:1 0;255;3;0;9;TSF:MSG:PINGED,ID=100,HP=1 0;255;3;0;9;TSF:MSG:SEND,0-0-100-100,s=255,c=3,t=25,pt=1,l=1,sg=0,ft=0,st=OK:1 0;255;3;0;9;TSF:MSG:READ,100-100-0,s=255,c=3,t=15,pt=6,l=2,sg=0:0100 0;255;3;0;9;!TSF:MSG:SEND,0-0-100-100,s=255,c=3,t=15,pt=6,l=2,sg=0,ft=0,st=NACK:0100 0;255;3;0;9;TSF:MSG:READ,100-100-0,s=255,c=0,t=17,pt=0,l=5,sg=0:2.1.1 100;255;0;0;17;2.1.1 0;255;3;0;9;TSF:MSG:READ,100-100-0,s=255,c=3,t=6,pt=1,l=1,sg=0:0 100;255;3;0;6;0 0;255;3;0;9;TSF:MSG:READ,100-100-0,s=255,c=3,t=11,pt=0,l=19,sg=0:NodeManagerTemplate 100;255;3;0;11;NodeManagerTemplate 0;255;3;0;9;TSF:MSG:READ,100-100-0,s=255,c=3,t=12,pt=0,l=3,sg=0:1.2 100;255;3;0;12;1.2 0;255;3;0;9;TSF:MSG:READ,100-100-0,s=200,c=0,t=23,pt=0,l=0,sg=0: 100;200;0;0;23; 0;255;3;0;9;TSF:MSG:READ,100-100-0,s=201,c=0,t=30,pt=0,l=0,sg=0: 100;201;0;0;30; 0;255;3;0;9;TSF:MSG:READ,100-100-0,s=255,c=3,t=0,pt=1,l=1,sg=0:90 100;255;3;0;0;90 0;255;3;0;9;TSF:MSG:READ,100-100-0,s=255,c=3,t=26,pt=1,l=1,sg=0:2 0;255;3;0;9;!TSF:MSG:SEND,0-0-100-100,s=255,c=3,t=27,pt=1,l=1,sg=0,ft=0,st=NACK:1I've tried again by combining external power, moving the sensor closer, changing capacitor but looks like those do not have an influence (positive or negative) with my test.
Excluding a hardware failure (since sometimes it works and is consistent with 3 different radios), I guess has still something to do with the lack of power. I'd probably move to RFM69 or add a NRF24L01 repeater if range becomes an issue unless I'm missing something else... Thanks! -
I run a few other tests with MY_RF24_PA_LEVEL always set to RF24_PA_MIN and the results are...very random which is the worst scenario :-/
Basic setup with a serial gateway with NRF24L01+PA+LNA and simple sensor with NRF24L01. Out of 15 reboot of both of them, a couple of times the gw was able to send the message but even in this case apparently with some failures in between:0;255;3;0;9;TSF:MSG:BC 0;255;3;0;9;TSF:MSG:FPAR REQ,ID=100 0;255;3;0;9;TSF:CKU:OK,FCTRL 0;255;3;0;9;TSF:MSG:GWL OK 0;255;3;0;9;TSF:MSG:SEND,0-0-100-100,s=255,c=3,t=8,pt=1,l=1,sg=0,ft=0,st=OK:0 0;255;3;0;9;TSF:MSG:READ,100-100-0,s=255,c=3,t=24,pt=1,l=1,sg=0:1 0;255;3;0;9;TSF:MSG:PINGED,ID=100,HP=1 0;255;3;0;9;TSF:MSG:SEND,0-0-100-100,s=255,c=3,t=25,pt=1,l=1,sg=0,ft=0,st=OK:1 0;255;3;0;9;TSF:MSG:READ,100-100-0,s=255,c=3,t=15,pt=6,l=2,sg=0:0100 0;255;3;0;9;!TSF:MSG:SEND,0-0-100-100,s=255,c=3,t=15,pt=6,l=2,sg=0,ft=0,st=NACK:0100 0;255;3;0;9;TSF:MSG:READ,100-100-0,s=255,c=0,t=17,pt=0,l=5,sg=0:2.1.1 100;255;0;0;17;2.1.1 0;255;3;0;9;TSF:MSG:READ,100-100-0,s=255,c=3,t=6,pt=1,l=1,sg=0:0 100;255;3;0;6;0 0;255;3;0;9;TSF:MSG:READ,100-100-0,s=255,c=3,t=11,pt=0,l=19,sg=0:NodeManagerTemplate 100;255;3;0;11;NodeManagerTemplate 0;255;3;0;9;TSF:MSG:READ,100-100-0,s=255,c=3,t=12,pt=0,l=3,sg=0:1.2 100;255;3;0;12;1.2 0;255;3;0;9;TSF:MSG:READ,100-100-0,s=200,c=0,t=23,pt=0,l=0,sg=0: 100;200;0;0;23; 0;255;3;0;9;TSF:MSG:READ,100-100-0,s=201,c=0,t=30,pt=0,l=0,sg=0: 100;201;0;0;30; 0;255;3;0;9;TSF:MSG:READ,100-100-0,s=255,c=3,t=0,pt=1,l=1,sg=0:90 100;255;3;0;0;90 0;255;3;0;9;TSF:MSG:READ,100-100-0,s=255,c=3,t=26,pt=1,l=1,sg=0:2 0;255;3;0;9;!TSF:MSG:SEND,0-0-100-100,s=255,c=3,t=27,pt=1,l=1,sg=0,ft=0,st=NACK:1I've tried again by combining external power, moving the sensor closer, changing capacitor but looks like those do not have an influence (positive or negative) with my test.
Excluding a hardware failure (since sometimes it works and is consistent with 3 different radios), I guess has still something to do with the lack of power. I'd probably move to RFM69 or add a NRF24L01 repeater if range becomes an issue unless I'm missing something else... Thanks!@user2684 I have had very similar issues to yours with my Arduino Mega Ethernet GW with nrf24l01+ lna+pa. It turned out the 5V to 3.3V regulator was at fault. nrf24l01+ lna+pa is using more current during peak and hence require a very stable power. I took me months to figure out the problem as AMS1117 was intermittent. As soon as I re-soldered a new one, the RF transmission stabilised. No more lost nodes and "FAIL" in the log.
Appreciated you have checked it all many times, but there is no magic. Either this is a power issue or just try a different transmitter.
-
Thanks @alexsh1, your message suggested to me also to try powering the radio with 3 AA batteries and a AMS1117 instead of a direct connection to 2 AA batteries but I couldn't appreciate any positive change. Thanks all for your support, I'll put the NRF24L01+PA+LNA aside for now and just use NRF24L01 for the short range and RFM69 for a longer range.
-
Thanks @alexsh1, your message suggested to me also to try powering the radio with 3 AA batteries and a AMS1117 instead of a direct connection to 2 AA batteries but I couldn't appreciate any positive change. Thanks all for your support, I'll put the NRF24L01+PA+LNA aside for now and just use NRF24L01 for the short range and RFM69 for a longer range.
@user2684 I'm powering the GW with a decent 5V PSU (5V 2A) and then only for nrfl01+ LNA+PA i reduce 5V through AMS1117 to a stable 3.3V.
One last time, please try this and see if there are any changesI have never heard nrf24l01+ LNA+PA being powered with batteries. Any reason for this?
-
Oh sorry, I used the batteries just because for quickest to test but I understand this may impact the test iselft, sorry for that. I've tested the setup you recommended, 5V 2A feeding the AMS1117, powering the nrfl01+ LNA+PA. Same situation, I see the READ but fails on SEND :-/
-
Oh sorry, I used the batteries just because for quickest to test but I understand this may impact the test iselft, sorry for that. I've tested the setup you recommended, 5V 2A feeding the AMS1117, powering the nrfl01+ LNA+PA. Same situation, I see the READ but fails on SEND :-/
-
Closer to one meter and then away 7-8 meters, I haven't notice any difference even after rebooting 2-3 times both the devices
-
Closer to one meter and then away 7-8 meters, I haven't notice any difference even after rebooting 2-3 times both the devices
-
Closer to one meter and then away 7-8 meters, I haven't notice any difference even after rebooting 2-3 times both the devices
@user2684 Have you swapped in a regular non-LNA-PA nrf radio to confirm everything else (software, hardware) is working fine? In other words absolutely every single solitary thing identical except the board.
These particular boards appear to be very low quality, probably are made with reject components, etc, none of the four I bought consume the same current.
But 2 of the four work OK at 100 yards thru walls with zero fussing around with power settings, capacitors, tinfoil hat, antennas, etc. Oh, and this is with the board powered by the 3v output on a cheap Uno clone (no cap).
There is no question in my mind that by far the most likely culprit is a crappy board, and unless you are comparing results side by side with a known good board and configuration you are doomed to perpetual tinkering. I gave up on these and have been shopping for much more expensive correctly built radios instead.
(But surprisingly some of the cheap $2 non-LNA-PA radios seem to work nearly as well... with little unit-to-unit variation.)
This is not voodoo, it's simple electronics. Crappy hardware quality is a giant waste of time.
Tim
-
So to respond to everybody, yes I'm using the capacitor between vcc and gnd of the radio (on every reboot I change a few of them going up to 100uF), I've tried the three nrf24l01+ LNA+PA that I have, I've played with the antenna all without luck.
0;255;3;0;9;TSM:INIT 0;255;3;0;9;TSF:WUR:MS=0 0;255;3;0;9;TSM:INIT:TSP OK 0;255;3;0;9;TSM:INIT:GW MODE 0;255;3;0;9;TSM:READY:ID=0,PAR=0,DIS=0 0;255;3;0;9;MCO:REG:NOT NEEDED 0;255;3;0;14;Gateway startup complete. 0;255;0;0;18;2.1.1 0;255;3;0;9;MCO:BGN:STP 0;255;3;0;9;MCO:BGN:INIT OK,TSP=1 0;255;3;0;9;TSF:MSG:READ,100-100-255,s=255,c=3,t=7,pt=0,l=0,sg=0: 0;255;3;0;9;TSF:MSG:BC 0;255;3;0;9;TSF:MSG:FPAR REQ,ID=100 0;255;3;0;9;TSF:CKU:OK,FCTRL 0;255;3;0;9;TSF:MSG:GWL OK 0;255;3;0;9;!TSF:MSG:SEND,0-0-100-100,s=255,c=3,t=8,pt=1,l=1,sg=0,ft=0,st=NACK:0 0;255;3;0;9;TSF:MSG:READ,100-100-255,s=255,c=3,t=7,pt=0,l=0,sg=0: 0;255;3;0;9;TSF:MSG:BC 0;255;3;0;9;TSF:MSG:FPAR REQ,ID=100 0;255;3;0;9;TSF:CKU:OK,FCTRL 0;255;3;0;9;TSF:MSG:GWL OK 0;255;3;0;9;!TSF:MSG:SEND,0-0-100-100,s=255,c=3,t=8,pt=1,l=1,sg=0,ft=0,st=NACK:0 0;255;3;0;9;TSF:MSG:READ,100-100-255,s=255,c=3,t=7,pt=0,l=0,sg=0: 0;255;3;0;9;TSF:MSG:BC 0;255;3;0;9;TSF:MSG:FPAR REQ,ID=100 0;255;3;0;9;TSF:CKU:OK,FCTRL 0;255;3;0;9;TSF:MSG:GWL OK 0;255;3;0;9;!TSF:MSG:SEND,0-0-100-100,s=255,c=3,t=8,pt=1,l=1,sg=0,ft=0,st=NACK:0 0;255;3;0;9;TSF:MSG:READ,100-100-255,s=255,c=3,t=7,pt=0,l=0,sg=0: 0;255;3;0;9;TSF:MSG:BC 0;255;3;0;9;TSF:MSG:FPAR REQ,ID=100 0;255;3;0;9;TSF:CKU:OK,FCTRL 0;255;3;0;9;TSF:MSG:GWL OK 0;255;3;0;9;!TSF:MSG:SEND,0-0-100-100,s=255,c=3,t=8,pt=1,l=1,sg=0,ft=0,st=NACK:0To your point @Grubstake every time I connect back a standard nrf24l01 everything works just fine. I've just realized though I've bought the three boards from the same aliexpress vendor even if in different times. Maybe they are all coming from the same crappy stock. Just out of curiosity I may buy another one from a different vendor...