Skip to content
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
S

sPENKMAN

@sPENKMAN
About
Posts
6
Topics
2
Shares
0
Groups
0
Followers
0
Following
0

Posts

Recent Best Controversial

  • What did you build today (Pictures) ?
    S sPENKMAN

    A (long) time ago I had my own Android app which talked xmlrpc to a Python script, which talked serial with my Arduino which in his turn talked 433 Mhz to our outlets turning lights on and off. All was dandy until Android 4 came along and something stopped working security wise and we were send back into the middle ages.

    Today I successfully got MySensors working enabling me to read temp/hum from a node and letting me send Elro signals into the air over 433Mhz from OpenHAB2. Now I can scale, extend and upgrade my sensors and actuators I can move forward and start improving our home.

    Arduino Uno r3, 433Mhz transmitter, DHT11 sensor

    General Discussion

  • Unable to send message from gw to sensor(!TSF:MSG:SEND)
    S sPENKMAN

    I knew it had to be something simple, but damn! Thank you so much, now I finally can go forward with my project. Fun times ahead!

    I was aware that the node/child id setup wasn't quite in order but as it didn't stood in my way I hadn't made the effort to change it from the example.

    Troubleshooting

  • Unable to send message from gw to sensor(!TSF:MSG:SEND)
    S sPENKMAN

    Problem: Everything seems to work correctly except the fact that I'm unable to send any message of my own.
    Goal: Sending any given message to my sensor.
    What I need: Guidance in how I can debug this.

    After setting everything up I telnet to port 5003 on my PI and get greeted by the gateway after which I see data passing by:

    0;255;3;0;14;Gateway startup complete.
    0;255;0;0;18;2.2.0-rc.1
    2;255;1;0;16;1
    2;255;1;0;16;0
    2;255;1;0;16;1
    2;255;1;0;16;0
    2;255;1;0;16;1
    2;255;1;0;16;0
    2;255;1;0;16;1
    2;255;1;0;16;0
    

    As soon as I send my own message 2;255;1;0;16;2 I'm seeing the following in the logs of my gateway:

    mysgw: Client 0: 2;255;1;0;16;2
    mysgw: !TSF:MSG:SEND,0-0-2-2,s=255,c=1,t=16,pt=0,l=1,sg=0,ft=0,st=NACK:2
    

    At this point I don't know what I can do to debug this any further. I've tried switching power sources with and without the voltage converter and capacitors but all to no avail.


    Some logs for insight are added to the bottom of this post:

    • #1: Gateway starting up
    • #2: Gateway registering sensor
    • #3: Sensor registering to gateway

    My Gateway hardware consist of:

    • 1x Raspberry Pi 1B
    • 1x nrf24l01
    • 1x LD1337 voltage regulator
    • 2x 100uF capacitor (on 5v and 3.3v side of the regulator)
    • 1x 47uF capacitor (on the VCC/GND of the nrf24)

    and has been configured with the following:

    $ git clone https://github.com/mysensors/MySensors.git --branch development
    $ cd MySensors
    $ sudo ./configure --my-transport=nrf24
    ...
    $ make
    ...
    $ sudo ./bin/mysgw -d
    

    Note: current commit I'm on is 682a6b0.

    My Sensor hardware consists of:

    • Arduino Uno r3
    • 1x nrf24l01
    • 1x 47uF capacitor (on the VCC/GND of the nrf24)

    and has been configured with the following:

    #define MY_DEBUG
    #define MY_RADIO_NRF24
    
    #include <SPI.h>
    #include <MySensors.h>
    
    #define OPEN 1
    #define CLOSE 0
    
    MyMessage msg(MY_NODE_ID, V_TRIPPED);
    
    uint8_t value = OPEN;
    
    void presentation()
    {
        present(MY_NODE_ID, S_DOOR);
    }
    
    void loop()
    {
        value = value == OPEN ? CLOSE : OPEN;
        send(msg.set(value));
        sleep(10000);
    }
    
    void receive(const MyMessage &message)
    {
      Serial.println("Received message from the big giant head!");
    }
    

    Logs:
    #1: Gateway starting up

    $ sudo ./bin/mysgw -d
    mysgw: Starting gateway...
    mysgw: Protocol version - 2.2.0-rc.1
    mysgw: MCO:BGN:INIT GW,CP=RNNGL---,VER=2.2.0-rc.1
    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
    

    #2: Gateway registering sensor

    mysgw: TSF:MSG:READ,2-2-255,s=255,c=3,t=7,pt=0,l=0,sg=0:
    mysgw: TSF:MSG:BC
    mysgw: TSF:MSG:FPAR REQ,ID=2
    mysgw: TSF:CKU:OK,FCTRL
    mysgw: TSF:MSG:GWL OK
    mysgw: TSF:MSG:SEND,0-0-2-2,s=255,c=3,t=8,pt=1,l=1,sg=0,ft=0,st=OK:0
    mysgw: TSF:MSG:READ,2-2-0,s=255,c=3,t=24,pt=1,l=1,sg=0:1
    mysgw: TSF:MSG:PINGED,ID=2,HP=1
    mysgw: TSF:MSG:SEND,0-0-2-2,s=255,c=3,t=25,pt=1,l=1,sg=0,ft=0,st=OK:1
    mysgw: TSF:MSG:READ,2-2-0,s=255,c=3,t=15,pt=6,l=2,sg=0:0100
    mysgw: TSF:MSG:SEND,0-0-2-2,s=255,c=3,t=15,pt=6,l=2,sg=0,ft=0,st=OK:0100
    mysgw: TSF:MSG:READ,2-2-0,s=255,c=0,t=17,pt=0,l=5,sg=0:2.1.1
    mysgw: TSF:MSG:READ,2-2-0,s=255,c=3,t=6,pt=1,l=1,sg=0:0
    mysgw: TSF:MSG:READ,2-2-0,s=255,c=0,t=0,pt=0,l=5,sg=0:2.1.1
    mysgw: TSF:MSG:READ,2-2-0,s=255,c=3,t=26,pt=1,l=1,sg=0:2
    mysgw: TSF:MSG:SEND,0-0-2-2,s=255,c=3,t=27,pt=1,l=1,sg=0,ft=0,st=OK:1
    mysgw: TSF:MSG:READ,2-2-0,s=255,c=1,t=16,pt=1,l=1,sg=0:0
    

    #3: Sensor registering to gateway

    0 MCO:BGN:INIT NODE,CP=RNNNA--,VER=2.1.1
    3 TSM:INIT
    4 TSF:WUR:MS=0
    11 TSM:INIT:TSP OK
    13 TSF:SID:OK,ID=2
    14 TSM:FPAR
    51 TSF:MSG:SEND,2-2-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
    177 TSF:MSG:READ,0-0-2,s=255,c=3,t=8,pt=1,l=1,sg=0:0
    182 TSF:MSG:FPAR OK,ID=0,D=1
    2058 TSM:FPAR:OK
    2059 TSM:ID
    2060 TSM:ID:OK
    2062 TSM:UPL
    2065 TSF:MSG:SEND,2-2-0-0,s=255,c=3,t=24,pt=1,l=1,sg=0,ft=0,st=OK:1
    2077 TSF:MSG:READ,0-0-2,s=255,c=3,t=25,pt=1,l=1,sg=0:1
    2082 TSF:MSG:PONG RECV,HP=1
    2085 TSM:UPL:OK
    2086 TSM:READY:ID=2,PAR=0,DIS=1
    2092 TSF:MSG:SEND,2-2-0-0,s=255,c=3,t=15,pt=6,l=2,sg=0,ft=0,st=OK:0100
    2098 TSF:MSG:READ,0-0-2,s=255,c=3,t=15,pt=6,l=2,sg=0:0100
    2105 TSF:MSG:SEND,2-2-0-0,s=255,c=0,t=17,pt=0,l=5,sg=0,ft=0,st=OK:2.1.1
    2114 TSF:MSG:SEND,2-2-0-0,s=255,c=3,t=6,pt=1,l=1,sg=0,ft=0,st=OK:0
    4121 TSF:MSG:SEND,2-2-0-0,s=255,c=0,t=0,pt=0,l=5,sg=0,ft=0,st=OK:2.1.1
    4128 MCO:REG:REQ
    4131 TSF:MSG:SEND,2-2-0-0,s=255,c=3,t=26,pt=1,l=1,sg=0,ft=0,st=OK:2
    4137 TSF:MSG:READ,0-0-2,s=255,c=3,t=27,pt=1,l=1,sg=0:1
    4143 MCO:PIM:NODE REG=1
    4145 MCO:BGN:INIT OK,TSP=1
    4149 TSF:MSG:SEND,2-2-0-0,s=255,c=1,t=16,pt=1,l=1,sg=0,ft=0,st=OK:0
    
    Troubleshooting

  • RPi ethernet gateway doesn't send messages to the acuator
    S sPENKMAN

    It's been some time but I tried to pick up this project again, now with some fresh ordered LD1117V33 regulators for my 3.3v needs. I setup a "power supply bread bord" where the LD1117V33 has a parallel 100uF capacitor on the Vin and Vout connected to the common ground. The multimeter agrees on the 3.3v Vout, so far so good.

    I've tried hooking up the nrf24 chip with the bread bord on the Arduino and on the PI and the results are identical... Everything works as expected until I actively try to send something from the controller throught the gateway to my actuator.

    In both cases the init goes well;

    pi@raspberrypi:/usr/src/MySensors $ sudo /usr/local/bin/mysgw -d
    mysgw: Starting gateway...
    mysgw: Protocol version - 2.1.1
    mysgw: MCO:BGN:INIT GW,CP=RNNG---,VER=2.1.1
    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
    

    I start the Arduino which starts sending data as seen on the raspberry pi gateway;

    mysgw: TSF:MSG:READ,1-1-255,s=255,c=3,t=7,pt=0,l=0,sg=0:
    mysgw: TSF:MSG:BC
    mysgw: TSF:MSG:FPAR REQ,ID=1
    mysgw: TSF:PNG:SEND,TO=0
    mysgw: TSF:CKU:OK
    mysgw: TSF:MSG:GWL OK
    mysgw: TSF:MSG:SEND,0-0-1-1,s=255,c=3,t=8,pt=1,l=1,sg=0,ft=0,st=OK:0
    mysgw: TSF:MSG:READ,1-1-0,s=255,c=3,t=24,pt=1,l=1,sg=0:1
    mysgw: TSF:MSG:PINGED,ID=1,HP=1
    mysgw: TSF:MSG:SEND,0-0-1-1,s=255,c=3,t=25,pt=1,l=1,sg=0,ft=0,st=OK:1
    mysgw: TSF:MSG:READ,1-1-0,s=255,c=3,t=15,pt=6,l=2,sg=0:0100
    mysgw: !TSF:MSG:SEND,0-0-1-1,s=255,c=3,t=15,pt=6,l=2,sg=0,ft=0,st=NACK:0100
    mysgw: TSF:MSG:READ,1-1-0,s=255,c=3,t=6,pt=1,l=1,sg=0:0
    mysgw: TSF:MSG:READ,1-1-0,s=255,c=3,t=11,pt=0,l=22,sg=0:TemperatureAndHumidity
    mysgw: TSF:MSG:READ,1-1-0,s=255,c=3,t=12,pt=0,l=3,sg=0:1.1
    mysgw: TSF:MSG:READ,1-1-0,s=0,c=0,t=7,pt=0,l=0,sg=0:
    mysgw: TSF:MSG:READ,1-1-0,s=1,c=0,t=6,pt=0,l=0,sg=0:
    mysgw: TSF:MSG:READ,1-1-0,s=2,c=0,t=3,pt=0,l=0,sg=0:
    mysgw: TSF:MSG:READ,1-1-0,s=255,c=3,t=26,pt=1,l=1,sg=0:2
    mysgw: TSF:MSG:SEND,0-0-1-1,s=255,c=3,t=27,pt=1,l=1,sg=0,ft=0,st=OK:1
    mysgw: TSF:MSG:READ,1-1-0,s=1,c=1,t=0,pt=7,l=5,sg=0:24.0
    mysgw: TSF:MSG:READ,1-1-0,s=0,c=1,t=1,pt=7,l=5,sg=0:54.0
    

    In the above output I see multiple TSF:MSG:SEND commands passing by without issues and receive data from the Arduino as well. This leads me to the conclusion that there is no power issue on either side and bidirectional communication is established (just like before).

    As soon as I try to toggle a light switch in OpenHAB the following lines show in the gateway log:

    mysgw: !TSF:MSG:SEND,0-0-1-1,s=2,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=NACK:0
    mysgw: Client 0:
    mysgw: Client 0: 1;2;1;1;2;0
    mysgw: !TSF:MSG:SEND,0-0-1-1,s=2,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=NACK:0
    mysgw: Client 0:
    mysgw: Client 0: 1;2;1;1;2;0
    mysgw: !TSF:MSG:SEND,0-0-1-1,s=2,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=NACK:0
    mysgw: Client 0:
    mysgw: Client 0: 1;2;1;1;2;0
    mysgw: !TSF:MSG:SEND,0-0-1-1,s=2,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=NACK:0
    mysgw: Client 0:
    mysgw: Client 0: 1;2;1;1;2;0
    mysgw: !TSF:MSG:SEND,0-0-1-1,s=2,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=NACK:0
    mysgw: Client 0:
    
    Troubleshooting

  • RPi ethernet gateway doesn't send messages to the acuator
    S sPENKMAN

    @mfalkvidd said in RPi ethernet gateway doesn't send messages to the acuator:

    Welcome to the MySensors community @sPENKMAN :)

    If you haven't already, see https://forum.mysensors.org/topic/666/debug-faq-and-how-ask-for-help/
    That page lists the most common problem and has links to the log parser and how to interpret the log messages.

    Thank you! I have been lingering around while planning the automation project but now was a good time to actually register ;) I actually did check the debug faq (which is very informative) but couldn't connect my issues to one of the problems.

    NACK:1 means that the gateway did not get an acknowledgement from the node, which makes sense since the node didn't receive the message.

    The most common problem is power. You do have the recommended capacitor on both radios, right? If you are using the PA+LNA version, is the power supply sufficiently powerful and able to provide clean power?

    I've have a 4,7uF capacitor on each side which are roughly 3-4 meters apart with only a bit of furniture in between. The power is being draw from the RPi 3.3v and arduino uno 3.3v () and I'm using the regular NRF24L01+ on both. I concur that the power issue would be most logical explanation if it weren't for the message my Arduino receives correctly at boot each and every time. If power where to be the issue I'm experiencing I would suspect to see more failures from gw -> node communications but that isn't the case so far.

    Troubleshooting

  • RPi ethernet gateway doesn't send messages to the acuator
    S sPENKMAN

    Last week I tinkered my setup together consisting of:

    • Controler: OpenHAB (Dockerized 2.1.0-snapshot) with MySensors binding and Influx persistence addon
    • Gateway: RPi running latest Raspbian with nrf24
    • Sensor: Arduino UNO providing temp/humidity

    All works perfectly and data is visible in OpenHAB / influx. The next step is to lay a foundation so I can send signals from OpenHAB to my sensor. I've added the 'receive()' function to my sensors code which only prints the message type and payload:

    void receive(const MyMessage &message) {
        Serial.print("Message type: ");
        Serial.println(message.type);
    
        String light = message.getString();
        Serial.print("Message payload: ");
        Serial.println(light);
    }
    

    This seems to works as expected as I'm seeing the "Message type" output in my Serial console when I boot the Arduino:

    Starting sensor (RNNNA-, 2.0.0)
    TSM:INIT
    TSM:RADIO:OK
    TSP:ASSIGNID:OK (ID=1)
    TSM:FPAR
    TSP:MSG:SEND 1-1-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=bc:
    TSP:MSG:READ 0-0-1 s=255,c=3,t=8,pt=1,l=1,sg=0:0
    TSP:MSG:FPAR RES (ID=0, dist=0)
    TSP:MSG:FPAR (PPAR FOUND)
    TSP:MSG:PAR OK (ID=0, dist=1)
    TSM:FPAR:OK
    TSM:ID
    TSM:CHKID:OK (ID=1)
    TSM:UPL
    TSP:PING:SEND (dest=0)
    TSP:MSG:SEND 1-1-0-0 s=255,c=3,t=24,pt=1,l=1,sg=0,ft=0,st=ok:1
    TSP:MSG:READ 0-0-1 s=255,c=3,t=25,pt=1,l=1,sg=0:1
    TSP:MSG:PONG RECV (hops=1)
    TSP:CHKUPL:OK
    TSM:UPL:OK
    TSM:READY
    TSP:MSG:SEND 1-1-0-0 s=255,c=3,t=15,pt=6,l=2,sg=0,ft=0,st=ok:0100
    TSP:MSG:SEND 1-1-0-0 s=255,c=0,t=17,pt=0,l=5,sg=0,ft=0,st=ok:2.0.0
    TSP:MSG:SEND 1-1-0-0 s=255,c=3,t=6,pt=1,l=1,sg=0,ft=0,st=ok:0
    TSP:MSG:READ 0-0-1 s=255,c=3,t=15,pt=6,l=2,sg=0:0100
    Message type: 15
    Message payload: 
    TSP:MSG:READ 0-0-1 s=255,c=3,t=6,pt=0,l=1,sg=0:I
    TSP:MSG:SEND 1-1-0-0 s=255,c=3,t=11,pt=0,l=22,sg=0,ft=0,st=ok:TemperatureAndHumidity
    TSP:MSG:SEND 1-1-0-0 s=255,c=3,t=12,pt=0,l=3,sg=0,ft=0,st=ok:1.1
    TSP:MSG:SEND 1-1-0-0 s=0,c=0,t=7,pt=0,l=0,sg=0,ft=0,st=ok:
    TSP:MSG:SEND 1-1-0-0 s=1,c=0,t=6,pt=0,l=0,sg=0,ft=0,st=ok:
    TSP:MSG:SEND 1-1-0-0 s=2,c=0,t=3,pt=0,l=0,sg=0,ft=0,st=ok:
    Request registration...
    TSP:MSG:SEND 1-1-0-0 s=255,c=3,t=26,pt=1,l=1,sg=0,ft=0,st=ok:2
    TSP:MSG:READ 0-0-1 s=255,c=3,t=27,pt=1,l=1,sg=0:1
    Node registration=1
    Init complete, id=1, parent=0, distance=1, registration=1
    TSP:MSG:SEND 1-1-0-0 s=1,c=1,t=0,pt=7,l=5,sg=0,ft=0,st=ok:22.0
    T: 22.00
    TSP:MSG:SEND 1-1-0-0 s=0,c=1,t=1,pt=7,l=5,sg=0,ft=0,st=ok:59.0
    H: 59.00
    TSP:MSG:SEND 1-1-0-0 s=0,c=1,t=1,pt=7,l=5,sg=0,ft=0,st=ok:60.0
    H: 60.00
    

    However, when I send something (nothing relevant just yet) I'm seeing the following on my gateway (running with the debug flag) while nothing happens on the serial console of my sensor. What am I missing here?

    mysgw: Client 1: 1;2;1;0;2;1
    mysgw: !TSF:MSG:SEND,0-0-1-1,s=2,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=NACK:1
    mysgw: Client 1:
    

    If more information is required please let me know and I will add it asap.

    Troubleshooting
  • Login

  • Don't have an account? Register

  • Login or register to search.
  • First post
    Last post
0
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular