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. Controllers
  3. Raspberry GPIO NRF24l01+ make error

Raspberry GPIO NRF24l01+ make error

Scheduled Pinned Locked Moved Controllers
21 Posts 8 Posters 11.4k Views 2 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.
  • S Offline
    S Offline
    sharath krishna
    wrote on last edited by
    #2

    @Wiebe-Nieuwenhuis said:

    -lrf24-bcm

    install the -lrf24-bcm library first and den run make here... u have a dir for lrf24 bcm install it before and u should not have this erro

    1 Reply Last reply
    0
    • SweebeeS Offline
      SweebeeS Offline
      Sweebee
      wrote on last edited by
      #3

      Thanks, working now. With PiGateway i can run the gateway, is there a wat to daemonize it and start at boot?

      1 Reply Last reply
      0
      • sj44kS Offline
        sj44kS Offline
        sj44k
        wrote on last edited by
        #4

        Could you please share where you found the information how to connect the Radio to your Raspberry ?
        I am trying to get this to work for several day's but I am lost in all the different Information / Libraries and usage of different SPI ? GPIO pins.

        If you could give me a pointer it would be highly appreciated.

        1 Reply Last reply
        0
        • Vladut GrecuV Offline
          Vladut GrecuV Offline
          Vladut Grecu
          wrote on last edited by
          #5

          @sj44k -> https://github.com/mysensors/Raspberry

          Download that. First compile the librf24-bcm folder. Then compile the Raspberry one.

          From https://github.com/mysensors/Raspberry/tree/master/librf24-bcm

          PIN	NRF24L01	RPI	RPi -P1 Connector
          1	  GND			rpi-gnd	(25)
          2	  VCC			rpi-3v3	(17)
          3	  CE			rpi-gpio22	(15)
          4	  CSN			rpi-gpio8	(24)
          5	  SCK			rpi-sckl	(23)
          6	  MOSI			rpi-mosi	(19)
          7  	  MISO			rpi-miso	(21)
          8  	  IRQ			-Not connected
          
          

          The numbering for rpi is:

          1 2
          3 4
          5 6
          7 8
          9 10
          etc
          

          Don`t forget to enable the SPI from the raspbian config.

          To test your connection, simply open your program ./PiGatewaySerial
          It should print you something like this:

          root@raspberrypi:/home/pi/Raspberry# ./PiGatewaySerial
          Starting PiGatewaySerial...
          Protocol version - 1.4
          Created PTY '/dev/pts/3'
          Gateway tty: /dev/ttyMySensorsGateway
          ================ SPI Configuration ================
          CSN Pin          = CE0 (PI Hardware Driven)
          CE Pin           = Custom GPIO25
          Clock Speed      = 8 Mhz
          ================ NRF Configuration ================
          STATUS           = 0x0e RX_DR=0 TX_DS=0 MAX_RT=0 RX_P_NO=7 TX_FULL=0
          RX_ADDR_P0-1     = 0xe7e7e7e7e7 0xc2c2c2c2c2
          RX_ADDR_P2-5     = 0xff 0xc4 0xc5 0xc6
          TX_ADDR          = 0xe7e7e7e7e7
          RX_PW_P0-6       = 0x00 0x00 0x20 0x00 0x00 0x00
          EN_AA            = 0x3b
          EN_RXADDR        = 0x07
          RF_CH            = 0x10
          RF_SETUP         = 0x23
          CONFIG           = 0x0e
          DYNPD/FEATURE    = 0x3f 0x06
          Data Rate        = 250KBPS
          Model            = nRF24L01+
          CRC Length       = 16 bits
          PA Power         = PA_LOW
          
          
          1 Reply Last reply
          0
          • sj44kS Offline
            sj44kS Offline
            sj44k
            wrote on last edited by
            #6

            Thank you ! Will try this tonight, what kind of input could I expect when I do a test on my Aruino ? I have a Arduino Mega as a test board at this moment.
            Would a " Cat /dev/ttyMySensorsGateway' give me the output the Arduino is sending ?
            Arduino is set up as the mysensor temperature sensor as published on the website and seems to be working (according to the serial monitor).

            SPI is enabled, but for the sake of being sure I will start with a new and fresh Raspbian installation on the PI tonight SPI enabled.

            Again thanks for your reply ! I will post my findings.

            1 Reply Last reply
            0
            • Vladut GrecuV Offline
              Vladut GrecuV Offline
              Vladut Grecu
              wrote on last edited by
              #7

              You have to setup your arduino with a static node id. Something like

              gw.begin(incomingMessage, 10, false);
              or
              gw.begin(null, 10, false);
              or
              gw.begin(null, 10);
              

              10 is the node id.
              From my knowledge the raspi lib for nrf does not support the automatic node id. (or is just pimatic)
              Anyways, I don't use sensors. I just command the Arduino from raspi and my way of verifying the connection is the serial monitor linked to the arduino node. If it's found by the raspi and if he found the raspi the end of each line will be

              st=ok;
              

              If you get

              st=fail;
              

              You either did not set up the right node id or you need a capacitor on the nrf.
              Before you test the lib you can test the link with a serial arduino gateway and see what is going on.

              1 Reply Last reply
              0
              • sj44kS Offline
                sj44kS Offline
                sj44k
                wrote on last edited by sj44k
                #8

                Ok Radio was allready connected correctly, and I have the 4u7 capicitors installed.

                So this is what I understood from your tips am I correct ?

                 git clone https://github.com/mysensors/Raspberry
                
                
                cd Rasberry
                make
                cd librf24-bcm
                make 
                make install
                cd ..
                ./PiGatewaySerial
                
                Starting PiGatewaySerial...
                Protocol version - 1.4
                Created PTY '/dev/pts/1'
                Gateway tty: /dev/ttyMySensorsGateway
                ================ SPI Configuration ================
                CSN Pin          = CE0 (PI Hardware Driven)
                CE Pin           = Custom GPIO25
                Clock Speed      = 8 Mhz
                ================ NRF Configuration ================
                STATUS           = 0x0e RX_DR=0 TX_DS=0 MAX_RT=0 RX_P_NO=7 TX_FULL=0
                RX_ADDR_P0-1     = 0xe7e7e7e7e7 0xc2c2c2c2c2
                RX_ADDR_P2-5     = 0xff 0xc4 0xc5 0xc6
                TX_ADDR          = 0xe7e7e7e7e7
                RX_PW_P0-6       = 0x00 0x00 0x20 0x00 0x00 0x00
                EN_AA            = 0x3b
                EN_RXADDR        = 0x07
                RF_CH            = 0x4c
                RF_SETUP         = 0x23
                CONFIG           = 0x0e
                DYNPD/FEATURE    = 0x3f 0x06
                Data Rate        = 250KBPS
                Model            = nRF24L01+
                CRC Length       = 16 bits
                PA Power         = PA_LOW
                

                So now I want to receive my Sensor info from my Arduino on my Raspbery.
                I am using this build with a small addition on it as I am using an Arduino Mega so the pins are different :

                http://www.mysensors.org/build/temp

                I Changed :

                MySensor gw;
                

                into

                MySensor gw(48,49)
                

                No I will do the figuring out about the node ID as I the tip about the auto ID does not work makes sense, the sensor now uses 0 and if I am correct that is the id of the gateway.

                By the way to even get that part done I needed to clear the EEProm of the Arduino (found it somewhere on some forum :) )

                I got the node secret also done now
                I needed to set :+1:

                `gw.begin(NULL,10,false,11);
                

                But still no communication / output on the Raspberry

                Output on de Arduino is :

                sensor started, id 10
                send: 10-10-11-0 s=255,c=0,t=17,pt=0,l=5,st=fail:1.4.1
                send: 10-10-11-0 s=255,c=3,t=6,pt=1,l=1,st=fail:11
                send: 10-10-11-0 s=255,c=3,t=11,pt=0,l=18,st=fail:Temperature Sensor
                send: 10-10-11-0 s=255,c=3,t=12,pt=0,l=3,st=fail:1.0
                send: 10-10-11-0 s=0,c=0,t=6,pt=0,l=5,st=fail:1.4.1
                send: 10-10-11-0 s=0,c=1,t=0,pt=7,l=5,st=fail:68.7```
                1 Reply Last reply
                0
                • Vladut GrecuV Offline
                  Vladut GrecuV Offline
                  Vladut Grecu
                  wrote on last edited by Vladut Grecu
                  #9

                  @sj44k
                  Tell me where did you connected the CE Pin on rPi..
                  Do you have another Arduino so you can burn a serial gateway into it? So we can be sure that your Mega is sending and receiving properly?
                  From your Arduino output he clearly does not link with the nrf on the Raspberry.

                  1 Reply Last reply
                  0
                  • sj44kS Offline
                    sj44kS Offline
                    sj44k
                    wrote on last edited by sj44k
                    #10

                    Checked the wires 5 times .. all looks well. CE is on pin 15
                    Arduino should also be ok, I get error messages (Check wires) when it's connected differently

                    (Heres the Arduino mega pinout as I used it
                    http://forum.mysensors.org/topic/249/arduino-mega-sensor-shield-2/2 )

                    I have an Uno ordered but at this moment I am stuck to 1 arduino
                    I do have an extra Pi which I could use ..

                    By the way, where would I receive the information on my pi in this example (in case it would work)
                    ?
                    in the screen where I started the
                    ./PiGatewaySerial

                    Or in a cat /dev/pts/1 ?

                    1 Reply Last reply
                    0
                    • Vladut GrecuV Offline
                      Vladut GrecuV Offline
                      Vladut Grecu
                      wrote on last edited by
                      #11

                      Move the pin on 22. The actual 22 pin not gpio22. Full restart the pi.

                      I think you can cat the /dev/ttyMySensorsGateway. In the way I use it(with pimatic) all the commands are logged.

                      1 Reply Last reply
                      0
                      • sj44kS Offline
                        sj44kS Offline
                        sj44k
                        wrote on last edited by sj44k
                        #12

                        Tried that too, not working. But I now see why you asked that my output when starting PiGatewaySerial shows :

                        CE Pin           = Custom GPIO25
                        

                        So that needs to be harware pin 22

                        This picture helped a lot and makes now that I am 100% sure my Rpi is hooked up correctly.

                        GPIO B+.jpg

                        :s: must be overseeing something realy simple / stupid .. :/s:

                        Guess it must be the Arduino Mega causing the issue, back to my drawingboard .. will keep you posted

                        [edit]

                        Just found an interesting SPI reference picture for my Arduino Mega
                        Mega2560_R3_Label-small-v2 (2).png

                        My Pinout seems to be ok on the SPI side, just need to check CE / SE in regard to the scketch/libraries I am using.

                        Radio 1 GND Paars Arduino GND
                        Radio 2 3v3 Blauw Arduino 3,3v
                        Radio 3 CE Groen Arduino 48
                        Radio 4 CS Geel Arduino 49
                        Radio 5 SCK Oranje Arduino 52
                        Radio 6 MOSI Rood Arduino 51
                        Radio 7 MISO Bruin Arduino 50

                        1 Reply Last reply
                        0
                        • sj44kS Offline
                          sj44kS Offline
                          sj44k
                          wrote on last edited by sj44k
                          #13

                          YEAH !
                          It works !! thanks for pointing me in the right direction !
                          Arduino needed the right scketch uploade (I messed so much with it I needed to go back which I just did)

                          As a reference for all who are trying to get this to work.

                          Use this pinout for the RPI B+
                          Radio 1 grijs GND Rpi 25
                          Radio 2 paars 3v3 Rpi 17
                          Radio 3 blauw CE Rpi 22
                          Radio 4 groen CS Rpi 24
                          Radio 5 Geel SCK Rpi 23
                          Radio 6 oranje MOSI Rpi 19
                          Radio 7 Rood MISO Rpi 21

                          Arduino Mega
                          Radio 1 GND Paars Arduino GND
                          Radio 2 3v3 Blauw Arduino 3,3v
                          Radio 3 CE Groen Arduino 48
                          Radio 4 CS Geel Arduino 49
                          Radio 5 SCK Oranje Arduino 52
                          Radio 6 MOSI Rood Arduino 51
                          Radio 7 MISO Bruin Arduino 50

                          I used the Libs mentioned in the post above by Vladut Grecu :
                          https://github.com/mysensors/Raspberry

                          I used this Temperature sketch :
                          http://www.mysensors.org/build/temp

                          Before I did got the Temp sketch operational I needed to clear my EEprom :
                          http://arduino.cc/en/Tutorial/EEPROMClear

                          /*
                           * EEPROM Clear
                           *
                           * Sets all of the bytes of the EEPROM to 0.
                           * This example code is in the public domain.
                          
                           */
                          
                          #include <EEPROM.h>
                          
                          void setup()
                          {
                            // write a 0 to all 512 bytes of the EEPROM
                            for (int i = 0; i < 512; i++)
                              EEPROM.write(i, 0);
                             
                            // turn the LED on when we're done
                            digitalWrite(13, HIGH);
                          }
                          
                          void loop()
                          {
                          }
                          

                          Than we need to edit the sketch a bit due to the fact that the Rpi gateway DOES NOT hand out the Node ID's automaticly, and the Sketch is not Arduino Mega compatible so :

                          Set the Node ID manualy add

                          gw.begin(NULL,10,false);
                          

                          Make sure the sketch is compatible with the Arduino MEGA pins (as published abover here)
                          Change Line 12 in the sketch :

                          MySensor gw;
                          

                          into

                          MySensor gw(48,49)
                          

                          Than compile and hook everything up and upload the compiled sketch and start the Rpi (SPI enabled) and start
                          ./PiGatewaySerial

                          Output should show on your Pi when you
                          Cat /dev/ttyMySensorsGateway

                          Big Thank you to @Vladut-Grecu !

                          1 Reply Last reply
                          2
                          • hekH Offline
                            hekH Offline
                            hek
                            Admin
                            wrote on last edited by hek
                            #14

                            Just received a great pull request for the Rapsberry created by @Holger-Meyers .

                            https://github.com/mysensors/Raspberry

                            1 Reply Last reply
                            0
                            • SweebeeS Offline
                              SweebeeS Offline
                              Sweebee
                              wrote on last edited by
                              #15

                              I had it finally working on my Pi2, but its very unstable. sometimes weird values, crashes and fails.

                              switched to a usb serial arduino and that works great.

                              1 Reply Last reply
                              0
                              • A Offline
                                A Offline
                                Andreas Maurer
                                wrote on last edited by
                                #16

                                The original code on github is a bit buggy. Thats right. But the actual code after Holger has reworked it is running well.
                                I am using it for nearly a month now. Nothing has crashed after Holger has looked after the reason why.

                                Currently I am happy with the stability.

                                Sander TeunissenS 1 Reply Last reply
                                0
                                • A Andreas Maurer

                                  The original code on github is a bit buggy. Thats right. But the actual code after Holger has reworked it is running well.
                                  I am using it for nearly a month now. Nothing has crashed after Holger has looked after the reason why.

                                  Currently I am happy with the stability.

                                  Sander TeunissenS Offline
                                  Sander TeunissenS Offline
                                  Sander Teunissen
                                  wrote on last edited by
                                  #17

                                  @Andreas-Maurer Could you tell me which controller you are using for your setup ?

                                  Thanks !

                                  1 Reply Last reply
                                  0
                                  • A Offline
                                    A Offline
                                    Andreas Maurer
                                    wrote on last edited by
                                    #18

                                    I am using fhem on the same PI. connected over the pseudo serial port.

                                    1 Reply Last reply
                                    0
                                    • B Offline
                                      B Offline
                                      blksun813
                                      wrote on last edited by
                                      #19

                                      What is the CPU usage of PiGatewaySerial when you look at top? Mine is using 97%.

                                      1 Reply Last reply
                                      0
                                      • A Offline
                                        A Offline
                                        Andreas Maurer
                                        wrote on last edited by
                                        #20

                                        It isn´t on the list :)

                                        05-04-2015 09-00-21.jpg

                                        1 Reply Last reply
                                        0
                                        • B Offline
                                          B Offline
                                          blksun813
                                          wrote on last edited by
                                          #21

                                          Thanks.. Looked again today and it has calmed down.. Maybe it's just at start-up before there are any messages received or maybe something reading the Serial Port.

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


                                          18

                                          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