bbb-nrf24l01
A bonescript module for beaglebone that interfaces with the nrf24l010. This module is based on this (https://github.com/aaronds/arduino-nrf24l01) library for arduino.
This module uses the node-spi library for the communication layer.
It is still on its first version and needs a lot of improvemens. It doesn't support interruption yet. Any help on the source code will be very appreciated.
Requirements
To use this module you need to have the SPI0 of the beaglebone enabled. You can follow the third tutorial (SPI0) of this page.
Wiring
nrf25l01 -> Beaglebone
-------- ----------
GND GND (P9_1 or P9_2)
3.3V 3.3V (P9_3 or P9_4)
CE P9_16 (configurable)
CSN SPI0.CS (P9_17)
SCKL SPI0.SCLK (P9_22)
MOSI SPI0.D1 (P9_18)
MISO SPI0.D0 (P9_21)
IRQ (not used yet)
Installation
npm install bbb-nrf24l01
Basic Usage
Initialization
var nrf = require('bbb-nrf24l01');
nrf.spiDev = '/dev/spidev1.0';
nrf.channel = 0;
nrf.payload = 4;
nrf.address = 'serve';
nrf.startReceiving();
If you need to change the CE pin, just do
nrf.cePin = 'P9_15';
Receiving data
if (nrf.dataReady()) {
var data = nrf.getData();
}
Sending data
nrf.setToAddr('clien');
var buf = new Buffer('msg');
nrf.sendData(buf);
while (nrf.isSending());
Contact
And doubts and/or suggestions regarding this library you can reach me at thiago.rdp at gmail.
License
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.