Optimized High Speed NRF24L01+ Driver Class Documenation  V1.0
TMRh20 2014 - Optimized Fork of NRF24L01+ Driver
Linux devices

Generic Linux devices are supported via SPIDEV, MRAA, RPi native via BCM2835, or using LittleWire.

Note
The SPIDEV option should work with most Linux systems supporting spi userspace device.


Automated Install

(Designed & Tested on RPi - Defaults to SPIDEV on devices supporting it)

  1. Install prerequisites if there are any (MRAA, LittleWire libraries, setup SPI device etc)
  2. Download the install.sh file from http://tmrh20.github.io/RF24Installer/RPi/install.sh
    wget http://tmrh20.github.io/RF24Installer/RPi/install.sh
  3. Make it executable
    chmod +x install.sh
  4. Run it and choose your options
    ./install.sh
  5. Run an example from one of the libraries
    cd rf24libs/RF24/examples_linux
    Edit the gettingstarted example, to set your pin configuration
    nano gettingstarted.cpp
    make
    sudo ./gettingstarted


Manual Install

  1. Install prerequisites if there are any (MRAA, LittleWire libraries, setup SPI device etc)
    Note
    See the MRAA documentation for more info on installing MRAA
  2. Make a directory to contain the RF24 and possibly RF24Network lib and enter it
    mkdir ~/rf24libs
    cd ~/rf24libs
  3. Clone the RF24 repo
    git clone https://github.com/tmrh20/RF24.git RF24
  4. Change to the new RF24 directory
    cd RF24
  5. Configure build environment using
    ./configure
    script. It auto detectes device and build environment. For overriding autodetections, use command-line switches, see
    ./configure --help
    for description.
  6. Build the library, and run an example file
    sudo make install
    cd examples_linux
    Edit the gettingstarted example, to set your pin configuration
    nano gettingstarted.cpp
    make
    sudo ./gettingstarted