[SOLVED] My node fails to send



  • Hello everyone, I'm new here.
    I built my first project with the MySensors framework, and I don't know why I have communication issues.
    Here's the hardware configuration :

    • Sensor node : arduino nano with a DS18B20 and a NRF24L01+ (with 47µF cap on Vcc Gnd)
    • Gateway : ESP8266 and NRF24L01+ (send MQTT message via wifi)
    • Message decoder : Raspberry Pi 3B with node red

    I can see on my Raspberry incomming MQTT messages when I subscribe to the topic, but the payload is always empty !
    When I check the nodes console log, I see always the same error at the same moment.
    Here is what I get in the console (sensor node)

    16 MCO:BGN:INIT NODE,CP=RNNNA---,VER=2.3.0
    25 TSM:INIT
    26 TSF:WUR:MS=0
    33 TSM:INIT:TSP OK
    35 TSM:FPAR
    37 TSF:MSG:SEND,255-255-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
    331 TSF:MSG:READ,0-0-255,s=255,c=3,t=8,pt=1,l=1,sg=0:0
    336 TSF:MSG:FPAR OK,ID=0,D=1
    2046 TSM:FPAR:OK
    2048 TSM:ID
    2049 TSM:ID:REQ
    2052 TSF:MSG:SEND,255-255-0-0,s=1,c=3,t=3,pt=0,l=0,sg=0,ft=0,st=OK:
    4059 TSM:ID
    4060 TSM:ID:REQ
    4062 TSF:MSG:SEND,255-255-0-0,s=220,c=3,t=3,pt=0,l=0,sg=0,ft=0,st=OK:
    6070 TSM:ID
    6071 TSM:ID:REQ
    6073 TSF:MSG:SEND,255-255-0-0,s=183,c=3,t=3,pt=0,l=0,sg=0,ft=0,st=OK:
    8081 TSM:ID
    8082 TSM:ID:REQ
    8084 TSF:MSG:SEND,255-255-0-0,s=146,c=3,t=3,pt=0,l=0,sg=0,ft=0,st=OK:
    10092 !TSM:ID:FAIL
    10093 TSM:FAIL:CNT=1
    10095 TSM:FAIL:DIS
    10097 TSF:TDI:TSL
    20100 TSM:FAIL:RE-INIT
    20102 TSM:INIT
    20109 TSM:INIT:TSP OK
    20111 TSM:FPAR

    Here is the failed line using the log parser : "Transition to Failure state, consecutive failure counter is 1"

    So I think this is why I never get a payload in my MQTT messages, the sensor node does'nt even send the sensor data, but I don't know why !

    Have someone ever had the same situation ?

    Thanks for your help.


  • Mod

    @david-muller hi and welcome to the forum!
    Your sensor node should either have a fixed node ID, or your controller should hand one out on request by the node.
    As you're using node-red the easiest solution is to hardcore the node ID in the sensor node :

    #define MY_NODE_ID 1
    

    and place it before #include <MySensors.h>


  • Admin

    @David-Muller

    If you don't want to hardcode node ID's then there is the option of using node-red-contrib-mysensors, and the MysController node within that package, as it can hand out node ids for you.



  • Beautiful, I added the define and it works very good now !
    Big thanks to you !!!


 

402
Online

8.0k
Users

8.8k
Topics

94.3k
Posts