Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
196 commits
Select commit Hold shift + click to select a range
ecda0fa
Fix for #12
TMRh20 Aug 6, 2014
e8a63c0
Fix: Static payload size bug prev introduced
TMRh20 Aug 6, 2014
589b2c7
Fix: Removed wrong flush() on RPi
TMRh20 Aug 6, 2014
cb60afe
Adj delay to accomodate 250kbps rates better
TMRh20 Aug 6, 2014
9e12c23
Fix: RPi dynamic ACK issue
TMRh20 Aug 7, 2014
9da3eac
Fix: Multicast pipe0 address handling issue
TMRh20 Aug 16, 2014
d9c7df3
Add ATTiny example, change Minimal define
TMRh20 Sep 7, 2014
23532cf
Fix display of pin info for ATTiny
TMRh20 Sep 9, 2014
4e250cb
Delay for dyn_Pld_length corruption
TMRh20 Sep 10, 2014
82629d4
Add rxFifoFull() function, Only flush tx w ack_plds
TMRh20 Sep 13, 2014
9e28a60
Reduce error rate in call response scenarios
TMRh20 Sep 14, 2014
6f70a3c
Fix "warning: binary constants are a GCC extension".
reixd Sep 17, 2014
f5341bf
Merge pull request #19 from reixd/master
TMRh20 Sep 17, 2014
d3e5c4e
Fix mistake in new code
TMRh20 Sep 17, 2014
0153c71
Merge code per #17
TMRh20 Sep 23, 2014
1e8de6e
Update the pin layout table and consolidate the RPi readme files.
reixd Sep 26, 2014
e16c99e
Select a standard pin layout for the examples.
reixd Sep 26, 2014
51a71bc
Fix wrong pin layout
reixd Sep 27, 2014
8c0e9f8
Merge pull request #21 from reixd/examples
TMRh20 Sep 28, 2014
a2c3977
RPi B+ Update to BCM2835 V1.37
TMRh20 Sep 28, 2014
1732332
RPi B+ Update to BCM2835 V1.37
TMRh20 Sep 28, 2014
1c89b94
Merge remote-tracking branch 'origin/Updates'
TMRh20 Sep 29, 2014
5ff3088
Teensy Support
TMRh20 Oct 1, 2014
63b672c
Add RPi B+ info to main examples and readme
TMRh20 Oct 1, 2014
bf9d643
Update the pin layout table and consolidate the RPi readme files.
reixd Sep 26, 2014
94c8457
Select a standard pin layout for the examples.
reixd Sep 26, 2014
7aae31a
Fix wrong pin layout
reixd Sep 27, 2014
05fd86a
RPi B+ Update to BCM2835 V1.37
TMRh20 Sep 28, 2014
9155bdf
RPi B+ Update to BCM2835 V1.37
TMRh20 Sep 28, 2014
e7d7a70
Teensy Support
TMRh20 Oct 1, 2014
ccde03c
Add RPi B+ info to main examples and readme
TMRh20 Oct 1, 2014
3f4a1cb
#24 Enable UART as 2ndary SPI BUS
TMRh20 Oct 2, 2014
56b7711
#24 Add softSPI supp, fix SPI_UART
TMRh20 Oct 3, 2014
5238ca2
#25 Fix CRC status, revert to default SPI lib
TMRh20 Oct 4, 2014
2d79e75
#24 Fix: SoftSPI or UartSPI working with std SPI
TMRh20 Oct 5, 2014
80e942c
#24 lol Fix: Spelling and ; on std spi define
TMRh20 Oct 5, 2014
3e6ca45
Fix broken ATTiny support in updates branch
TMRh20 Oct 6, 2014
f8791b1
Merge remote-tracking branch 'origin/Updates'
TMRh20 Oct 6, 2014
c077f70
Fix: Broke SPI for Due and Teensy last commit
TMRh20 Oct 10, 2014
ecc5135
Merge branch 'Updates' of https://github.com/TMRh20/RF24 into Updates
TMRh20 Oct 11, 2014
8be1be0
Merge remote-tracking branch 'origin/master' into Updates
TMRh20 Oct 11, 2014
d6a9c3d
Built-in support multiple radios on RPi
TMRh20 Oct 11, 2014
04165e4
Update doxyfile & css to match tmrh20.github.io
TMRh20 Oct 14, 2014
422495a
character fix
lnxbil Oct 14, 2014
79eb410
Merge pull request #28 from lnxbil/printDetails-fix
TMRh20 Oct 21, 2014
435e4db
Merge RPi and Arduino code
TMRh20 Nov 4, 2014
8503804
Fix for last commit (code merge)
TMRh20 Nov 4, 2014
c51049d
Replace old examples with the current ones for RPi
TMRh20 Nov 5, 2014
eabd46a
Moved RPi SPI driver to RPi folder from root
TMRh20 Nov 5, 2014
8814d39
Incr delay in stopListening(); Fix transfer example
TMRh20 Nov 6, 2014
bb88f4a
Fix include for RF24_config.h
TMRh20 Nov 6, 2014
603f4cc
Fix header file install for RPi in Makefile
TMRh20 Nov 6, 2014
1da112a
Slight fix for makefile and RF24.h define
TMRh20 Nov 6, 2014
663f41b
Minor change to readme
TMRh20 Nov 10, 2014
b007fb4
Another correction RPi code merge (install info)
TMRh20 Nov 10, 2014
567ca69
Python wrapper for RPi added
martin-mat Nov 15, 2014
d41d47a
Reliability improvements for RPi
TMRh20 Nov 16, 2014
a12cdca
Remove unnecessary delay
TMRh20 Nov 16, 2014
deef592
Revert last commit, if defined... delay
TMRh20 Nov 16, 2014
a2954f8
Merge pull request #35 from mz-fuzzy/master
TMRh20 Nov 16, 2014
58293d6
Revert change to delay from last commit
TMRh20 Nov 16, 2014
1650b6b
Non-conflicting names
jfktrey Nov 17, 2014
83dccd2
Intel Gallileo support added
Nov 18, 2014
7574bf5
optimization for Galileo Delay
spaniakos Nov 19, 2014
0969010
Galileo Optimizations and FIFO Fix
spaniakos Nov 19, 2014
e13b238
Galileo Optimizations
spaniakos Nov 19, 2014
50450a9
Merge pull request #38 from jfktrey/master
TMRh20 Nov 25, 2014
bfd62ea
Fix for last pull request
TMRh20 Nov 26, 2014
aace3b4
Merge pull request #40 from spaniakos/master
TMRh20 Nov 26, 2014
65d7fc1
Updated led_example.pde to work with newer version of library.
k2OS Nov 28, 2014
91868e7
Merge remote-tracking branch 'origin/Updates'
TMRh20 Dec 1, 2014
a0c8087
Merge pull request #45 from k2OS/master
TMRh20 Dec 1, 2014
3515538
Lower default SPI clock speed
TMRh20 Dec 1, 2014
cd59648
Add readme for python wrapper
TMRh20 Dec 6, 2014
6bf37cd
Add new RPi installer info to readme
TMRh20 Dec 9, 2014
73cf59c
Fix: RPi memory corruption
TMRh20 Dec 15, 2014
91c6d21
Update readme for installer
TMRh20 Dec 17, 2014
dcdc35d
Adding SPI enum to RPi python wrapper
martin-mat Dec 18, 2014
350e00a
Merge pull request #50 from mz-fuzzy/pyRF24fix
TMRh20 Dec 18, 2014
d05a356
Update many of the example files
TMRh20 Dec 23, 2014
0b2d8dd
Add changes from doc update
TMRh20 Dec 24, 2014
a802136
Fix mistake in example update
TMRh20 Dec 26, 2014
3ee3b21
Merge remote-tracking branch 'origin/master' into Updates
TMRh20 Dec 28, 2014
831a424
Enable hardware warnings by default on linux
TMRh20 Dec 28, 2014
714999c
Update python readme and example
TMRh20 Dec 28, 2014
3c28f13
Attempt to correct markdown formatting in readme
TMRh20 Dec 30, 2014
54daf66
Attempt 2 to fix python readme formatting
TMRh20 Dec 30, 2014
4d5f014
Fixes and Improvements from large round of testing
TMRh20 Jan 2, 2015
39a6385
Fix 'features'? per https://github.com/dsbaha #56
TMRh20 Jan 5, 2015
9b9a573
Adding LittleWire support to RF24
lnxbil Jan 14, 2015
36fc1f1
updated for using LittleWire
lnxbil Jan 14, 2015
6d6f185
ignoring DS_Store files on MacOS
lnxbil Jan 14, 2015
ba4b8a3
Slight mods to LittleWire code changes
TMRh20 Jan 17, 2015
1e05097
Merge branch 'lnxbil-littlewire'
TMRh20 Jan 17, 2015
08480a3
Enable buffered writes/transmissions
TMRh20 Jan 19, 2015
6354cac
Fix build for python wrapper
TMRh20 Jan 20, 2015
8d68102
adapted python wrapper for RF24 interface changes in txStandBy and st…
martin-mat Jan 20, 2015
b2e40bc
Merge remote-tracking branch 'TMRh20/master' into pyRF24fix
martin-mat Jan 20, 2015
a46779f
Merge pull request #65 from mz-fuzzy/pyRF24fix
TMRh20 Jan 20, 2015
ba161a3
Address fix for attiny example sketch
ax7884 Jan 24, 2015
4b435c9
Merge pull request #66 from ax7884/master
TMRh20 Jan 24, 2015
8d5e869
- reset config register to default
dsbaha Jan 27, 2015
a27b840
Tweak CONFIG register on radio startup.
dsbaha Jan 28, 2015
e3f9f9a
Merge pull request #67 from dsbaha/master
TMRh20 Jan 30, 2015
3c652ed
Merge remote-tracking branch 'origin/master' into Updates
TMRh20 Feb 1, 2015
09269a3
Rough port for BBB #69
TMRh20 Feb 2, 2015
2254bbf
#69 - Forgot to include the main config changes
TMRh20 Feb 2, 2015
e7deb68
Move Due and ATTiny to new template format
TMRh20 Feb 3, 2015
25d379c
Support RPi 2 w/bcm2835.c version 1.39
mannkind Feb 12, 2015
f06ca7c
Merge pull request #72 from mannkind/Updates
TMRh20 Feb 12, 2015
e2abd64
Transitioning to new hardware support template
TMRh20 Feb 14, 2015
f420557
Add updated makefile for latest changes
TMRh20 Feb 14, 2015
2ca76c6
Restore bcm updates from #72
TMRh20 Feb 14, 2015
84f4590
Update for generic spidev/Linux support
TMRh20 Feb 15, 2015
02b9b16
Update Makefile for LittleWire
TMRh20 Feb 15, 2015
9b48595
Fix: Dual SPI devices with RF24
TMRh20 Feb 15, 2015
3d049ab
MRAA support tweaks
TMRh20 Feb 18, 2015
c0848cb
Fixed issue with ARDUINO not issuing CS for radio
prophet-roshak Feb 18, 2015
350cafb
Merge pull request #75 from prophet-roshak/mraa
TMRh20 Feb 18, 2015
e78893b
Memory handling with MRAA device contexts
prophet-roshak Feb 18, 2015
2eb660f
Memory handling with MRAA device contexts, minor optimizations
prophet-roshak Feb 18, 2015
30ef8dc
Add include for nanosleep #69
TMRh20 Feb 18, 2015
225052a
Merge pull request #76 from prophet-roshak/mraa
TMRh20 Feb 18, 2015
9ddbe8b
Update RF24.h with documentation info
TMRh20 Feb 18, 2015
8a0f5ab
Documentation and File Structure Changes
TMRh20 Feb 19, 2015
5333b4e
Replace readme with link to tmrh20.github.io/RF24
TMRh20 Feb 19, 2015
7741224
Reorganize Optional and Advanced parameters in docs
TMRh20 Feb 19, 2015
c83f0f2
Add a few links to RF24 docs for related projects
TMRh20 Feb 19, 2015
18e6775
Update note in gettingstarted example
TMRh20 Feb 19, 2015
0066eec
Fix bugs in transfer example
TMRh20 Feb 22, 2015
40b907c
BBB/SPIDEV changes
TMRh20 Feb 23, 2015
8e15310
More doc updates for coming changes
TMRh20 Feb 24, 2015
e900a9c
Remove trailing slash from docs/Prevent warning
TMRh20 Feb 24, 2015
c1bb29c
SPI/GPIO fixes/changes for MRAA and SPIDEV
TMRh20 Feb 28, 2015
b320f9e
Update docs in 'updates' branch
TMRh20 Feb 28, 2015
30a01d7
Cleanup RF24_config.h, add Teensy to arch/ support
TMRh20 Feb 28, 2015
dd4b86a
Added ```busNo``` passing to mraa::Spi() object creation call so that…
prophet-roshak Feb 28, 2015
71337bd
Merge pull request #78 from prophet-roshak/mraa
TMRh20 Feb 28, 2015
b342d97
Update *.cpp examples pin config
TMRh20 Mar 2, 2015
bd5ad6b
Unify RF24 constructor API for all Linux platforms
TMRh20 Mar 2, 2015
4120b18
Update Makefile with better RPi detection
TMRh20 Mar 3, 2015
8bd5289
Fix operator precedence for isAckPayloadAvailable.
jorihardman Mar 4, 2015
d28cfcb
Merge pull request #83 from jorihardman/master
TMRh20 Mar 4, 2015
f57b383
Fix isAckPayloadAvailable() per @jorihardman
TMRh20 Mar 4, 2015
4cb2c5c
Add generic pin config for RPi, minor doc changes
TMRh20 Mar 13, 2015
d577379
Merge branch 'master' of https://github.com/TMRh20/RF24
TMRh20 Mar 13, 2015
7fdc708
Add RPi pin config to main page per #89
TMRh20 Mar 18, 2015
c02a51c
transactions beta
nerdralph Mar 23, 2015
3863f6f
transactions beta
nerdralph Mar 23, 2015
e3f4a6b
Destructor for Linux only, replace bell with null
TMRh20 Mar 26, 2015
8a8803b
Merge remote-tracking branch 'origin/Updates'
TMRh20 Mar 26, 2015
3cc10bb
Merge branch 'Updates' of https://github.com/nerdralph/RF24 into Updates
TMRh20 Mar 26, 2015
b1b8cad
Add SPI transaction code from Ralph Doncaster
TMRh20 Mar 26, 2015
4445842
Initialize setup variable
TMRh20 Mar 26, 2015
da0c594
Change printf to serial.print in transfer example
TMRh20 Mar 26, 2015
f6e1f37
Fix IDE version detection for SPI transactions
TMRh20 Mar 26, 2015
64da088
Add transaction code to remaining functions
TMRh20 Mar 26, 2015
28c363f
Use SPI_HAS_TRANSACTION to detect transaction API
TMRh20 Mar 27, 2015
dceeabb
Adjust spi transaction detection again
TMRh20 Mar 29, 2015
e1db4f7
Fix few examples comments describing ce/csn ports erroneous pin num…
fab672000 Apr 10, 2015
a8716d5
Changed memory footprint of example saving almost 50% of RAM (306 ins…
fab672000 Apr 10, 2015
623c737
comment & memory cleanup cont'd
fab672000 Apr 10, 2015
ce35dc7
more ram saving
fab672000 Apr 10, 2015
0844788
Saved half of the RAM allocation, Now GettingStarted_CallReponse will…
fab672000 Apr 10, 2015
c0f5814
Save RAM should work with only 512 bytes AVRs
fab672000 Apr 11, 2015
a28ba9a
Keep consistency as much as possible with previous testing to allow f…
fab672000 Apr 11, 2015
f691c45
Fix issue #101 found by @mz-fuzzy
TMRh20 Apr 18, 2015
90d85be
Fix the rest of issue #101 per mz-fuzzy
TMRh20 Apr 19, 2015
d9579b3
Merge remote-tracking branch 'origin/Updates'
TMRh20 Apr 19, 2015
6f5e954
Update GettingStarted.ino
Interneedus Apr 20, 2015
51600d6
Update Transfer.ino
Interneedus Apr 20, 2015
7ad1c2f
Update scanner.ino
Interneedus Apr 20, 2015
638b199
Merge pull request #103 from Interneedus/patch-1
TMRh20 Apr 23, 2015
5896d62
Merge pull request #104 from Interneedus/patch-2
TMRh20 Apr 23, 2015
a75fd1f
Merge pull request #105 from Interneedus/patch-3
TMRh20 Apr 23, 2015
c79ccc7
Fix for SPI transaction code
TMRh20 Apr 27, 2015
357fcb9
Fix example per #114
TMRh20 Jun 7, 2015
5acbcbd
Fix/Changes for #111 & #112
TMRh20 Jun 17, 2015
ea960e0
@PlatformIO Library Registry manifest file
ivankravets Jun 18, 2015
594a949
Modify printDetails() per #121
TMRh20 Jun 22, 2015
417e6e5
Merge pull request #122 from ivankravets/patch-1
TMRh20 Jun 22, 2015
7005c47
Merge remote-tracking branch 'origin/Updates'
TMRh20 Jun 22, 2015
cd52d61
ESP8266 Support per @crcastle
TMRh20 Jul 13, 2015
c4d222c
Added getChannel Method to allow for verification of the configured c…
komby Aug 2, 2015
0a8b1d3
Merge branch 'master' of https://github.com/TMRh20/RF24
komby Aug 3, 2015
d85dd18
Merge remote-tracking branch 'origin/Updates'
TMRh20 Aug 7, 2015
16c49cb
Merge pull request #129 from komby/master
TMRh20 Aug 12, 2015
e06105c
Merge commit '16c49cbbf33cc4ad31ffeb09e835768385880665'
fab672000 Sep 12, 2015
b3c9591
Applying latest all changes from TMrh20
fab672000 Sep 12, 2015
0c3575a
Made ping_pair example now run in chips with 512 byte ram or less by …
fab672000 Sep 12, 2015
3497cb2
Removed obsolete printf expensive calls (that were already commented …
fab672000 Sep 12, 2015
bfb98a6
Fixed the example folder printed path
fab672000 Sep 12, 2015
f9f27da
Significant optimized RAM use in the pingpair_irq example.
fab672000 Sep 12, 2015
3bc5a76
Significant RAM saving on pingpair_sleepy also added previously misse…
fab672000 Sep 12, 2015
24a2038
Significantly reduced RAM use in Transfer example, also fixed some mi…
fab672000 Sep 12, 2015
88999de
Reducing RAM use in scanner example, could reduce much more and total…
fab672000 Sep 12, 2015
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 3 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ out/
out_native/
version.h
Session.vim
<<<<<<< HEAD
librf*.so.*
.DS*

*.so
*.dylib
.DS_Store
2,648 changes: 1,768 additions & 880 deletions Doxyfile

Large diffs are not rendered by default.

113 changes: 113 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
#############################################################################
#
# Makefile for librf24-bcm on Raspberry Pi
#
# License: GPL (General Public License)
# Author: Charles-Henri Hallard
# Date: 2013/03/13
#
# Description:
# ------------
# use make all and mak install to install the library
# You can change the install directory by editing the LIBDIR line
#
PREFIX=/usr/local

# Library parameters
# where to put the lib
LIBDIR=$(PREFIX)/lib
# lib name
LIB=librf24-bcm
# shared library name
LIBNAME=$(LIB).so.1.0

# Where to put the header files
HEADER_DIR=${PREFIX}/include/RF24

# The base location of support files for different devices
ARCH_DIR=arch

# The default objects to compile
OBJECTS=RF24.o spi.o

SHARED_LINKER_FLAGS=-shared -Wl,-soname,[email protected]



# Detect the Raspberry Pi from cpuinfo
# Allow users to override the use of BCM2835 driver and force use of SPIDEV by specifying " sudo make install -B RF24_SPIDEV=1 "
ifeq "$(RF24_SPIDEV)" "1"
RPI=0
else
#Count the matches for BCM2708 or BCM2709 in cpuinfo
RPI=$(shell cat /proc/cpuinfo | grep Hardware | grep -c BCM2708)
ifneq "${RPI}" "1"
RPI=$(shell cat /proc/cpuinfo | grep Hardware | grep -c BCM2709)
endif
endif

ifeq "$(RF24_MRAA)" "1"
SHARED_LINKER_FLAGS+=-lmraa
DRIVER_DIR=$(ARCH_DIR)/MRAA
OBJECTS+=gpio.o compatibility.o

else ifeq "$(RPI)" "1"
DRIVER_DIR=$(ARCH_DIR)/RPi
OBJECTS+=bcm2835.o
# The recommended compiler flags for the Raspberry Pi
CCFLAGS=-Ofast -mfpu=vfp -mfloat-abi=hard -march=armv6zk -mtune=arm1176jzf-s

else
DRIVER_DIR=$(ARCH_DIR)/BBB
OBJECTS+=gpio.o compatibility.o
endif


# make all
# reinstall the library after each recompilation
all: test librf24-bcm

test:
cp ${DRIVER_DIR}/includes.h $(ARCH_DIR)/includes.h
# Make the library
librf24-bcm: $(OBJECTS)
g++ ${SHARED_LINKER_FLAGS} ${CCFLAGS} -o ${LIBNAME} $^

# Library parts
RF24.o: RF24.cpp
g++ -Wall -fPIC ${CCFLAGS} -c $^

bcm2835.o: $(DRIVER_DIR)/bcm2835.c
gcc -Wall -fPIC ${CCFLAGS} -c $^

spi.o: $(DRIVER_DIR)/spi.cpp
g++ -Wall -fPIC ${CCFLAGS} -c $^

compatibility.o: $(DRIVER_DIR)/compatibility.c
gcc -Wall -fPIC ${CCFLAGS} -c $(DRIVER_DIR)/compatibility.c

gpio.o: $(DRIVER_DIR)/gpio.cpp
g++ -Wall -fPIC ${CCFLAGS} -c $(DRIVER_DIR)/gpio.cpp

# clear build files
clean:
rm -rf *.o ${LIB}.*

install: all install-libs install-headers

# Install the library to LIBPATH
install-libs:
@echo "[Installing Libs]"
@if ( test ! -d $(PREFIX)/lib ) ; then mkdir -p $(PREFIX)/lib ; fi
@install -m 0755 ${LIBNAME} ${LIBDIR}
@ln -sf ${LIBDIR}/${LIBNAME} ${LIBDIR}/${LIB}.so.1
@ln -sf ${LIBDIR}/${LIBNAME} ${LIBDIR}/${LIB}.so
@ldconfig

install-headers:
@echo "[Installing Headers]"
@if ( test ! -d ${HEADER_DIR} ) ; then mkdir -p ${HEADER_DIR} ; fi
@install -m 0644 *.h ${HEADER_DIR}
@if ( test ! -d ${HEADER_DIR}/${DRIVER_DIR} ) ; then mkdir -p ${HEADER_DIR}/${DRIVER_DIR} ; fi
@install -m 0644 ${DRIVER_DIR}/*.h ${HEADER_DIR}/${DRIVER_DIR}
@install -m 0644 ${ARCH_DIR}/*.h ${HEADER_DIR}/${ARCH_DIR}
68 changes: 68 additions & 0 deletions Makefile.littlewire
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
#############################################################################
#
# Makefile for librf24 via LittleWire
#
# License: GPL (General Public License)
# Author: Andreas Steinel
# Date: 2014/11/19
#
# Description:
# ------------
# use make all and make install to install the library
# You can change the install directory by editing the LIBDIR line
#

PREFIX=/opt/LittleWirePrefix

LIB=librf24

HEADER_DIR=${PREFIX}/include/RF24
LIB_DIR=$(PREFIX)/lib
DRIVER_DIR=arch/LittleWire

ifeq ($(shell uname), Linux)
DYN_SUFFIX=so
LINK_FORMAT=-shared -Wl,-soname,$@.$(DYN_SUFFIX)
else ifeq ($(shell uname), Darwin)
DYN_SUFFIX=dylib
LINK_FORMAT=-dynamiclib -install_name ${LIB_DIR}/${LIB}.${DYN_SUFFIX}
else
$(shell echo "Unknown System, please fix Makefile!")
$(shell false )
endif

LIBNAME=$(LIB).$(DYN_SUFFIX)
CCFLAGS=-O2 -Wall -g -DLITTLEWIRE -I$(PREFIX)/include
LIBS=-L$(PREFIX)/lib -llittlewire-spi

# make all
# reinstall the library after each recompilation
all: $(LIB)

# Make the library
$(LIB): RF24.o
g++ $(LINK_FORMAT) ${LIBS} -o ${LIBNAME} $^

# Library parts
RF24.o: RF24.cpp
g++ -Wall -fPIC ${CCFLAGS} -c $^

# clear build files
clean:
rm -rf *.o ${LIBNAME}

install: all install-libs install-headers

# Install the library to LIBPATH
install-libs:
@echo "[Installing Libs]"
@if ( test ! -d ${LIB_DIR} ) ; then mkdir -p ${LIB_DIR}; fi
@install -m 0755 ${LIBNAME} ${LIB_DIR}
@ln -sf ${LIB_DIR}/${LIBNAME} ${LIB_DIR}/${LIBNAME}.1

install-headers:
@echo "[Installing Headers]"
@if ( test ! -d ${HEADER_DIR} ) ; then mkdir -p ${HEADER_DIR} ; fi
@install -m 0644 *.h ${HEADER_DIR}
@if ( test ! -d ${HEADER_DIR}/${DRIVER_DIR} ) ; then mkdir -p ${HEADER_DIR}/${DRIVER_DIR} ; fi
@install -m 0644 ${DRIVER_DIR}/*.h ${HEADER_DIR}/${DRIVER_DIR}
69 changes: 1 addition & 68 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,69 +1,2 @@
# Arduino & Raspberry Pi driver for nRF24L01(+) 2.4GHz Wireless Transceiver

Design Goals:

* Maximally compliant with the intended operation of the chip
* Easy for beginners to use
* Consumed with a public interface that's similiar to other Arduino standard libraries
* Built against the standard SPI library.
* Support popular platform

* Modifications to the RF24 library in this fork is backward compatible. A single
enhancement which may cause issue, is code which relies on the driver to power down the
radio, as a side effect. The radio is no longer powered down after each transmit. Rather,
the application must take responsibility for power management. Normally this is
achieved by use of powerDown and powerUp. If you wish to maximize power efficiency,
you must call powerDown after transmit (write, startWrite).

Please refer to links :

* [Blog on setting up both Arduino UNO & Raspberry Pi] (http://arduino-for-beginners.blogspot.com/2013/02/setup-nordic-nrf24l01-rf-modules-to.html)
* [Documentation Main Page](http://maniacbug.github.com/RF24)
* [RF24 Class Documentation](http://maniacbug.github.com/RF24/classRF24.html)
* [Source Code](https://github.com/maniacbug/RF24)
* [Downloads](https://github.com/maniacbug/RF24/archives/master)
* [nRF24L01+ datasheet](http://www.nordicsemi.com/eng/nordic/download_resource/8765/2/27999719 )


# Optimized High Speed Arduino driver for nRF24L01 2.4GHz Wireless Transceiver

Design Goals: This library is designed to be...

* More compliant with the manufacturer specified operation of the chip, while allowing advanced users
* to work outside the reccommended operation.
* Utilize the capabilities of the radio to their full potential via Arduino
* More reliable and feature rich
* Easy for beginners to use, with well documented examples and features
* Consumed with a public interface that's similiar to other Arduino standard libraries
* Built against the standard SPI library.

April 2014: Official Release: Still some work to do, but most benefits have been realized
>>>>>>> 327f0609cf7b52b70accccc175b5809dd5074704

* The library has been tweaked to allow full use of the FIFO buffers for maximum transfer speeds
* Changes to read() and available () functionality have increased reliability and response
* Extended timeout periods have been added to aid in noisy or otherwise unreliable environments
* Delays have been removed where possible to ensure maximum efficiency
* Full Due support with extended SPI functions
* ATTiny 24/44/84 25/45/85 now supported.
* More! See the links below and class documentation for more info.

Please refer to:

* [Documentation Main Page](http://tmrh20.github.io/)
* [Class Reference]( http://tmrh20.github.io/RF24/classRF24.html)
* [Source Code](https://github.com/tmrh20/RF24)
* [Downloads](https://github.com/TMRh20/RF24/archive/master.zip)
* [Chip Datasheet](http://www.nordicsemi.com/files/Product/data_sheet/nRF24L01_Product_Specification_v2_0.pdf)

This chip uses the SPI bus, plus two chip control pins. Remember that pin 10 must still remain an output, or
the SPI hardware will go into 'slave' mode.

Supported Boards:

* Uno, Nano, etc (328 based boards)
* Mega Types (2560, 1280, etc)
* ARM (Arduino Due) via extended SPI methods
* ATTiny 24/44/84 25/45/85
* Raspberry Pi
* See the [documentation](http://tmrh20.github.io/) for more info
**See http://tmrh20.github.io/RF24 for all documentation**
Loading