Port of popular nRF24L01(+) library RF24 for Allwinner A10/A20 devices
C++ C Other
Switch branches/tags
Nothing to show
Clone or download
Pull request Compare This branch is 6 commits ahead of bearpawmaxim:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
arduino
lib
obj
src
test
.gitignore
Makefile
Readme.mdown

Readme.mdown

Read Me

This is a port of popular nRF24L01(+) library RF24 for Allwinner A10/A20 devices.

To build sun7i (a20) version, type

make librf24-sun7i

To build sun4i (a10) version, type

make librf24-sun4i

To install library, type

    sudo make install

To make tests, type

	cd test/
	make

Tests description

  • scanner.cpp Example to detect interference on the various channels available. This is a good diagnostic tool to check whether you're picking a good channel for your application.

  • pingtest.cpp Examples sends data to a client, which receives it and then sends back. Refer to arduino/pingtest.pde for a sample arduino client.

  • arduino_rcv.cpp This example receives incrementing counter value from Arduino node (arduino/arduino_send.pde)

  • arduino_rcv_irq.cpp Similar to arduino_rcv, but this sample uses IRQ pin through GPIO to reduce CPU usage.

Wiring and configuration for Cubieboard 2

All tests by default use /dev/spidev0.0 device and assume the following connectionof the NRF24L01 module to the Cubieboard:

NRF24L01 pin -> Cubiboard 2 pin

1 GND -> 45 GND
2 3.3V -> 44 3.3V
3 CE -> 41, PB13
4 CSN -> 40, PB10
5 SCK -> 47, PI11
6 MOSI -> 46, PI12
7 MISO -> 48, PI13
8 IRQ -> 37, PH7 (optional, for the sample that uses IRQ)

script.fex configuration

[spi0_para]
spi_used = 1
spi_cs_bitmap = 1
spi_cs0 = port:PI10<2><default><default><default>
spi_cs1 = port:PI14<2><default><default><default>
spi_sclk = port:PI11<2><default><default><default>
spi_mosi = port:PI12<2><default><default><default>
spi_miso = port:PI13<2><default><default><default>

[spi_devices]
spi_dev_num = 1

[spi_board0]
modalias = "spidev"
max_speed_hz = 12000000
bus_num = 0
chip_select = 0
mode = 0
full_duplex = 1
manual_cs = 0

[gpio_para]
gpio_num = 8
...
gpio_pin_8 = port:PH7<1><default><default><default>