RPI Gateway - !TSM:INIT:TSP FAIL



  • Hello everybody,

    I try to make a Rapberry Pi Ethernet Gateway with an NRF24 card. The NRF has a 220uf capacitor, soldering direct on the board.

    The problem is, the RPI does not detect the NRF24. On an arduino, the NRF24 is working fine as a serial Gateway. I have tested it with two different NRF and on a RPi 1 and a RPI 2 and different cable.

    All is made like in this Tutorial.

    Exactly what I have done:

    sudo su
    
    git clone https://github.com/mysensors/MySensors.git --branch master
    
    cd MySensors
    
    ./configure --my-transport=nrf24
    
    ./configure --my-gateway=ethernet --my-port=5003
    
    raspi-config 
    

    SPI activated and reboot......

    make
    
    sudo ./bin/mysgw -d
    

    Now I get everytime:

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

    Does someone know, what else could wrong? :(

    Kind regards


  • Mod

    Try development branch



  • Thanks for the answer.

    Sorry, I'm new to Mysensors and I don't understand what is meaning with "development branch".



  • You have run ./configure twice, run it like this:

    ./configure --my-transport=nrf24 --my-gateway=ethernet --my-port=5003
    

  • Mod

    @maxdor when you do the git clone replace master with development: it's also written in the guide.



  • git clone https://github.com/mysensors/MySensors.git --branch development
    ./configure
    make
    sudo make install
    sudo /usr/local/bin/mysgw -d
    

    This is how I did it on a Raspberry Pi 3.



  • Thanks for the help.

    I have made a new install with developement branch, but after the "make", I get this error:

    gcc -MT build/drivers/BCM/bcm2835.o -MMD -MP -march=armv6zk -mtune=arm1176jzf-s                        -mfpu=vfp -mfloat-abi=hard -DMY_RADIO_NRF24 -DMY_GATEWAY_LINUX -DMY_DEBUG -DLINU                       X_SPI_BCM -DLINUX_ARCH_RASPBERRYPI -DMY_PORT=5003  -Ofast -g -Wall -Wextra  -I.                        -I./core -I./drivers/Linux -I./drivers/BCM -c drivers/BCM/bcm2835.c -o build/dri                       vers/BCM/bcm2835.o
    drivers/BCM/bcm2835.c: In function ‘bcm2835_delayMicroseconds’:
    drivers/BCM/bcm2835.c:441:40: error: expected ‘)’ before ‘PRIu64’
       printf("bcm2835_delayMicroseconds %" PRIu64 "\n", micros);
                                            ^~~~~~
    drivers/BCM/bcm2835.c:441:37: warning: spurious trailing ‘%’ in format [-Wformat                       =]
       printf("bcm2835_delayMicroseconds %" PRIu64 "\n", micros);
                                         ^
    Makefile:102: recipe for target 'build/drivers/BCM/bcm2835.o' failed
    make: *** [build/drivers/BCM/bcm2835.o] Error 1
    pi@raspberrypi:~/MySensors $ sudo ./bin/mysgw -d
    sudo: ./bin/mysgw: command not found
    
    

    SPI is activated.


  • Mod

    @hek do you think it is a compiler issue or a bug?


  • Mod

    @maxdor looks like the same problem as reported in https://github.com/mysensors/MySensors/issues/955
    Add --extra-cxxflags="-D__STDC_FORMAT_MACROS" to the configure command



  • @mfalkvidd I have the same issue. Even with --extra-cxxflags="-D__STDC_FORMAT_MACROS".


  • Mod

    @tchoblond59 could you post the full configure command you used and info on what system you are trying to build on?
    gcc -v |& grep 'gcc version'
    grep PRETTY_NAME /etc/os-release



  • @mfalkvidd
    ./configure --my-transport=nrf24 --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 --extra-cxxflags="-D__STDC_FORMAT_MACROS"

    gcc version 6.3.0 20170516 (Raspbian 6.3.0-18+rpi1)
    PRETTY_NAME="Raspbian GNU/Linux 9 (stretch)"


  • Mod

    Do you get same error even if you compile as ethernet gateway?



  • make clean
    ./configure --my-gateway=ethernet --my-port=5003
    make

    Same error after this.


  • Mod

    @tchoblond59 thanks. So far, it seems your system that is unable to compile is the same as the system I was able to compile cleanly on. I wonder were the difference is.



  • I open an issue on github
    https://github.com/mysensors/MySensors/issues/980

    Hope i will be able to fix it. I will try to reinstall a raspbian when i have some times

    Thanks for the help



  • For the moment i am able to compile by going to previous commit
    git checkout 9e5a1e32
    make

    (I haven't test with a nrf24 but i can launch mysgw )



  • I chave the exact same issue. Made the installation of Raspi and MySensors quite often last days because of problems with the NRF24. Now, as it finally worked, the installation of my clean final version crashes -.-.



  • Same error here.
    gcc version 4.9.2 (Raspbian 4.9.2-10)
    PRETTY_NAME="Raspbian GNU/Linux 8 (jessie)"
    Replacing

    printf("bcm2835_delayMicroseconds %" PRIu64 "\n", micros);
    

    with

    printf("bcm2835_delayMicroseconds %lld\n", micros);
    

    in file drivers/BCM/bcm2835.c fixed the issue.

    EDIT:
    It did compile, but it segfaults when I try to start mysgw
    Time to get a fresh copy from git

    EDIT2:
    Fix from commit in bug report fixed it.


Log in to reply
 

Looks like your connection to MySensors Forum was lost, please wait while we try to reconnect.