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
T

the_programmer

@the_programmer
About
Posts
5
Topics
1
Shares
0
Groups
0
Followers
0
Following
0

Posts

Recent Best Controversial

  • Gateway unable to assign ID to Temperature Sensor example
    T the_programmer

    Well I found the error:
    The problem
    The thing is that the solder bridge was hidden under the plastic header.

    Troubleshooting

  • Gateway unable to assign ID to Temperature Sensor example
    T the_programmer

    @Sparkman @emurr Thanks for the help so far.

    Although I didn't mentioned in my start post I made a nice shield containing the NRF24L01+ transceiver and LED's. The base for my shield is a arduino proto shield and it looks like some of the internal shield wiring messes with my serial port and/or my SPI bus :angry:.

    If I just connect the pins I need for the NRF24L01+ transceiver the shield works fine.

    I have some hardware debugging to do but thanks for your help.

    Troubleshooting

  • Gateway unable to assign ID to Temperature Sensor example
    T the_programmer

    Ok, So I got myscontroller running on windows. (Looks good) So now for the rest.

    If I use automatic ID assignment I'm still not getting the ID assigned although myscontroller is trying to set the ID.

    So since I expected that the NRF24L01+ transceiver could be wrong I just tried swapping the transceivers from the gateway and the sensor. However the ID still can't be assigned by myscontroller.

    Any other suggestions on what I can check if the comms is working.

    I now also tried the following sketch with the sensor in repeater mode so I'm "forcing" the comms to be alive (at least, I hope) but this also won't work.
    https://codebender.cc/sketch:108647

    So now I have 3 questions:
    How do I send a message from myscontroller so that I can test the communication (what message would be good for this)?
    Is there a special sketch so I can test the communication between 2 units (gateway and sensor)? ping-pong?
    Is there a "advanced debug" option?

    Troubleshooting

  • Gateway unable to assign ID to Temperature Sensor example
    T the_programmer

    Update:

    I just edited the temperature sample to include the #define DEBUG statement at the beginning of the temperature transmitter sample, also I added a 10uF capacitor on the supply lines of the NRF24L01+ transceiver on the side of the temperature transmitter.

    The debug output is below:

    sensor started, id 255
    req node id
    send: 255-255-0-0 s=255,c=3,t=3,pt=0,l=0,st=ok:
    <repeated x times>
    <I also have lines containing:>
    send: 255-255-0-0 s=255,c=3,t=3,pt=0,l=0,st=fail:
    

    Hope this helps

    Edit:
    I'm wondering: is there a way to do some "ping-pong" between the gateway and my sensor so I can test the range and/or look for problems in the communication (and maybe even start complaining about the NRF24L01+ transceiver with my supplier is that is the case..)

    Troubleshooting

  • Gateway unable to assign ID to Temperature Sensor example
    T the_programmer

    Hi,

    I'm trying to connect a temperature sensor to a server. However the automatic assignment of the ID seems to be failing.

    The temperature sensor is build according to the default sample: http://www.mysensors.org/build/temp. (controller = Mini Arduino Pro 8MHz, 3V3)
    The gateway is a serial gateway with the LEDs as added bonus according to: http://www.mysensors.org/build/serial_gateway and http://www.mysensors.org/build/advanced_gateway. (controller - Arduino Uno, 16MHz, 5V)
    To wrap-up the hardware site I didn't install the capacitors for the NRF24L01+ transceiver but the communication itself seems to be OK.
    As a server I'm using a Raspberry Pi B2.

    On the software site I have the following:
    The Temperature sensor is running the sample found on http://www.mysensors.org/build/temp.
    The gateway is running the sample found on http://www.mysensors.org/build/serial_gateway.
    And on my PI I'm using the NodeJsController from https://github.com/mysensors/Arduino/tree/master/NodeJsController with Node 12.0 and MongoDB (as per sample).

    Now I do the following: The gateway is connected. Start the NodeJsController (with "node NodeJsController.js"), (re)start the Temperature sensor.
    The output from the console is below:

    Connected to database at mongodb://127.0.0.1:27017/MySensorsDb
    connected to serial gateway at /dev/ttyACM0
    connected to serial gateway at /dev/ttyACM0
    <- 0;0;3;0;14;Gateway startup complete.
    <- 0;0;3;0;9;read: 255-255-0 s=255,c=3,t=3,pt=0,l=0:
    <- 255;255;3;0;3;
    -> 255;255;3;0;4;1
    
    <- 0;0;3;0;9;read: 255-255-0 s=255,c=3,t=3,pt=0,l=0:
    <- 255;255;3;0;3;
    -> 255;255;3;0;4;1
    
    <- 0;0;3;0;9;read: 255-255-0 s=255,c=3,t=3,pt=0,l=0:
    <- 255;255;3;0;3;
    -> 255;255;3;0;4;1
    
    <- 0;0;3;0;9;read: 255-255-0 s=255,c=3,t=3,pt=0,l=0:
    <- 255;255;3;0;3;
    -> 255;255;3;0;4;1
    
    <- 0;0;3;0;9;read: 255-255-0 s=255,c=3,t=3,pt=0,l=0:
    <- 255;255;3;0;3;
    -> 255;255;3;0;4;1
    
    <- 0;0;3;0;9;read: 255-255-0 s=255,c=3,t=3,pt=0,l=0:
    <- 255;255;3;0;3;
    -> 255;255;3;0;4;1
    
    <- 0;0;3;0;9;read: 255-255-0 s=255,c=3,t=3,pt=0,l=0:
    <- 255;255;3;0;3;
    -> 255;255;3;0;4;1
    
    <- 0;0;3;0;9;read: 255-255-255 s=255,c=3,t=7,pt=0,l=0:
    <- 0;0;3;0;9;send: 0-0-255-255 s=255,c=3,t=8,pt=1,l=1,st=fail:0
    

    If I now edit line 26 in the temperature controller sample to:

    gw.begin(NULL, 1, false);
    

    The output is the following:

    Connected to database at mongodb://127.0.0.1:27017/MySensorsDb
    connected to serial gateway at /dev/ttyACM0
    connected to serial gateway at /dev/ttyACM0
    <- 0;0;3;0;14;Gateway startup complete.
    <- 0;0;3;0;9;read: 1-1-0 s=255,c=0,t=17,pt=0,l=3:1.4
    <- 1;255;0;0;17;1.4
    <- 0;0;3;0;9;read: 1-1-0 s=255,c=3,t=6,pt=1,l=1:0
    <- 1;255;3;0;6;0
    -> 1;255;3;0;6;M
    
    <- 0;0;3;0;9;read: 1-1-0 s=255,c=3,t=11,pt=0,l=18:Temperature Sensor
    <- 1;255;3;0;11;Temperature Sensor
    <- 0;0;3;0;9;read: 1-1-0 s=255,c=3,t=12,pt=0,l=3:1.0
    <- 1;255;3;0;12;1.0
    <- 0;0;3;0;9;read: 1-1-0 s=0,c=0,t=6,pt=0,l=3:1.4
    <- 1;0;0;0;6;1.4
    <- 0;0;3;0;9;read: 1-1-0 s=0,c=1,t=0,pt=7,l=5:20.7
    <- 1;0;1;0;0;20.7
    

    Working!!!

    So there seems to be a problem with the automatic assignment of the IDs.
    I already tryed the to erase the eeprom on the temperature controller but this din't work as well (sketch: https://codebender.cc/sketch:108438)

    Hope you can help.

    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