💬 Building a Raspberry Pi Gateway



  • Hi,

    Is there anyone here that can give me some one-to-one support this evening to setup the Raspberry Pi + NRF24L01 as a gateway with MyController, and a Arduino Uno + NRF24L01 as Sensor node. I'm stuck after trying various things over the past week, so looks like I need some additional skills/knowledge to get the first setup working.

    Maybe we can use Skype or some other medium. I will gladly pay a bit for this support if anyone is interested. I have some free time from 18:00 CET - 23:30 CET today...



  • hi, the gateway works but how display sensors in domoticz?
    Thank you very much



  • @nico you need a sensor to send data to GW and assuming you have GW added to Domoticz, Domoticz will add up corresponding values to "Devices"



  • I have a gateway and 1 sensor ,obviously.
    I have added serial GW but anyone sensor appear, i'm sure that the sensor works, and the gateway also (see with the command mysGateway -d).
    Can you have any idea ? Thank you



  • @nico I would suggest you open up a different post in the Troubleshooting section regarding this matter
    1 post GW and sensor logs
    2. How do you know that the GW was added to Domoticz? Logs please?



  • @Christian-Simonsen

    You can pretty much test out using any of the arduino examples here:

    https://github.com/mysensors/MySensors/tree/development/examples

    Each one will present itself to the gateway when it starts up and you will see the presentation in the debug log. Make sure to run:

    https://github.com/mysensors/MySensors/tree/development/examples/ClearEepromConfig

    on the arduino first to make sure it starts with a fresh eeprom. After you select an Arduino sketch to test it with (seriously it doesn't matter which one you try) make sure to look at the sketch and add:

    // Enable and select radio type attached
    #define MY_RADIO_NRF24
    #define MY_NODE_ID 4
    

    For MY_NODE_ID you can select any number. Just make sure that each new sensor node that you create has a different node number so like start out at MY_NODE_ID 1 and when you make another sensor node you can #define MY_NODE_ID 2 and so on.

    Next load it up to the Arduino, open the serial monitor, and see what happens. If you watch the serial monitor on the arduino you will see it present itself to the gateway and then you can confirm it in the debug log on the raspberry pi.

    I think it is pretty normal to have the problems you are having. I uninstalled and reinstalled the gateway 3 times on the Raspberry Pi before I finally got it all figured out. Once you get it running it is a glorious thing.


  • Code Contributor

    @Christian-Simonsen

    mysGateway: TSF:MSG:READ,0-0-0,s=0,c=0,t=0,pt=0,l=0,sg=0:
    mysGateway: !TSF:MSG:LEN,0!=7
    

    looks like a power issue with the nrf24 module.


  • Code Contributor

    @b0rmann Can you provide a full debug log of all involved nodes?



  • Can I attach one or more DallasTemp sensors on the Raspberry Pi gateway?



  • @marceloaqno said:

    @Christian-Simonsen

    mysGateway: TSF:MSG:READ,0-0-0,s=0,c=0,t=0,pt=0,l=0,sg=0:
    mysGateway: !TSF:MSG:LEN,0!=7
    

    looks like a power issue with the nrf24 module.

    Ok,

    I've tested with the Voltmeter and the NRF24L01 module do get a steady 3.26 V. Both the gateway module and the Arduino sensor node...

    Im now building a few extra sensor nodes, so I can test without the Raspberry pi. Hopefully I can atleast get them talking based on Arduinos first. Before testing the Raspberry Pi.


  • Mod

    @Patrik-Söderström said:

    Can I attach one or more DallasTemp sensors on the Raspberry Pi gateway?

    I haven't seen anyone doing anything similar so it might require some work. But almost anything is possible given enough work 🙂



  • Has anyone else had an issue with getting a sensor node to reconnect after a lost connection? I can see it attempting to reconnect but even though it is back within range of the gateway it won't reestablish the connection. If I reset the node it re-establishes the connection without any problem. This is the cycle that it gets stuck in:

    TSM:FPAR
    TSP:MSG:SEND 3-3-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=bc:
    TSP:MSG:READ 0-0-3 s=255,c=3,t=8,pt=1,l=1,sg=0:0
    TSP:MSG:FPAR RES (ID=0, dist=0)
    TSP:MSG:PAR OK (ID=0, dist=1)
    TSM:FPAR:OK
    TSM:ID
    TSM:CHKID:OK (ID=3)
    TSM:UPL
    TSP:PING:SEND (dest=0)
    !TSP:MSG:SEND 3-3-0-0 s=255,c=3,t=24,pt=1,l=1,sg=0,ft=0,st=fail:1
    TSP:CHKUPL:FAIL (hops=255)
    !TSM:UPL:FAIL
    TSM:FPAR
    TSP:MSG:SEND 3-3-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=bc:
    !TSP:SEND:TNR
    !TSP:SEND:TNR
    !TSP:SEND:TNR
    !TSP:SEND:TNR
    !TSP:SEND:TNR
    !TSP:SEND:TNR
    TSM:FPAR
    TSP:MSG:SEND 3-3-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=bc:
    TSP:MSG:READ 0-0-3 s=255,c=3,t=8,pt=1,l=1,sg=0:0
    TSP:MSG:FPAR RES (ID=0, dist=0)
    TSP:MSG:PAR OK (ID=0, dist=1)
    TSM:FPAR:OK
    TSM:ID
    TSM:CHKID:OK (ID=3)
    TSM:UPL
    TSP:PING:SEND (dest=0)
    !TSP:MSG:SEND 3-3-0-0 s=255,c=3,t=24,pt=1,l=1,sg=0,ft=0,st=fail:1
    TSP:CHKUPL:FAIL (hops=255)
    !TSM:UPL:FAIL
    TSM:FPAR
    TSP:MSG:SEND 3-3-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=bc:
    !TSP:SEND:TNR
    !TSP:SEND:TNR
    !TSP:SEND:TNR
    !TSP:SEND:TNR
    !TSP:SEND:TNR
    !TSP:SEND:TNR```


  • @Christian-Simonsen multimeter will not detect issues with the power feed (noise or unstable). It just says that you voltage under zero load is 3.3V.



  • Appears things are changing, please update wiki:
    Warning: --my-radio is deprecated, please use --my-transport



  • @mfalkvidd Alright 🙂 The thing is that I have my Raspberry Pi as a Gateway today near my server rack and would like to measure the temperatur. Maybe I just get a Nano to do the work for me. Just would have been great to use the Raspberry.


  • Mod

    @Patrik-Söderström You can probably connect a temperature sensor to the gpio pins and have your controller read the sensor (without using MySensors)


  • Code Contributor

    @carlyler Thanks for pointing that out.


  • Code Contributor



  • @marceloaqno Yes its 220 uF. It was all I had handy. I read somewhere that this may be a problem specific to the arduino nano. I may give it a try with the pro mini. Although I'm not sure what that may have to do with it.

    Edit: I tried the same sketch on an arduino pro mini and it worked fine. When I simulated a loss of connection by walking out of range of the gateway it immediately reestablished the connection when I got back within range. The only difference is that the pro mini is running at 8 mhz whereas the nano runs at 16 mhz. Not sure how that affects things.



  • Hello everyone. Is there a way to reduce the number of Heartbeat messages the gateway produces by itself? Using MYSController to analyze the data traffic, I see every 10 seconds a Heartbeat - would like to reduce this once everything is working as expected to maybe every 5 or 10 minutes...


  • Admin

    @Velo17

    Just sleep longer. It sends one heartbeat every time the node wakes up.



  • @Christian-Simonsen

    I have exactly the same error

    mysGateway: !TSF:MSG:LEN,0!=7

    Have you been able to resolve that problem yet? I have tried multiple radios with different capacitors and powersources grounded to the Raspberry Pi.

    thanks



  • @dopeeye

    Sadly not. I ended up creating an serial gateway (arduino with NRF24L01 and a USB connector) and connected this to the Raspberry Pi, rather than connecting the NRF24L01 directly to the GPIO pins. This worked perfectly straight away.



  • @Christian-Simonsen

    Too stubborn to give up, yet.
    If i find a resolution I will let you know



  • I would like to try this, but my pins19-23 are already used by other hardware. Has anyone tried using the SPI1 Pins?



  • @dopeeye I had this issue and unfortunately changed several things at once and got rid of it. However, one thing I noticed was I had different versions of mySensors in my library directory since I downloaded the examples package. Therefore the sensor was likely compiling on a different version than the Gateway. You might want to check that.

    If you could post more of your logs (sensor and gateway) it might help.



  • @marceloaqno

    When running as a service, is there a way to watch the debug log?



  • Any ETA on support for RFM69 ? Need to extend my coverage 🙂



  • Done:

    1. git clone https://github.com/mysensors/MySensors.git
    2. ./configure --my-gateway=mqtt --my-controller-ip-address=127.0.0.1 --my-mqtt-publish-topic-prefix=mysensors-out --my-mqtt-subscribe-topic-prefix=mysensors-in --my-mqtt-client-id=mygateway1
    3. make.
      Got error:
      In file included from ./MySensors.h:287:0,
      from examples_linux/mysGateway.cpp:70:
      ./drivers/RF24/RF24.cpp: In function âuint8_t RF24_spiMultiByteTransfer(uint8_t, uint8_t*, uint8_t, bool)â:
      ./drivers/RF24/RF24.cpp:65:22: error: âNOPâ was not declared in this scope
      *ptx++ = NOP ;
      ^
      Makefile:46: recipe for target 'examples_linux/mysGateway.o' failed
      make: *** [examples_linux/mysGateway.o] Error 1
      Any idea?

  • Mod

    @alesc looks like this commit in the development branch broke the code.

    Do

    git checkout master
    

    before running configure should get the code to the latest stable release.

    EDIT: Sorry, that won't work because the Raspberry Pi stuff didn't exist when MySensors 2.0 was released. You'll have to do git pull instead, to get tekka's fix.


  • Admin



  • Hi Everyone !
    Big thumb up for the amount of work supplied !!!
    After being more or less successful with openHAB1 I had a go with openHAB2 today, via a online install....
    But no success with the "mysGateway" install : should i go back to serial gateway with an arduino ?
    Thanks a lot for your help



  • @ben999 try again, because it works great. I assume by online install you mean apt-get; I too had trouble when trying this. However, I tried again following @TimO instructions here:
    wiki, then everything came up nicely. I feel it is some permission issue that I have not tried to figure out yet.


  • Code Contributor

    @ericvdb when running as a service, debug messages are masked and aren't shown in the system logs, but it would be a good idea to have a way to connect to gateway perhaps using telnet and watch the logs. I'll work on something.



  • @carlyler
    Thanks a lot for your message, hope is back on my side 🙂
    Actually I had a go with openHABian (i didn't make it clear in my previous message, sorry)
    The install itself couldn't be easier : OS+openHAB installed in one go, just by formatting SD Card with a tiny img file. One hour later and voilà !
    So that could be the source of my trouble?
    I will go with the link you supplied tonight and let you know (lookslike it is a manual install... scary!!)
    Thank you again for your support



  • @ben999 if you have not already, read through the MySensors OH2 thread. I noticed a recent post by @TimO that talks about setting some permissions and that might be the issue. Otherwise, the manual install is not bad as he gives you step-by-step; I am a new to all this and managed to get it to work...



  • @carlyler
    Smashing
    Thanks a lot for that hint... I remember reading that...
    Linux is so damn rigid 😆
    Thank you again for your help



  • Either its not stated or I cannot see it, but i was wondering... Is this version 2 voor de rPi?
    At the moment I am using MySensors version 1.5 with Pimatic as controller. And I would like to use v2.



  • @ben999 Yes, version 2



  • I feel a bit sorry to come back here for my own little troubles...

    1- So i installed openhab2 on RPi3 with a fresh SDCard
    2- I followed tobof 's excellent step-by-step howto
    3- I installed mysGateway
    4- With pi@raspberrypi:~/MySensors $ sudo ./examples_linux/mysGateway -d i can see that my motion sensor and my RPi gateway get on well... they do speak to each other, right ?

    mysGateway: Starting gateway...
    mysGateway: Protocol version - 2.0.1-beta
    mysGateway: MCO:BGN:INIT GW,CP=RNNG---,VER=2.0.1-beta
    mysGateway: TSF:LRT:OK
    mysGateway: TSM:INIT
    mysGateway: TSM:INIT:TSP OK
    mysGateway: TSM:INIT:GW MODE
    mysGateway: TSM:READY
    mysGateway: MCO:REG:NOT NEEDED
    mysGateway: MCO:BGN:STP
    mysGateway: MCO:BGN:INIT OK,ID=0,PAR=0,DIS=0,REG=1
    mysGateway: TSF:MSG:READ,1-1-0,s=1,c=1,t=16,pt=0,l=1,sg=0:1
    mysGateway: TSF:MSG:READ,1-1-0,s=1,c=1,t=16,pt=0,l=1,sg=0:0
    mysGateway: TSF:MSG:READ,1-1-0,s=1,c=1,t=16,pt=0,l=1,sg=0:1
    mysGateway: TSF:MSG:READ,1-1-0,s=1,c=1,t=16,pt=0,l=1,sg=0:0
    

    5-in things/demo.things" I put this.

    Bridge mysensors:bridge-ser:gateway [ serialPort="/dev/pts/2", sendDelay=200 ] {  }
    

    Right away, it worked (king of the world!) and i could see that bridge in paperUI !!!
    But i got that after a reboot of RPi

    openhab> Failed to connect on port: /dev/pts/2 exception: 
    gnu.io.NoSuchPortException
            at gnu.io.CommPortIdentifier.getPortIdentifier(CommPortIdentifier.java:273)
            at gnu.io.NRSerialPort.connect(NRSerialPort.java:48)
            at org.openhab.binding.mysensors.protocol.serial.MySensorsSerialConnection.<init>(MySensorsSerialConnection.java:52)
            at org.openhab.binding.mysensors.handler.MySensorsBridgeHandler.initialize(MySensorsBridgeHandler.java:63)
            at org.eclipse.smarthome.core.thing.internal.ThingManager$9$1.call(ThingManager.java:764)
            at org.eclipse.smarthome.core.thing.internal.ThingManager$9$1.call(ThingManager.java:1)
            at org.eclipse.smarthome.core.common.SafeMethodCaller$CallableWrapper.call(SafeMethodCaller.java:177)
            at java.util.concurrent.FutureTask.run(FutureTask.java:266)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
            at java.lang.Thread.run(Thread.java:745)
    

    Wrong serial port ?

    Juste to make it clear : mysGateway bit of software is the magic that makes RPi believe that there's an arduino acting as a gateway on USB and collects the NRF24 info through GPio ?


  • Mod

    @ben999 said:

    Wrong serial port ?

    Likely 😉
    /dev/pts/x are pseudo-terminals , not serial ports.

    On my (old) Pi running Raspbian the serial port is /dev/ttyAMA0
    You could run something like

    dmesg |grep -i tty
    

    to get an idea of serial ports on your Pi.



  • @Yveaux thanks a lot for your answer. Understanding linux is a slow and painful process 😆

    Here is the output from your command : dmesg |grep -i tty

    pi@raspberrypi:~ $ dmesg |grep -i tty
    [    0.000000] Kernel command line: 8250.nr_uarts=0 dma.dmachans=0x7f35 bcm2708_fb.fbwidth=656 bcm2708_fb.fbheight=416 bcm2709.boardrev=0xa02082 bcm2709.serial=0xcc3e67e3 smsc95xx.macaddr=B8:27:EB:3E:67:E3 bcm2708_fb.fbswap=1 bcm2709.uart_clock=48000000 vc_mem.mem_base=0x3dc00000 vc_mem.mem_size=0x3f000000  dwc_otg.lpm_enable=0 console=ttyS0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
    [    0.001337] console [tty1] enabled
    [    1.772114] 3f201000.uart: ttyAMA0 at MMIO 0x3f201000 (irq = 87, base_baud = 0) is a PL011 rev2
    

    What a mess...
    ttyAMA0 is the one !!!
    Thanks @Yveaux you got me on the right path !!! Goto next step! 😄



  • I just did a fresh install of pimatic and MsGateway on the pi. But pimatic does not seem to get de messages. i started the gateway via the daemon method, is there a way to see if the sensor is reaching the gateway?



  • @b0rmann
    Do you still using the rs485 usb "dongle" to connect the rs485 nodes to the rpi? Do you attached some more nodes to your rs485 rpi Gateway?
    Is it stable?
    How do you do the configuration for it?


  • Code Contributor

    @JahFyahh To view messages being exchanged with the sensors, run the gateway in debug mode:

    mysGateway -d
    


  • @marceloaqno thank you for the reply, I tried that and I receive "mysGateway: acce[t: Bad file descriptor" Any idea what this means?


  • Code Contributor

    @JahFyahh Could you provide the full debug log?



  • Hi team,

    First of all, thanks for this amazing project and this doc.
    I'm trying to use arduino nanos with Raspberry Pi 2 as a gateway: I can get it working when I configure the Raspberry Pi using serial gateway, however, it does not work using MQTT with latest version from git.
    The error message is:
    "mysGateway: accept: Bad file descriptor"

    I followed all explanations given on this page.
    Any idea?
    Thanks again


  • Code Contributor

    @manul Which MQTT broker are you using? Did you try to update it?



  • I wanted to use the mysGateway with a USB/RS485 converter.

    Here is my config: ./configure --my-gateway=ethernet --my-port=5003 --my-transport=rs485 --my-rs485-serial-port=/dev/ttyUSB0 my-rs485-baudrate=57600

    make does it's job, but after i start the gateway it says:
    mysGateway: Starting gateway....
    mysGateway: Protocol version - 2.0.1-beta
    mysGateway: MCO:BGN:INIT GW,CP=RSNG---,VER=2.0.1-beta
    mysGateway: TSM:INIT
    mysGateway: TSM:INIT:TSP OK
    mysGateway: TSM:INIT: GW Mode
    mysGateway: TSM:READY

    after that it stopped to work.

    Whats wrong in my configuration?


  • Code Contributor

    @hausinger Have you checked if /dev/ttyUSB0 is receiving any data?


  • Code Contributor

    The RPi port has just received a new update that changes some important things related to the location and name of the gateway binary and services:

    mysGateway was renamed to mysgw
    mysgateway service was renamed to mysgw

    Now, after successfully running the make command, you will find the gateway file under ./bin/mygw

    Also, before installing the new version you need to manually remove the old one:

    If you are using systemd

    sudo systemctl disable mysgateway.service
    sudo rm /etc/systemd/system/mysgateway.service
    sudo rm /usr/local/bin/mysGateway
    

    If you are using sysvinit

    sudo update-rc.d -f mysgateway remove
    sudo rm /etc/init.d/mysgateway
    sudo rm /usr/local/bin/mysGateway
    


  • @marceloaqno said:

    @hausinger Have you checked if /dev/ttyUSB0 is receiving any data?

    Thank you for your answer. I don't know, how to check that? The wiring to my nodes is correct, the serial port is correct (dmesg says that).
    Could you confirm, that my configuration from my last post is correct?


  • Code Contributor

    @hausinger Your configuration is correct. To check the serial, install the screen package (if you haven't already done so) and run:

    screen /dev/ttyUSB0 57600
    

    You should see some strange characters being printed.

    I did a quick test here with your setup and found out that there is a bug with the gateway when the rs485 baud rate is set to 57600. With 9600 it works fine. I'll try to fix this.


  • Code Contributor

    @hausinger You forgot "--" for my-rs485-baudrate=57600 in your configuration.
    It should be:

    ./configure --my-gateway=ethernet --my-port=5003 --my-transport=rs485 --my-rs485-serial-port=/dev/ttyUSB0 --my-rs485-baudrate=57600
    


  • @marceloaqno said:

    @hausinger You forgot "--" for my-rs485-baudrate=57600 in your configuration.
    It should be:

    ./configure --my-gateway=ethernet --my-port=5003 --my-transport=rs485 --my-rs485-serial-port=/dev/ttyUSB0 --my-rs485-baudrate=57600
    

    Hi @marceloaqno
    Thank you for your answers. Yes, i saw this, but I did the "--", i forgot it in the last post, because I can't use copy & paste on my raspberry (remote Desktop).

    Did this configuration work on your System?
    Are you sure, that my configuration is ok? (with the "--")
    Whats the normal behavior when i start the mysGateway with debug (mysGateway -d)? If i type the starting command in the terminal, the Gateway gives me the Messages (from my last post) and thats it (not more). I can now type a new command

    I'm now not at home (Business trip), if I get home, i will try your "Screen" command



  • I followed the instruction above to make a mysgw file, but no file was generated.


  • Mod

    @jmmorgan83 do you think there is any information you can share might help us help you?



  • I reset everything and ran it again. It did generate the file this time. Thanks, - Now to test it.



  • Has anyone gotten the raspberry pi gateway to work with Openhab on the same raspberry pi? I have both the virtual and mqtt gateways working, but I can get either one to communicate with Openhab.



  • @hausinger said:

    @marceloaqno said:

    @hausinger You forgot "--" for my-rs485-baudrate=57600 in your configuration.
    It should be:

    ./configure --my-gateway=ethernet --my-port=5003 --my-transport=rs485 --my-rs485-serial-port=/dev/ttyUSB0 --my-rs485-baudrate=57600
    

    Hi @marceloaqno
    Thank you for your answers. Yes, i saw this, but I did the "--", i forgot it in the last post, because I can't use copy & paste on my raspberry (remote Desktop).

    Did this configuration work on your System?
    Are you sure, that my configuration is ok? (with the "--")
    Whats the normal behavior when i start the mysGateway with debug (mysGateway -d)? If i type the starting command in the terminal, the Gateway gives me the Messages (from my last post) and thats it (not more). I can now type a new command

    I'm now not at home (Business trip), if I get home, i will try your "Screen" command

    So I'm at home today and make some Test.
    The screen comand gives me some strange characters, thats ok I think.

    But if i start the Gateway, I only get the same messages as shown in my other post.

    Here are 2 Pics that show you, how it look like.

    I also tried to make the gw with a baudrate of 9600, but still the same issues.!0_1480068509863_mysGateway.JPG 0_1480068518084_screen.JPG



  • Has anyone been able to get this to successfully work with a Vera?



  • Have been running MySensors for some time now with a EthernetGW running on Arduino. To clean-up the installation, I'm trying to get the Gateway running on my Raspberry instead but something stops the make process.

    pi@raspberrypi ~/MySensors $ ./configure --my-gateway=ethernet --my-port=5003 --my-transport=nrf24                       [SECTION] Detecting target machine.
    [OK] machine detected: SoC=BCM2836, Type=Rpi2, CPU=armv7l, REV=a01041.
    [OK] init system detected: sysvinit
    [SECTION] Saving configuration.
    [SECTION] Cleaning previous builds.
    [OK] Finished.
    pi@raspberrypi ~/MySensors $ make
    gcc -MT build/drivers/Linux/log.o -MMD -MP -march=armv7-a -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -DMY_RADIO_NRF24 -DMY_GATEWAY_LINUX -DMY_DEBUG -DLINUX_ARCH_RASPBERRYPI -DMY_PORT=5003  -Ofast -g -Wall -Wextra  -I. -I./core -I./drivers/Linux -I./drivers/RPi -c drivers/Linux/log.c -o build/drivers/Linux/log.o
    cc1: error: bad value (cortex-a7) for -mtune switch
    Makefile:102: recipe for target 'build/drivers/Linux/log.o' failed
    make: *** [build/drivers/Linux/log.o] Error 1
    

    Any hints what I have done wrong ?



  • Issue solved, manual update of compiler from 4.6,3 -> 4.7.2 enables the make process. Similar problem also reported in post.

    Using

    • sudo apt-get update
    • sudo apt-get upgrade

    does not upgrade compiler. I used instruction according to How to upgrade GCC to 4.7+.



  • @RogerB68 I had the same situation. I have removed the mtune parameter from the config file and compilation went fine. I don't know what it affects though. 🙂



  • I created a virtual serial port using this ./configure --my-gateway=serial --my-serial-is-pty --my-serial-pty=/dev/ttyMySensorsGateway. I can see the port in the dev folder, but when I run dmesg I do not see it listed and therefore my openhab can not find it. How can I fix this?


  • Code Contributor

    @hausinger After the command:

    sudo ./bin/mysgw -d
    

    It wasn't supposed to go back to bash, the gateway would wait for new messages.
    I'm not sure what's going on with your setup because I tested your configuration options here and it worked.


  • Code Contributor

    @jmmorgan83 You may need another name for the port, such as

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


  • @marceloaqno
    Unfortunately, no luck:(.



  • @marceloaqno said:

    @hausinger After the command:

    sudo ./bin/mysgw -d
    

    It wasn't supposed to go back to bash, the gateway would wait for new messages.
    I'm not sure what's going on with your setup because I tested your configuration options here and it worked.

    Thank you for your answer. What can I do now? Can I check, that this port is unused? And how can I check this?
    Or is there another problem?



  • FYI: I do not think the Rpi gateway works with Openhab on the same unit. I have tried both the virtual serial port and mqtt, and neither will work with Openhab 1.83.



  • This post is deleted!


  • This post is deleted!


  • Hi all,

    So I built this and all seems to be well. But.....how do I test it properly?

    I also installed pidome and have that able to 'see' the MSYGW, but it advises to only add it if it is working.

    So how to know if mysgw is working OK? Is there somewhere a step-by-step way to do this?



  • @skywatch try to run it with "mysgw -d" .

    Enabling debug mode you can see on console every message and diagnostics...



  • @gtortone

    sudo ./bin/mysgw -d and sudo ./bin/mysgw -h now both give 'command not found' - which is odd as they were both working eariler ???
    A reboot makes no difference. Although after reboot I see mysgw running in 'top' but even stopping that service and trying sudo mysgw -d again doesn't seem to work.

    Any idea whats wrong? Any suggestions to get this going?



  • @skywatch

    if you did

    make install

    the mysgw executable is in /usr/local/bin directory then you have to launch it with:

    /usr/local/bin/mysgw -d



  • @gtortone

    That doesn't appear anywhere on this tutorial, so maybe it needs adding for completion?

    Anyway the output is now......

    pi@PiDomePi:~ $ sudo /usr/local/bin/mysgw -d
    mysgw: Starting gateway...
    mysgw: Protocol version - 2.0.1-beta
    mysgw: MCO:BGN:INIT GW,CP=RNNG--Q,VER=2.0.1-beta
    mysgw: TSF:LRT:OK
    mysgw: TSM:INIT
    mysgw: TSM:INIT:TSP OK
    mysgw: TSM:INIT:GW MODE
    mysgw: TSM:READY
    mysgw: MCO:REG:NOT NEEDED
    mysgw: MCO:BGN:STP
    mysgw: MCO:BGN:INIT OK,ID=0,PAR=0,DIS=0,REG=1

    When i did build install I missed out bit for the leds, can I just re-run the ./config and 'make' then 'make install' again? Or will that cause problems??
    I just think that the lights will be useful in the early stages of getting this running...

    Thanks for the help, no way would I have got that without you! 🙂



  • @skywatch

    You're welcome !

    you can (re)run configure, make, make install when you want,
    but I suggest to stop the mysgw executable before launch "make install"



  • Thank you! 🙂



  • Can I just check that this is OK? .....

    ./configure --my-gateway=serial --my-serial-is-pty --my-serial-pty=/dev/ttyMySensorsGateway --my-transport=nrf24 --my-rf24-irq-pin=15 --my-leds-err-pin=12 --my-leds-rx-pin=16 --my-leds-tx-pin=18

    Can you see any problems here, it seemed to work but I hope to test fully this week, maybe tomorrow.....



  • @skywatch
    Hi, options for "configure" are ok, I suggest you to double check your cabling !

    🙂



  • What makes you think that the cabling is wrong? - I checked and can't see any problem....can you be less cryptic please? 🙂



  • @skywatch
    I meaning that often is also useful to check cable two (or three) times !
    but if you already did it... ok !



  • Ah, OK then 🙂 - I thought there was something in the console data I posted that meant there was a problem! - Tomorrow to build a sensor and get that going.... Thanks again!



  • hi
    yesterday i tried to build a rpi-gateway but i had trouble to access, after changeing the rights on the port to 777 and group to dialout i could access via
    fhem. and i didn't use the symlink, i used the port directly /dev/pts/0@115200 andthen it works perfectly!

    thanks...

    p.s.: i uses always sudo while make and the other installation commands.

    greets mike



  • Get this error from the gateway installed on Raspberry Pi2 with RFM69 Radio.

    From the IDE it works fine:
    0;255;3;0;9;Starting gateway (RRNGA-, 2.0.0)
    0;255;3;0;9;TSM:INIT
    0;255;3;0;9;TSM:RADIO:OK
    0;255;3;0;9;TSM:GW MODE
    0;255;3;0;9;TSM:READY
    0;255;3;0;14;Gateway startup complete.
    0;255;0;0;18;2.0.0
    0;255;3;0;9;No registration required
    0;255;3;0;9;Init complete, id=0, parent=0, distance=0, registration=1
    0;255;3;0;9;TSP:MSG:READ 255-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0:
    0;255;3;0;9;TSP:MSG:BC
    0;255;3;0;9;TSP:MSG:FPAR REQ (sender=255)
    0;255;3;0;9;TSP:CHKUPL:OK
    0;255;3;0;9;TSP:MSG:GWL OK
    0;255;3;0;9;TSP:MSG:SEND 0-0-255-255 s=255,c=3,t=8,pt=1,l=1,sg=0,ft=0,st=bc:0
    0;255;3;0;9;TSP:MSG:READ 255-255-0 s=255,c=3,t=3,pt=0,l=0,sg=0:
    255;255;3;0;3;
    0;255;3;0;9;TSP:MSG:READ 255-255-0 s=255,c=3,t=3,pt=0,l=0,sg=0:
    255;255;3;0;3;
    0;255;3;0;9;TSP:MSG:READ 255-255-0 s=255,c=3,t=3,pt=0,l=0,sg=0:
    255;255;3;0;3;
    0;255;3;0;9;TSP:MSG:READ 255-255-0 s=255,c=3,t=3,pt=0,l=0,sg=0:
    255;255;3;0;3;

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

    From the gateway on the Pi this is the error:
    ./bin/mysgw -d
    mysgw: Starting gateway...
    mysgw: Protocol version - 2.1.0-beta
    mysgw: MCO:BGN:INIT GW,CP=RNNG---,VER=2.1.0-beta
    mysgw: TSF:LRT:OK
    mysgw: TSM:INIT
    mysgw: TSF:WUR:MS=0
    mysgw: !TSM:INIT:TSP FAIL
    mysgw: TSM:FAIL:CNT=1
    mysgw: TSM:FAIL:PDT
    mysgw: TSM:FAIL:RE-INIT
    mysgw: TSM:INIT
    mysgw: !TSM:INIT:TSP FAIL
    mysgw: TSM:FAIL:CNT=2
    mysgw: TSM:FAIL:PDT
    mysgw: TSM:FAIL:RE-INIT
    mysgw: TSM:INIT
    mysgw: !TSM:INIT:TSP FAIL
    mysgw: TSM:FAIL:CNT=3
    mysgw: TSM:FAIL:PDT
    mysgw: TSM:FAIL:RE-INIT
    mysgw: TSM:INIT
    mysgw: !TSM:INIT:TSP FAIL
    mysgw: TSM:FAIL:CNT=4
    mysgw: TSM:FAIL:PDT

    Any ideas where I might start looking at?

    Thanks,
    Martin


  • Code Contributor

    @martins RFM69 is not yet supported in RPi.



  • @marceloaqno
    OK let me explain better. I've build an arduino serial gateway and connecting it on the uart of the pi. If I do tail -f /dev/ttyAMA0 I can see the messages comming in on the serial interface. However if I run ./bin/mysgw -d I get this error:

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

    This is the configure I used to build it:
    ./configure --my-gateway=serial --my-serial-port=/dev/ttyAMA0 --my-serial-baudrate=38400

    So the RFM69 Radio in not directly on the PI but on the arduino and is used as the serial gateway.

    Hope this clarify it more.

    Regards,
    Martin



  • @marceloaqno
    Issue solved. Domoticz read directly the serial inputs from the arduino that's connected on the PI. I was under the impression that you need a gateway (software) running on the PI to interface with Domoticz.

    Thanks,
    Martin



  • Hi there,
    I'm trying to make a gateway on my pi and since the begining i'm stuck!
    Using this: git clone https://github.com/mysensors/MySensors.git
    i get: fatal: unable to access 'https://github.com/mysensors/MySensors.git/': Could not resolve host: github.com
    I tried with sudo too! am i the only one getting this?


  • Mod

    @ewgor "Could not resolve host" means dns is not working on your raspberry pi. Is the network working properly (can you access other web sites from the pi?) http://www.suntimebox.com/raspberry-pi-tutorial-course/week-3/day-5/ seems to have a guide if you need help configuring network settings.



  • (sorry, I hit reply on mfalkvidd's post)
    I have a strange problem:

    I tried to be smart (haha) and updated my Raspberry2 with

    sudo apt-get update
    sudo apt-get dist-upgrade
    

    This took quite a while and looked successful to me.

    Unfortunately the MySensors Gateway and/or controller setup is not working correctly anymore. For troubleshooting I disabled my controller (MyController running on the Pi and for sniffing also MYSController available on my Windows machine). I stopped the gateway service and manually ran the gateway with -d debug information and get this:

    mysGateway: Starting gateway...
    mysGateway: Protocol version - 2.0.1-beta
    mysGateway: MCO:BGN:INIT GW,CP=RNNG--Q,VER=2.0.1-beta
    mysGateway: TSF:LRT:OK
    mysGateway: TSM:INIT
    mysGateway: TSM:INIT:TSP OK
    mysGateway: TSM:INIT:GW MODE
    mysGateway: TSM:READY
    mysGateway: Listening for connections on 0.0.0.0:5003
    mysGateway: MCO:REG:NOT NEEDED
    mysGateway: MCO:BGN:STP
    mysGateway: MCO:BGN:INIT OK,ID=0,PAR=0,DIS=0,REG=1
    mysGateway: TSF:MSG:READ,7-7-255,s=255,c=3,t=7,pt=0,l=0,sg=0:
    mysGateway: TSF:MSG:BC
    mysGateway: TSF:MSG:FPAR REQ,ID=7
    mysGateway: TSF:PNG:SEND,TO=0
    mysGateway: TSF:CKU:OK
    mysGateway: TSF:MSG:GWL OK
    mysGateway: TSF:MSG:SEND,0-0-7-7,s=255,c=3,t=8,pt=1,l=1,sg=0,ft=0,st=OK:0
    mysGateway: TSF:MSG:READ,7-7-0,s=255,c=3,t=24,pt=1,l=1,sg=0:1
    mysGateway: TSF:MSG:PINGED,ID=7,HP=1
    mysGateway: TSF:MSG:SEND,0-0-7-7,s=255,c=3,t=25,pt=1,l=1,sg=0,ft=0,st=OK:1
    mysGateway: TSF:MSG:READ,7-7-0,s=255,c=3,t=15,pt=6,l=2,sg=0:0100
    mysGateway: TSF:MSG:SEND,0-0-7-7,s=255,c=3,t=15,pt=6,l=2,sg=0,ft=0,st=OK:0100
    mysGateway: TSF:MSG:READ,7-7-0,s=255,c=0,t=17,pt=0,l=5,sg=0:2.0.0
    mysGateway: TSF:MSG:READ,7-7-0,s=255,c=3,t=6,pt=1,l=1,sg=0:0
    mysGateway: TSF:MSG:READ,7-7-0,s=255,c=3,t=11,pt=0,l=17,sg=0:Ernie Giess-O-Mat
    mysGateway: TSF:MSG:READ,7-7-0,s=255,c=3,t=12,pt=0,l=4,sg=0:0.17
    mysGateway: TSF:MSG:READ,7-7-0,s=2,c=0,t=6,pt=0,l=0,sg=0:
    mysGateway: TSF:MSG:READ,7-7-0,s=0,c=0,t=7,pt=0,l=0,sg=0:
    mysGateway: TSF:MSG:READ,7-7-0,s=3,c=0,t=30,pt=0,l=0,sg=0:
    mysGateway: TSF:MSG:READ,7-7-0,s=4,c=0,t=21,pt=0,l=0,sg=0:
    mysGateway: TSF:MSG:READ,7-7-0,s=255,c=3,t=26,pt=1,l=1,sg=0:2
    mysGateway: TSF:MSG:SEND,0-0-7-7,s=255,c=3,t=27,pt=1,l=1,sg=0,ft=0,st=OK:1
    mysGateway: TSF:MSG:READ,7-7-0,s=0,c=1,t=1,pt=7,l=5,sg=0:8219.0
    mysGateway: TSF:MSG:READ,7-7-0,s=2,c=1,t=0,pt=7,l=5,sg=0:29.66
    mysGateway: TSF:MSG:READ,7-7-0,s=3,c=1,t=38,pt=7,l=5,sg=0:9.0
    mysGateway: TSF:MSG:READ,7-7-0,s=4,c=1,t=34,pt=1,l=1,sg=0:0
    mysGateway: TSF:MSG:READ,17-17-255,s=255,c=3,t=7,pt=0,l=0,sg=0:
    mysGateway: TSF:MSG:BC
    mysGateway: TSF:MSG:FPAR REQ,ID=17
    mysGateway: TSF:PNG:SEND,TO=0
    mysGateway: TSF:CKU:OK
    mysGateway: TSF:MSG:GWL OK
    mysGateway: TSF:MSG:SEND,0-0-17-17,s=255,c=3,t=8,pt=1,l=1,sg=0,ft=0,st=OK:0
    mysGateway: TSF:MSG:READ,17-17-0,s=255,c=3,t=24,pt=1,l=1,sg=0:1
    mysGateway: TSF:MSG:PINGED,ID=17,HP=1
    mysGateway: TSF:MSG:SEND,0-0-17-17,s=255,c=3,t=25,pt=1,l=1,sg=0,ft=0,st=OK:1
    mysGateway: TSF:MSG:READ,7-7-0,s=0,c=1,t=1,pt=7,l=5,sg=0:10834.0
    mysGateway: TSF:MSG:READ,7-7-0,s=2,c=1,t=0,pt=7,l=5,sg=0:3.96
    mysGateway: TSF:MSG:READ,7-7-0,s=3,c=1,t=38,pt=7,l=5,sg=0:9.0
    mysGateway: TSF:MSG:READ,7-7-0,s=4,c=1,t=34,pt=1,l=1,sg=0:0
    mysGateway: TSF:MSG:READ,17-17-0,s=255,c=3,t=0,pt=1,l=1,sg=0:67
    mysGateway: TSF:MSG:READ,17-17-0,s=1,c=1,t=0,pt=7,l=5,sg=0:18.8
    mysGateway: TSM:READY:NWD REQ
    mysGateway: TSF:MSG:SEND,0-0-255-255,s=255,c=3,t=20,pt=0,l=0,sg=0,ft=0,st=OK:
    mysGateway: TSF:SRT:OK
    

    Which looks okay to me (2 sensor nodes are sending data here). But after this NWD REQ...STR:OK block nothing more happens, only more of these 3 lines blocks repeat over and over with about 15 minutes or so inbetween.

    "of course" I also re-compiled the gateway source with re-setting the configuration, which is

    sudo ./configure --my-rf24-channel=124 --my-rf24-irq-pin=11  --my-debug=enable
    sudo make install
    

    any ideas what I can try to make it work again? 😞

    In any case, happy weekend to everyone,
    greetings from Germany!


  • Code Contributor

    @Velo17 It might be related to the nrf24 irq pin. Could you try to build the gateway without the my-rf24-irq-pin option and check if the gateway still behaves this way?



  • @marceloaqno Thanks for the hint! This actually solves the lock up. But shouldnt the interrupt offer a superior connectivity and thus be desireable? Until yesterday (before I did the RPi upgrading) this worked - or at least it appeared to work (I dont know if the interrupt was actually used)


  • Code Contributor

    @Velo17 I had the same problem in the past but I thought it was because of my nrf24 module wasn't properly shielded or my cables was too long, causing some kind of interference to the irq pin.
    I end up disabling the interrupt options until I replace my nrf24 module or rearrange the cables, which I haven't done yet.

    Could you give more details on what kind of nrf module you are using and how it is connected to rpi?



  • Hi everyone.
    I´m trying to build a new homeController with the following parts / software.

    Raspberry Pi 3
    Home Assistant
    MySensors
    Tellstick
    Mosquitto MQTT Broker

    I got everything working beside the MySensors. I´m trying to connect the NRF 24L01+ chip directly to the RPI with help from https://www.mysensors.org/build/raspberry.

    I want to use MQTT between MySensors and HomeAssistant
    The MQTT broker is working when i´m testing it.
    The Mosquitto is configurated with username and Password in the config of Mosquitto.

    The config i´m using when Make Mysensors is the following:
    ./configure --my-gateway=mqtt --my-controller-ip-address=127.0.0.1 --my-mqtt-publish-topic-prefix=mysensors-out --my-mqtt-subscribe-topic-prefix=mysensors-in --my-mqtt-client-id=mygateway1 --my-transport=nrf24 --my-rf24-irq-pin=15

    I also changed in the file /examples_linux/mysgw.cpp
    #define MY_MQTT_USER "My User"
    #define MY_MQTT_PASSWORD "My Password"

    When i´m running the command: sudo systemctl status mysgw I got following result.

    ● mysgw.service - MySensors Gateway daemon
    Loaded: loaded (/etc/systemd/system/mysgw.service; enabled)
    Active: active (running) since tis 2016-12-27 18:52:34 CET; 25min ago
    Main PID: 1405 (mysgw)
    CGroup: /system.slice/mysgw.service
    └─1405 /usr/local/bin/mysgw

    dec 27 19:18:10 HomeAssistant mysgw[1405]: failed to connect
    dec 27 19:18:10 HomeAssistant mysgw[1405]: socket: Too many open files
    dec 27 19:18:10 HomeAssistant mysgw[1405]: failed to connect
    dec 27 19:18:10 HomeAssistant mysgw[1405]: socket: Too many open files
    dec 27 19:18:10 HomeAssistant mysgw[1405]: failed to connect
    dec 27 19:18:10 HomeAssistant mysgw[1405]: socket: Too many open files
    dec 27 19:18:10 HomeAssistant mysgw[1405]: failed to connect
    dec 27 19:18:10 HomeAssistant mysgw[1405]: socket: Too many open files
    dec 27 19:18:10 HomeAssistant mysgw[1405]: failed to connect
    dec 27 19:18:10 HomeAssistant mysgw[1405]: socket: Too many open files

    When trying to run command sudo mysgw -d it shows following info in a endless loop:
    mysgw: Attempting MQTT connection...
    mysgw: connected to 127.0.0.1
    mysgw: Attempting MQTT connection...
    mysgw: connected to 127.0.0.1
    mysgw: Attempting MQTT connection...
    mysgw: connected to 127.0.0.1
    mysgw: Attempting MQTT connection...
    mysgw: connected to 127.0.0.1
    mysgw: Attempting MQTT connection...
    mysgw: connected to 127.0.0.1
    mysgw: Attempting MQTT connection...
    mysgw: connected to 127.0.0.1
    mysgw: Attempting MQTT connection...
    mysgw: connected to 127.0.0.1
    mysgw: Attempting MQTT connection...
    mysgw: connected to 127.0.0.1

    Please help figure this out.

    //PeTi



  • Hello
    The past two days I've been trying to setup the gateway on my RPi 2 with domoticz.
    Here's what I did.
    I installed domoticz onto my raspi, then I tried the install the gateway.

    git clone https://github.com/mysensors/MySensors.git
    cd MySensors
    

    Afterwards I did the following

    ./configure --my-gateway=mqtt --my-controller-ip-address=127.0.0.1 --my-mqtt-publish-topic-prefix=mysensors-out --my-mqtt-subscribe-topic-prefix=mysensors-in --my-mqtt-client-id=mygateway1
    
    make
    
    sudo ./bin/mysgw -d
    

    Then it seems to start normally onto the point where it refuses to connect to anything.
    Does anyone have a clue what's going wrong?
    I can't seem to figure it out. I've tried it several times over, and always go similar results.
    I was using GertSanders's connector for the RPi Hub and I've tried it with normal wiring too.
    As far as I can see it shouldn't be a wiring problem...

    0_1482936624899_upload-edfa86af-fd0c-4e63-be7b-5393e20f27eb

    EDIT:
    !UPDATE!
    I think I just fixed it. I reconfigured it to include the IRQ Pin and now it's just listening for throughput

    pi@raspberrypi:~/MySensors $  sudo ./bin/mysgw -d
    mysgw: Starting gateway...
    mysgw: Protocol version - 2.1.0-beta
    mysgw: MCO:BGN:INIT GW,CP=RNNG--Q,VER=2.1.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
    


  • I got the previous problem out of the way for now...
    Now onto the next one.

    I started a node and now I can clearly see data being sent and received on my serial log and ssh. (See picture)
    0_1482941358792_upload-08fe5f75-3536-4fb5-a0f4-2ee7d0edbc6a

    So I tried adding the gateway to domoticz using following settings:
    0_1482941417649_upload-ce92a80a-a5aa-4713-bfe8-227c71b8ce72

    Yet if I check hardware setup I can see no nodes being presented.
    0_1482941455435_upload-e36e2fbf-ac80-4381-895d-293e6e638ead

    Are there settings or steps I missed?
    Greetings
    Flor



  • @Flor-Sanders I think you maybe should choose not USB but Ethernet gateway in domoticz.


Log in to reply
 

Suggested Topics

  • 3
  • 110
  • 5
  • 2
  • 109
  • 2

73
Online

11.4k
Users

11.1k
Topics

112.7k
Posts