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
  1. Home
  2. Announcements
  3. 💬 Building a Raspberry Pi Gateway

💬 Building a Raspberry Pi Gateway

Scheduled Pinned Locked Moved Announcements
1.1k Posts 173 Posters 422.7k Views 131 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • manulM Offline
    manulM Offline
    manul
    wrote on last edited by
    #121

    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

    M 1 Reply Last reply
    0
    • manulM manul

      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

      M Offline
      M Offline
      marceloaqno
      Code Contributor
      wrote on last edited by
      #122

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

      1 Reply Last reply
      0
      • H Offline
        H Offline
        hausinger
        wrote on last edited by
        #123

        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?

        M 1 Reply Last reply
        0
        • H hausinger

          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?

          M Offline
          M Offline
          marceloaqno
          Code Contributor
          wrote on last edited by
          #124

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

          H 1 Reply Last reply
          0
          • M Offline
            M Offline
            marceloaqno
            Code Contributor
            wrote on last edited by marceloaqno
            #125

            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
            
            1 Reply Last reply
            2
            • M marceloaqno

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

              H Offline
              H Offline
              hausinger
              wrote on last edited by
              #126

              @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?

              M 2 Replies Last reply
              0
              • H hausinger

                @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?

                M Offline
                M Offline
                marceloaqno
                Code Contributor
                wrote on last edited by marceloaqno
                #127

                @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.

                1 Reply Last reply
                0
                • H hausinger

                  @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?

                  M Offline
                  M Offline
                  marceloaqno
                  Code Contributor
                  wrote on last edited by marceloaqno
                  #128

                  @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
                  
                  H 1 Reply Last reply
                  0
                  • M marceloaqno

                    @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
                    
                    H Offline
                    H Offline
                    hausinger
                    wrote on last edited by
                    #129

                    @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

                    H 1 Reply Last reply
                    0
                    • jmmorgan83J Offline
                      jmmorgan83J Offline
                      jmmorgan83
                      wrote on last edited by
                      #130

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

                      mfalkviddM 1 Reply Last reply
                      0
                      • jmmorgan83J jmmorgan83

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

                        mfalkviddM Offline
                        mfalkviddM Offline
                        mfalkvidd
                        Mod
                        wrote on last edited by mfalkvidd
                        #131

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

                        1 Reply Last reply
                        0
                        • jmmorgan83J Offline
                          jmmorgan83J Offline
                          jmmorgan83
                          wrote on last edited by
                          #132

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

                          1 Reply Last reply
                          0
                          • jmmorgan83J Offline
                            jmmorgan83J Offline
                            jmmorgan83
                            wrote on last edited by
                            #133

                            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.

                            1 Reply Last reply
                            0
                            • H hausinger

                              @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

                              H Offline
                              H Offline
                              hausinger
                              wrote on last edited by
                              #134

                              @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

                              M 1 Reply Last reply
                              0
                              • PureGrainP Offline
                                PureGrainP Offline
                                PureGrain
                                wrote on last edited by
                                #135

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

                                1 Reply Last reply
                                0
                                • RogerB68R Offline
                                  RogerB68R Offline
                                  RogerB68
                                  wrote on last edited by
                                  #136

                                  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 ?

                                  TigroenotT 1 Reply Last reply
                                  0
                                  • RogerB68R Offline
                                    RogerB68R Offline
                                    RogerB68
                                    wrote on last edited by
                                    #137

                                    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+.

                                    1 Reply Last reply
                                    0
                                    • RogerB68R RogerB68

                                      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 ?

                                      TigroenotT Offline
                                      TigroenotT Offline
                                      Tigroenot
                                      wrote on last edited by
                                      #138

                                      @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. :)

                                      1 Reply Last reply
                                      0
                                      • jmmorgan83J Offline
                                        jmmorgan83J Offline
                                        jmmorgan83
                                        wrote on last edited by
                                        #139

                                        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?

                                        M 1 Reply Last reply
                                        0
                                        • H hausinger

                                          @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

                                          M Offline
                                          M Offline
                                          marceloaqno
                                          Code Contributor
                                          wrote on last edited by
                                          #140

                                          @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.

                                          H 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          11

                                          Online

                                          11.7k

                                          Users

                                          11.2k

                                          Topics

                                          113.0k

                                          Posts


                                          Copyright 2019 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
                                          • Login

                                          • Don't have an account? Register

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