💬 Building a Raspberry Pi Gateway



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



  • @Tigroenot
    That fixed it indeed XD
    Thanks for helping me out


  • Code Contributor

    @pettib Could it be that you are using an old version of Mosquitto?

    mosquitto -h
    


  • @marceloaqno
    How so?
    I've tried running the command you've supplied, but it doesn't work... Do I have to install mosquitto?
    I didn't see it anywhere in the guide.
    Everything is working at the moment, you think it can pose a problem later?



  • Hello everyone,
    I've been working gateway on RPi, but I don't know how to configure MY_SIGNING_SOFT .
    File mysgw.cpp contains MY_SIGNING_SOFT definition and I can uncomment it, but I don't know where and how I should define: SOFT_HMAC_KEY, SOFT_SERIAL and AES_KEY ?
    Could you give more details how to configure soft signing on RPi?
    thanks
    //Robert



  • Has anyone successfully built on an Orange Pi One running armbian? RPi running raspbinan is supported, but on my Orange Pi One running armbian I get
    ./MySensors.h:258:2: error: #error No support for nRF24 radio on this platform

    I already have TMRh20's RF24 code running on this system, so I know it's capable.



  • @aand

    working on the same setup, unfortunately was not able to compile the mysensors gateway...
    this is the error i get:

    root@orangepizero:~/MySensors# make
    g++ -MT build/examples_linux/mysgw.o -MMD -MP -march=armv8-a -mtune=cortex-a53 -mfpu=neon-vfpv4 -mfloat-abi=hard -DMY_RADIO_NRF24 -DMY_GATEWAY_LINUX -DMY_DEBUG -DMY_IS_SERIAL_PTY -Ofast -g -Wall -Wextra -I. -I./core -I./drivers/Linux -c examples_linux/mysgw.cpp -o build/examples_linux/mysgw.o
    In file included from examples_linux/mysgw.cpp:74:0:
    ./MySensors.h:258:2: error: #error No support for nRF24 radio on this platform
    #error No support for nRF24 radio on this platform
    ^
    In file included from ./drivers/RF24/RF24.cpp:23:0,
    from ./MySensors.h:294,
    from examples_linux/mysgw.cpp:74:
    ./drivers/RF24/RF24.h:52:17: fatal error: SPI.h: No such file or directory
    #include <SPI.h>
    ^
    compilation terminated.
    Makefile:98: recipe for target 'build/examples_linux/mysgw.o' failed
    make: *** [build/examples_linux/mysgw.o] Error 1
    root@orangepizero:~/MySensors#

    seems spi is missing...

    however it seems to be available in the system:

    root@orangepizero:~/MySensors# ll /dev/spidev0.0
    crw------- 1 root root 153, 0 Dec 30 16:26 /dev/spidev0.0

    root@orangepizero:~/MySensors# dmesg | grep -i spi
    [ 0.814155] sunxi_spi_chan_cfg()1376 - [spi-0] has no spi_regulator.
    [ 0.814185] sunxi_spi_chan_cfg()1376 - [spi-1] has no spi_regulator.
    [ 0.815261] spi spi0: master is unqueued, this is deprecated

    setup:
    Orangepi zero
    Armbian

    hope that we get native OPI support soon, any way all help is appreciated!!

    kind regards,

    Tag



  • @aand said:

    Orange Pi One

    @aand

    I think, maybe the hardware nrf24 radio its not properly detected or ready on OPI?
    Seems ready state of the nrf24 board is needed in the moment to build/make the compilation of that module for the myGateway.

    We have any chance to run any Raspbian version (not armbian) on OPI ?
    Sure have so much differences about raspbian and armbian to aply same softw installation methods on both without adaptat in each case.

    Im so interesed too for use OPI One like my HA Controller and MQTT Gateway, so will be really good if you can post here any evolution and impressions about using OPI for that.

    Cheers



  • jirm daid "I think, maybe the hardware nrf24 radio its not properly detected or ready on OPI?"

    nrf24l01 radios WORK FINE on the Orange Pi One running armbian.

    I downloaded TMRh20's RF24 GitHub files and successfully tested the Linux example code "gettingstarted" in which an Orange Pi One (tx) sent data to another Orange Pi One (rx).



  • @aand.
    No dubt that NRF24 is detected and working on Armbian, but seems not properly detected on the build module process for the gateway installation process made for Raspbian. Sure because OS diferences from Raspbian and Armbian, raise this issue.
    Why not directly use Raspbian on OPI to avoid that and sure other issues that will by found because all software are mainly build for Raspberry (Raspbian OS) and that is the only well tested?

    I see Raspbian is available and updated for OPI trough his manufacturer.

    http://www.orangepi.org/downloadresources/orangepipc/oragepipc_e930546e866b23585721e5d2a6.html

    Regards



  • @jirm Thanks for the suggestion. I've downloaded the raspian image. To duplicate the path I used with armbian, I downloaded TMRh20's RF24 code so I can test the radio with code I've already had up and running on the hardware.. However, this version of raspbian is really bad. So far nothing compiles. Regular raspbian, and armbian on the orange pi one do not have this kind of problem out of the box; they compile a wide range of packages. I'll spend some more time on it to be diligent, but this distro looks like it needs to be put on the abandon pile.

    I tried compiling mysensors gateway too but no luck with that yet either. This is what I get:

    ./configure
    [SECTION] Detecting target machine.
    [OK] machine detected: SoC=H3, Type=unknown, CPU=armv7l.
    [OK] init system detected: sysvinit
    [SECTION] Saving configuration.
    [SECTION] Cleaning previous builds.
    [OK] Finished.

    make
    gcc -MT build/drivers/Linux/log.o -MMD -MP -march=armv8-a -mtune=cortex-a53 -mfpu=neon-vfpv4 -mfloat-abi=hard -DMY_RA
    DIO_NRF24 -DMY_GATEWAY_LINUX -DMY_DEBUG -Ofast -g -Wall -Wextra -I. -I./core -I./drivers/Linux -c drivers/Linux/log
    .c -o build/drivers/Linux/log.o
    cc1: error: bad value (armv8-a) for -march switch
    cc1: error: bad value (cortex-a53) for -mtune switch
    Makefile:102: recipe for target 'build/drivers/Linux/log.o' failed
    make: *** [build/drivers/Linux/log.o] Error 1



  • @aand

    Ok. Arrrggg ! .
    So sad ear that OPI Raspbian fork is too not working out the box and but its not surprise because the poor software support form manufacturer. Maybe this is another no way road.
    So seems only keep fighting with both OS (arm and rasp) to make it working.
    Some sugestions ...
    Will be fine if can post this issue but in software section here on mysensors forums. Maybe some mysensors gateway developers or any linux hack can help to trace the error you have on armbian or raspbian.
    Maybe can find another "no official" OPI Raspbian fork that compile better to mygateway. Maybe post this issue in OPI forums will be good and someone there can help or provide other better Raspbian fork.

    Sadly in this days I dont have time to try install on my OPI´s to help more. 👎

    Regards



  • @aand

    The las error you posted...is not on Raspbian but in Armbian ????

    "gcc -MT build/drivers/Linux/log.o -MMD -MP -march=armv8-a -mtune=cortex-a53 -mfpu=neon-vfpv4 -mfloat-abi=hard -DMY_RA
    DIO_NRF24 -DMY_GATEWAY_LINUX -DMY_DEBUG -Ofast -g -Wall -Wextra -I. -I./core -I./drivers/Linux -c drivers/Linux/log
    .c -o build/drivers/Linux/log.o
    cc1: error: bad value (armv8-a) for -march switch
    cc1: error: bad value (cortex-a53) for -mtune switch"

    In any case seems this is a gcc compiler error maybe because "wrong" version for that processor...so maybe trying to update gcc compiler can help to avoid that error?



  • @jirm The compiler error was from the raspbian image running on the orange pi one hardware. I installed the image, ran apt-get update and apt-get upgrade, then tried the mysensors installation. The error was unusual enough to stop me in my tracks ... it didn't look like a simple dependency error.

    armbian is not as well known as raspbian, but it is a very good distribution with an active and friendly development team. I like raspbian because it is a mature distro, and that's why I wanted to give it a try when you pointed out it's availability, but armbian is a very good alternative. I like armbian a lot and I hope we can get mysensors to work on it. Armbian also supports some of the newest and exciting hardware like the Nano Pi Neo and the Orange Pi Zero, each with a lot of IoT possibilities (they are very small form factors and low cost).

    As you can tell, I think it's a big win if we can get it working on armbian. I will look for the place you mentioned on the forum that might be a good place to post this issue -- please let me know if you have a suggestion on where it's best to post. And I'd like to thank you for your consideration of this problem.



  • I´m in the same boat as you, because for the moment I choose OPI hardware for my HA (Home Automation) system.
    Agree with you that Armbian is much better OS than Raspbian in general terms and preferably the path to walk through for OPI, but in that case always we walk on a parallel side because Raspbian is today the most prefered OS for IoT on developments because Raspberry is the predominant hardware. So that means in future we need fight each installation.

    In that case, Armbian forums sure is necesary place that can help to solve that problem too, but I think first better post here on mysensors software forums to try to get some more light about that specific error about mysensors gateway install process, and then at least have more info to report to someone that can help in Armbian.

    I'm trying to find some help more about the issues you raise and if you maintain posting updates here will be so good for me and sure for others that can use OPI too now or on future.

    OPI´s I´m sure is in near future a very good hardware (because they're so good relation cost-performance and quality) that mucho more people would choose for next coming IoT projects.

    Regards



  • @aand

    The error you post seems because gcc compiler is not well supporting the processor, so maybe need substitute all gcc compiler version in the OS to solve the issue (that's I wanted say before with update).

    apt-get update/upgrade cannot substituting "any" software to other because doing this only can push to last version the existing installed branch on the yet installed software on the OS.

    So It's not any dependence error it's a gcc compiler error raised for some weird version incompatibility with the hardware installed. Strange error but this is seems means message error you posted. So seems needed reinstall all gcc compiler to avoid that.

    Hope I explain enough...sorry about my bad english 😉

    See you...



  • Can I install mysensors on a openhab installed RPi ?


  • Code Contributor

    @Robinek70

    $ sudo mysgw -h
    Usage: mysgw [options]
    
    Options:
      -h, --help                 Display a short summary of all program options.
      -d, --debug                Enable debug.
      -b, --background           Run as a background process.
      --gen-soft-hmac-key        Generate and print a soft hmac key.
      --gen-soft-serial-key      Generate and print a soft serial key.
      --gen-aes-key              Generate and print an aes encryption key.
      --print-soft-hmac-key      Print the soft hmac key from the config file.
      --print-soft-serial-key    Print the soft serial key from the config file.
      --print-aes-key            Print the aes encryption key from the config file.
      --set-soft-hmac-key        Write a soft hmac key to the config file.
      --set-soft-serial-key      Write a soft serial key to the config file.
      --set-aes-key              Write an aes encryption key to the config file.
    

    To generate a soft hmac key, run:

    sudo mysgw --gen-soft-hmac-key
    

    and set it using:

    sudo mysgw  --set-soft-hmac-key=KEY
    

    For example:

    $ sudo mysgw --gen-soft-hmac-key
    SOFT_HMAC_KEY | 7F3F1A1C1EA32B72BF4BEDE2D16543971C26442F69572177D9CCDE393BFB8126
    
    The next line is intended to be used in SecurityPersonalizer.ino:
    #define MY_SOFT_HMAC_KEY 0X7F,0X3F,0X1A,0X1C,0X1E,0XA3,0X2B,0X72,0XBF,0X4B,0XED,0XE2,0XD1,0X65,0X43,0X97,0X1C,0X26,0X44,0X2F,0X69,0X57,0X21,0X77,0XD9,0XCC,0XDE,0X39,0X3B,0XFB,0X81,0X26
    
    To use this key, run mysgw with:
     --set-soft-hmac-key=7F3F1A1C1EA32B72BF4BEDE2D16543971C26442F69572177D9CCDE393BFB8126
    
    $ sudo mysgw --set-soft-hmac-key=7F3F1A1C1EA32B72BF4BEDE2D16543971C26442F69572177D9CCDE393BFB8126
    

    The same process applies to generate/set the other key types.


  • Code Contributor

    @aand @Tag @jirm MySensors uses its own nrf24 drivers, and OrangePi is not currently supported. It will be in the future.



  • @marceloaqno

    You mean the error posted @aand is because that?

    You mean mysgw use own NRF24 drivers that is not supported on OPI although he have running Raspbian version?.

    In any case, if so will be really fine if mysgw software allowed (or provide information about how to do it) to use any NRF24 driver (ex. TMRh20 fork that is working fine on OPI) and maybe too Hope RFMXX (I´m most interested in this last transceivers) because I think that generally speaking make a rigidly link with a type of hardware is not the best thing that can be done to really give the best functionality to any application.

    Still keep waiting for anyone here than can help to install mysgw softw on OPI.

    Thanks for your information

    Best regards



  • @marceloaqno, Thanks a lot



  • Ditto, @Robinek70 !

    Thank you, Marcelo Aquino, for your fantastic work .

    I have Domoticz, Cacti, Heyu and MySensors Gateway running in a 30 dollars RASPBERRY PI 2, all without a glitch, all talking to each other and hopefully soon will also have Alexa for RASPBERRY PI running there also.

    If in doubt, by a RASPBERRY PI and thank people who develop and support it for free instead of complaining all the time.

    'nuff said.

    Luiz Roberto


  • Code Contributor

    @jirm If you try to use the nrf24h radio you will get the same error as the @Tag post:

    In file included from examples_linux/mysgw.cpp:74:0:
    ./MySensors.h:258:2: error: #error No support for nRF24 radio on this platform
    #error No support for nRF24 radio on this platform
    

    For @aand error, it's what you mention in your early post, a gcc compiler issue.

    MySensors nrf24 drivers uses the SPI interface to drive the module, it's the same driver for all supported platforms (RPi, esp8266, atmega328p, ...), this way it is easier to maintain.

    I understand that it must have been frustrating to find out that it does not work for the OPi but there isn't much I can do to help you. I bought one too, still waiting to arrive.


  • Code Contributor

    @musthafa I'll give it a try. What version of openhab are you using?



  • @marceloaqno

    Thank you for your help here!! would be great to have mysgw on the OPI!
    I am using armbian on a OPI zero, so let me know if you need any further info.

    (Also using an RPI, which runs mysgw with direct connected radio like a charm!)
    Kind regards,

    Tag



  • @marceloaqno said "MySensors uses its own nrf24 drivers, and OrangePi is not currently supported. It will be in the future."

    I wish it worked now, but I don't mind waiting. Just to clarify where I'm coming from -- Orange Pi One hardware running Armbian. Thanks!

    I'll be keeping watching the updates!



  • @marceloaqno

    OpenHab 2



  • @marceloaqno

    Really thanks a lot for your work and very much appreciate you try to help us on our "fight" with the OPI board.
    Sadly in this moment I cannot work because I'm out of time to try install all softw stuff on my OPI and try help much more to push it working with mysgw and so on.
    I don't understand so much why is not working out of the box and the driver issue found and/what hardware communication issue are only on OPI with that similar derived Raspbian OS like Raspberry, and too not understand why cannot work on OPI because that SPI bus issue you say.
    @aand reported nrf24 module work very well with TMRh20 driver, so seems hardware are OK on OPI for the module and I suppose still only discover and hopefully make it work avoiding the driver issue you say to compile properly mysgw softw.
    Anyway, I only hope that anyone can help mainly here to make work mysgw on OPI too, and adapt it to work on Armbian, because OPI is a really good choice for HA controller board and sure in near future much people use it.

    Is there any chance to substitute own nfr24 driver mysgw with the TMR20h, at least for testing purposes on OPI?

    If any mysgw "code" people are reading this maybe can try to help us with some idea to try workaround the compilation issue on OPI.

    Best regards and again many thanks!

    PD: Only for test SPI purposses on armbian this can help (post 248) :
    https://forum.armbian.com/index.php/topic/617-wip-orange-pi-one-support-for-the-upcoming-orange-pi-one/page-9#entry5747

    Only for info, other interesting post about how to make work nrf24l01 module on OPI and armbian:
    https://forum.armbian.com/index.php/topic/3161-orange-pi-one-with-nrf24l01/

    Another one interesting post OPI One with armbian using NRF24 module:
    https://forum.armbian.com/index.php/topic/3161-orange-pi-one-with-nrf24l01/


  • Code Contributor

    @musthafa Openhab2 works using mysgw configured as an ethernet gateway. This is the guide I used: https://github.com/tobof/openhab2-addons/wiki



  • Hello.

    I'm also using a orangepi one and wanted to build the gateway on it. But i didn't want to use the nrf24 but a usb to rs485 converter. But if i want to compile it, i get also the same error with the nrf24 and that it is not supporting platform. Why?

    Also if i want to build a serial gateway with a connected arduino on usb port, i got the same error with the nrf24



  • @marceloaqno thank you.

    I have already installed OpenHAB 2 on my RPi. Can I install mysgw on to the same RPi ?



  • @hausinger -- are you running armbian on your orange pi one?



  • How can I update MySensors Gateway from 2.1.0 beta to 2.1.0 stable/final release?


  • Code Contributor

    @musthafa Yes, set the IP Address to 127.0.0.1 in your openhab for the ethernet gateway.



  • @aand said:

    @hausinger -- are you running armbian on your orange pi one?

    Yes, I'm running on armbian on my orange pi one



  • @aand

    Hi again!

    I spend some time seeing and reading some of the files from the mysensors github build and I see some things that can help to understand why the error raised to @aand trying to compile on OPI.

    First say that I´m not a coding expert, so please be nice with my if I´m wrong and say something stupid 😉

    I see in the .configure file that the machine detection have H3 Soc and this are fine detected , but then I see that selecting type and CPU flags seems not properly selected to match OPI specs , because on OPI soc H3 have a cpu armv7 (not armv8) and is a A20 and not A53.
    So maybe that cpu "selection" is not correct for H3 soc , and is so easy try if anyone that have OPI and have time can change only that values in the config file and try to compile.
    All the values on the A20 line seems correct for the OPI H3 soc, so only needed copy them from the A20 line to the H3 line, and give a try.

    File Configure

    .......

    function gcc_cpu_flags {
    local soc=$1
    case $soc in
    BCM2835)
    flags="-march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard"
    ;;
    BCM2836)
    flags="-march=armv7-a -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard"
    ;;
    AM33XX)
    flags="-march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=hard"
    ;;
    A10)
    flags="-march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=hard"
    ;;
    A13)
    flags="-march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=hard"
    ;;
    A20)
    flags="-march=armv7-a -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard"
    ;;
    H3)
    flags="-march=armv8-a -mtune=cortex-a53 -mfpu=neon-vfpv4 -mfloat-abi=hard"

    ;;
    *)



  • @marceloaqno Thank you!



  • also on banana pi pro when i trie to compile i'm getting this :

    [SECTION] Detecting target machine.
    [OK] machine detected: SoC=A20, Type=unknown, CPU=armv7l.
    [OK] init system detected: sysvinit
    [SECTION] Saving configuration.
    [SECTION] Cleaning previous builds.
    [OK] Finished.

    type i think must be BananaPro

    on make :

    -o build/examples_linux/mysgw.o
    In file included from examples_linux/mysgw.cpp:74:0:
    ./MySensors.h:258:2: error: #error No support for nRF24 radio on this platform
    #error No support for nRF24 radio on this platform
    ^
    In file included from ./drivers/RF24/RF24.cpp:23:0,
    from ./MySensors.h:294,
    from examples_linux/mysgw.cpp:74:
    ./drivers/RF24/RF24.h:52:17: fatal error: SPI.h: No such file or directory
    #include <SPI.h>
    ^
    compilation terminated.
    Makefile:98: recipe for target 'build/examples_linux/mysgw.o' failed
    make: *** [build/examples_linux/mysgw.o] Error 1

    so Banana Pi Pro soc A20 it's also on wait list or never worked ?



  • @eyesoft

    Yes...I see. That error is that said @marceloaqno about own mysensors NRF24 drivers and SPI bus adapt for Raspberry, because for now mysensors is only supported at Raspi and arduinos.
    On Banana CPU detection seems work better (I agree type seems not good...maybe you can change this on configure file and give a try to compile to see what happends) and I figure can work too on OPI too only changing that I said before, but then is raised NRF24 driver and SPI error.

    I see that mysensors RF24 driver are derivated from that https://github.com/mz-fuzzy/RF24 build that at same time last this is forked directly from http://tmrh20.github.io/RF24Installer/RPi/install.sh that we know are working fine on OPI and armbian, so I figure that maybe it´s not so much hard to modify mysensors RF24 to adapt to work on OPI.

    Hope any mysensors "coder" ear our call and cand give us some hand to make the changes on the mysensors build and we can compile the mysgw to OPI soon.

    Cheers



  • @jirm

    As a side coment, the configure file is on the root Mysensors directory that is buid when you complete the first step "git clone https://github.com/mysensors/MySensors.git" on the mysgw install process.

    Anyone can edit the file with a plain text editor and change the values for see what happens when try compile.

    Regards


  • Code Contributor

    @jirm The configure script from MySensor repo is based on the https://github.com/TMRh20/RF24/blob/master/configure. Could you try with theTMRh20 master branch and post the result?

    git clone https://github.com/TMRh20/RF24.git
    cd RF24
    ./configure
    make
    


  • @marceloaqno

    git clone https://github.com/TMRh20/RF24.git
    cd RF24
    ./configure
    [SECTION] Detecting arm compilation environment.
    [OK] arm-linux-gnueabihf-gcc detected.
    [OK] arm-linux-gnueabihf-g++ detected.
    [SECTION] Detecting target machine.
    [OK] machine detected: SoC=A20, Type=unknown, CPU=armv7l.
    [SECTION] Detecting DRIVER
    [OK] DRIVER detected:SPIDEV.
    [SECTION] Detecting OS.
    [INFO] OS detected:LINUX.
    [SECTION] Preparing configuration.
    [SECTION] Saving configuration.
    [SECTION] Cleaning previous builds.
    [OK] Finished.

    make
    arm-linux-gnueabihf-g++ -fPIC -march=armv7-a -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -Ofast -Wall -pthread -c RF24.cpp
    arm-linux-gnueabihf-g++ -fPIC -march=armv7-a -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -Ofast -Wall -pthread -c utility/SPIDEV/spi.cpp
    arm-linux-gnueabihf-g++ -fPIC -march=armv7-a -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -Ofast -Wall -pthread -c utility/SPIDEV/gpio.cpp
    arm-linux-gnueabihf-gcc -fPIC -march=armv7-a -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -Ofast -Wall -pthread -c utility/SPIDEV/compatibility.c
    arm-linux-gnueabihf-g++ -fPIC -march=armv7-a -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -Ofast -Wall -pthread -c utility/SPIDEV/interrupt.c
    [Linking]
    arm-linux-gnueabihf-gcc -pthread -shared -Wl,-soname,librf24.so.1 -march=armv7-a -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -Ofast -Wall -pthread -o librf24.so.1.2.0 RF24.o spi.o gpio.o compatibility.o interrupt.o


  • Code Contributor

    @Oli After these steps:

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

    to switch to the master branch, run:

    git checkout master
    

    and reinstall the gateway following the same steps from the instructions.



  • @marceloaqno
    i've tried on banana pi pro :

    cat /etc/debian_version
    8.6
    cat /etc/bananian_platform
    BananaPro


  • Code Contributor

    @eyesoft thanks for the feedback, we need to add support for SPIDEV driver in order to use the BananaPi.



  • @marceloaqno Sadly I´m so much bussy and traveling for few days and cannot acces to my OPI´s 😞 , but I´m sure someone here (@aand , @hausinger, etc.. ) can give a try on her OPI the things we said before. At least I hope this ...



  • @marceloaqno I see some huge steps up on BananaPi...seems only need add SPIDEV support for make it working... 🙂



  • @marceloaqno I am rather copy/paste not a programming kind a guy, so sorry for my lame questions.

    pi@raspberrypi ~ $ git clone https://github.com/mysensors/MySensors.git
    fatal: destination path 'MySensors' already exists and is not an empty directory

    pi@raspberrypi ~/MySensors $ git checkout master
    Branch master set up to track remote branch master from origin.
    Switched to a new branch 'master'

    but after that:

    pi@raspberrypi ~/MySensors $ make
    make: *** No targets specified and no makefile found. Stop.
    pi@raspberrypi ~/MySensors $ sudo make install
    make: *** No rule to make target 'install'. Stop.


 

Suggested Topics

311
Online

8.3k
Users

9.2k
Topics

97.3k
Posts