NRF24L01+ problems in 2.1.1 and 2.2.0 Beta



  • Hello,

    I would like to submit a bug report for these libraries in the use of NRF24L01+ radio

    I have problems with NRF24L01+ on both 2.1.1 and 2.2.0 Beta

    I have installed a fresh RPI with all new libraries and trying to make a RPI Serial GW

    In 2.1.1 it doesn't start at all but in 2.2.0 it starts but in the log I constantly receive the following in the Domoticz log where I have added the GW

    I2017-10-09 19:25:12.306 MySensors: Gateway Version: 2.2.0-beta
    2017-10-09 19:25:12.306 Error: Serial Port closed!... Error: End of file
    2017-10-09 19:25:13.306 MySensors: retrying in 30 seconds...
    

    After a while I get the following in the console

    mysgw: TSF:MSG:READ,0-0-0,s=0,c=3,t=2,pt=0,l=11,sg=0:Get Version
    mysgw: !TSF:MSG:LEN,0!=18 
    

    The above points at something wrong with the radio connection

    I have tried 3 different radios but still no luck so I guess it has something to do with the libraries


  • Mod

    Did you try to compile it as ethernet gw?



  • This post is deleted!


  • @gohan Yes, I have tried compiling it as Ethernet GW but that didn't work either

    Output:

    mysgw: Starting gateway...
    mysgw: Protocol version - 2.2.0-beta
    mysgw: MCO:BGN:INIT GW,CP=RNNGL---,VER=2.2.0-beta
    mysgw: TSF:LRT:OK
    mysgw: TSM:INIT
    mysgw: TSF:WUR:MS=0
    mysgw: TSM:INIT:TSP OK
    mysgw: TSM:INIT:GW MODE
    mysgw: TSM:READY:ID=0,PAR=0,DIS=0
    mysgw: MCO:REG:NOT NEEDED
    mysgw: Listening for connections on 0.0.0.0:5003
    mysgw: MCO:BGN:STP
    mysgw: MCO:BGN:INIT OK,TSP=1
    mysgw: TSF:MSG:READ,0-0-0,s=0,c=0,t=0,pt=0,l=0,sg=0:
    mysgw: !TSF:MSG:LEN,0!=7
    mysgw: TSF:MSG:READ,0-0-0,s=0,c=0,t=0,pt=0,l=0,sg=0:
    mysgw: !TSF:MSG:LEN,0!=7
    mysgw: TSF:MSG:READ,0-0-0,s=0,c=0,t=0,pt=0,l=0,sg=0:
    mysgw: !TSF:MSG:LEN,0!=7
    mysgw: TSF:MSG:READ,0-0-0,s=0,c=0,t=0,pt=0,l=0,sg=0:
    mysgw: !TSF:MSG:LEN,0!=7
    mysgw: New connection from 127.0.0.1
    mysgw: Client 0 connected
    mysgw: Client 0: 0;0;3;0;2;
    mysgw: Client 0: 0;0;3;0;2;Get Version
    mysgw: Client 0: 0;0;3;0;18;PING
    mysgw: TSF:MSG:READ,0-0-0,s=0,c=3,t=18,pt=0,l=4,sg=0:PING
    mysgw: !TSF:MSG:LEN,0!=11
    mysgw: TSF:MSG:READ,0-0-0,s=0,c=3,t=18,pt=0,l=4,sg=0:PING
    mysgw: !TSF:MSG:LEN,0!=11
    
    

    Then the GW repeats the last 2 lines forever

    Compiled it with IP 127.0.0.1 for the controller and port 5003

    It does not pick up the sensors and values

    If I compile it with the local IP of the controller I get the following errors

    mysgw: Starting gateway...
    mysgw: Protocol version - 2.2.0-beta
    mysgw: MCO:BGN:INIT GW,CP=RNNGL---,VER=2.2.0-beta
    mysgw: TSF:LRT:OK
    mysgw: TSM:INIT
    mysgw: TSF:WUR:MS=0
    mysgw: TSM:INIT:TSP OK
    mysgw: TSM:INIT:GW MODE
    mysgw: TSM:READY:ID=0,PAR=0,DIS=0
    mysgw: MCO:REG:NOT NEEDED
    mysgw: connect: Connection refused
    mysgw: failed to connect
    mysgw: Eth: connect
    mysgw: connect: Connection refused
    

    After that the last 2 lines repeats forever


  • Mod

    @miljume 2.1.1 has been out for many months without problem, so it is not likely that there is a problem with the MySensors library. But you could of course have stumbled on a corner case that no-one has seen before.

    Could you post the full debug log for the gateway and the full configure command you used to compile it?

    Edit: sorry, I see that you have the full log in a later post. So just post the configure command and branch/version used for each output.



  • @mfalkvidd Sure, below are commands and debug logs for both 2.1.1 and 2.2.0 Beta

    As you can see both of the Gateways fails with 2.1.1. I have seen other people having the exact same problem so that is why I thought it could be something with the libraries

    Commands with 2.2.0 Beta (serial GW)

    ./configure --my-transport=nrf24
    ./configure --my-gateway=serial --my-serial-is-pty --my-serial-pty=/dev/ttyUSB020
    make
    

    Debug Log

    mysgw: Starting gateway...
    mysgw: Protocol version - 2.2.0-beta
    mysgw: MCO:BGN:INIT GW,CP=RNNGL---,VER=2.2.0-beta
    mysgw: TSF:LRT:OK
    mysgw: TSM:INIT
    mysgw: TSF:WUR:MS=0
    mysgw: TSM:INIT:TSP OK
    mysgw: TSM:INIT:GW MODE
    mysgw: TSM:READY:ID=0,PAR=0,DIS=0
    mysgw: MCO:REG:NOT NEEDED
    mysgw: MCO:BGN:STP
    mysgw: MCO:BGN:INIT OK,TSP=1
    

    Domoticz Log

    2017-10-10 18:43:07.538 MySensors: Using serial port: /dev/ttyUSB020
    2017-10-10 18:43:07.538 Error: Serial Port closed!... Error: End of file
    2017-10-10 18:43:08.538 MySensors: retrying in 30 seconds...
    

    Repeats every 30th second,

    Commands with 2.2.0 Beta (Ethernet GW)

    ./configure --my-transport=nrf24
    ./configure --my-gateway=ethernet --my-port=5003
    ./configure --my-gateway=ethernet --my-controller-ip-address=127.0.0.1
    make
    

    Debug Log

    mysgw: Starting gateway...
    mysgw: Protocol version - 2.2.0-beta
    mysgw: MCO:BGN:INIT GW,CP=RNNGL---,VER=2.2.0-beta
    mysgw: TSF:LRT:OK
    mysgw: TSM:INIT
    mysgw: TSF:WUR:MS=0
    mysgw: TSM:INIT:TSP OK
    mysgw: TSM:INIT:GW MODE
    mysgw: TSM:READY:ID=0,PAR=0,DIS=0
    mysgw: MCO:REG:NOT NEEDED
    mysgw: connect: Connection refused
    mysgw: failed to connect
    mysgw: Eth: connect
    mysgw: connect: Connection refused
    mysgw: failed to connect
    mysgw: Eth: connect
    

    Commands with 2.1.1 (serial GW)

    ./configure --my-transport=nrf24
    ./configure --my-gateway=serial --my-serial-is-pty --my-serial-pty=/dev/ttyUSB020
    make
    

    Debug Log

    mysgw: Starting gateway...
    mysgw: Protocol version - 2.1.1
    mysgw: MCO:BGN:INIT GW,CP=RNNG---,VER=2.1.1
    mysgw: TSM:INIT
    mysgw: TSF:WUR:MS=0
    mysgw: !TSM:INIT:TSP FAIL
    mysgw: TSM:FAIL:CNT=1
    mysgw: TSM:FAIL:PDT
    

    Commands with 2.1.1 (Ethernet GW)

    ./configure --my-transport=nrf24
    ./configure --my-gateway=ethernet --my-port=5003
    ./configure --my-gateway=ethernet --my-controller-ip-address=127.0.0.1
    make
    

    Debug Log

    mysgw: Starting gateway...
    mysgw: Protocol version - 2.1.1
    mysgw: MCO:BGN:INIT GW,CP=RNNG---,VER=2.1.1
    mysgw: TSM:INIT
    mysgw: TSF:WUR:MS=0
    mysgw: !TSM:INIT:TSP FAIL
    mysgw: TSM:FAIL:CNT=1
    mysgw: TSM:FAIL:PDT
    

  • Mod

    @miljume thanks. And yes, there seems to be something fishy going on since other people also have problems.

    I don't have a spare raspberry pi at the moment so I can't reproduce the problem. Hopefully someone else can help troubleshooting. I'll try to get my hands on a new raspberry within a week.


  • Mod

    @miljume said in NRF24L01+ problems in 2.1.1 and 2.2.0 Beta:

    ./configure --my-transport=nrf24
    ./configure --my-gateway=ethernet --my-port=5003

    it should be on a single line like this

    ./configure --my-transport=nrf24 --my-gateway=ethernet --my-port=5003
    

    --my-controller-ip-address=127.0.0.1 is not needed



  • @gohan Thanks, will try that as soon as I can


  • Mod

    @miljume I've seen the same length errors in the past when my radio wiring wasn't stable (flaky jumper wires). The TSP Fail messages indicate the same.
    Could you check your connections from the pi to the radio?



  • @Yveaux Thanks for the feedback but I am using a RPI Shield so the connections should be stable



  • @miljume I am having the same issue since 2.1 and trying to revert to 2.2 beta it fails as well. I am using an RPi model 2 B and the same RPI shield (I have traded out the shield as I have a few and same result). All of my nodes have been offline for months as the gateway does not function.


  • Mod

    I remember there was a bug in the library for rpi2 but I can't remember the details



  • @gohan That bug had to do with the chipset but that was resolved i think.



  • @gohan Now I have tried compiling it with one line command but the GW still don't start with 2.1.1

    ./configure --my-transport=nrf24 --my-gateway=ethernet --my-port=5003
    
    mysgw: Starting gateway...
    mysgw: Protocol version - 2.1.1
    mysgw: MCO:BGN:INIT GW,CP=RNNG---,VER=2.1.1
    mysgw: TSM:INIT
    mysgw: TSF:WUR:MS=0
    mysgw: !TSM:INIT:TSP FAIL
    mysgw: TSM:FAIL:CNT=1
    mysgw: TSM:FAIL:PDT
    

  • Mod

    @miljume I see alternating !TSM:INIT:TSP Fail and TSM:INIT:TSP OK in your logs.
    The fails indicate a failure to communicate with the radio module.
    Is there a pattern in these fails between software versions?



  • @Yveaux The FAIL´s all occur with 2.1.1 and the OK is with 2.2.0 Beta. Same radio connections for both so the FAIL´s should not be connected to communication with the radio module. I have also tried 3 radios and 2 different ways of connecting them (Shield and Dupont cables) Even if 2.2.0 starts OK the problem is that it for the Ethernet GW it fails to connect

    mysgw: Starting gateway...
    mysgw: Protocol version - 2.2.0-beta
    mysgw: MCO:BGN:INIT GW,CP=RNNGL---,VER=2.2.0-beta
    mysgw: TSF:LRT:OK
    mysgw: TSM:INIT
    mysgw: TSF:WUR:MS=0
    mysgw: TSM:INIT:TSP OK
    mysgw: TSM:INIT:GW MODE
    mysgw: TSM:READY:ID=0,PAR=0,DIS=0
    mysgw: MCO:REG:NOT NEEDED
    mysgw: connect: Connection refused
    mysgw: failed to connect
    mysgw: Eth: connect
    mysgw: connect: Connection refused
    mysgw: failed to connect
    mysgw: Eth: connect
    

    And for the Serial GW it gives the following error in Domoticz

    2017-10-10 18:43:07.538 MySensors: Using serial port: /dev/ttyUSB020
    2017-10-10 18:43:07.538 Error: Serial Port closed!... Error: End of file
    2017-10-10 18:43:08.538 MySensors: retrying in 30 seconds...
    

    None of them picks up sensor reports


  • Mod

    Do you have a spare microsd and try a clean install ?



  • @gohan I have tried a clean install both with Rapbian Stretch and Raspbian Jessie but the results are the same


  • Mod

    Did you check if spi is enabled in configuration? Sorry for stupid questions, but I need to broaden the search for the issue


Log in to reply
 

279
Online

6.7k
Users

7.6k
Topics

80.4k
Posts

Looks like your connection to MySensors Forum was lost, please wait while we try to reconnect.