Krolyxon
Commit 1d55752

Branches

Tags

Refs →

orion-rf.piolibdepsesp32-s3-n16r8RF24docsmain_page.md

90 lines · 4.8 KB · Markdown

1# Optimized High Speed Driver for nRF24L01(+) 2.4GHz Wireless Transceiver
2
3@tableofcontents
4
5## Design Goals
6
7This library fork is designed to be...
8
9- More compliant with the manufacturer specified operation of the chip, while allowing advanced users
10 to work outside the recommended operation.
11- Utilize the capabilities of the radio to their full potential via Arduino
12- More reliable, responsive, bug-free and feature rich
13- Easy for beginners to use, with well documented examples and features
14- Consumed with a public interface that's similar to other Arduino standard libraries
15
16## News
17
18See the releases' descriptions on
19[the library's release page](http://github.com/nRF24/RF24/releases) for a list of
20changes.
21
22> [!IMPORTANT]
23> There's going to be major changes in v2.0.
24> As of v1.5, there is [newer API](migration.md) that should be used instead of
25> the @ref deprecated "deprecated API".
26>
27> See our [migration guide](migration.md) to understand what you should update in your code.
28
29## Useful References
30
31- [RF24 Class Documentation](classRF24.html)
32- [Support & Configuration](pages.html)
33- [Source Code](https://github.com/nRF24/RF24/)
34- [Datasheets](https://github.com/nRF24/RF24/tree/master/datasheets)
35
36### Additional Information and Add-ons
37
38- [RF24Network](http://nRF24.github.io/RF24Network): OSI Network Layer for multi-device communication. Create a home sensor network.
39- [RF24Mesh](http://nRF24.github.io/RF24Mesh): Dynamic Mesh Layer for RF24Network
40- [RF24Ethernet](http://nRF24.github.io/RF24Ethernet): TCP/IP Radio Mesh Networking (shares Arduino Ethernet API)
41- [RF24Audio](http://nRF24.github.io/RF24Audio): Realtime Wireless Audio streaming
42- [nrf_to_nrf](https://github.com/TMRh20/nrf_to_nrf): OSI Layer 2 radio driver for NRF52x radios. Replaces RF24 layer for new radio devices.
43- [RF24G](https://hobietime.github.io/RF24G/html/): Create a true mesh of up to 7 nrf24l01 and/or nrf52x devices
44- [TMRh20 Blog: RF24 Optimization Overview](http://tmrh20.blogspot.com/2014/03/high-speed-data-transfers-and-wireless.html)
45- [TMRh20: RPi/Linux with RF24Gateway](http://tmrh20.blogspot.com/2016/08/raspberry-pilinux-with-nrf24l01.html)
46- [All TMRh20 Documentation Main Page](http://tmrh20.github.io/)
47
48### More Information
49
50- [Project Blog: TMRh20.blogspot.com](http://TMRh20.blogspot.com)
51- [Maniacal Bits Blog](http://maniacalbits.blogspot.ca/)
52- [Original Maniacbug RF24Network Blog Post](https://maniacbug.wordpress.com/2012/03/30/rf24network/)
53- [ManiacBug on GitHub](https://github.com/maniacbug/RF24) (Original Library Author)
54- [MySensors.org](http://www.mysensors.org/) (User friendly sensor networks/IoT)
55
56## Platform Support Pages
57
58- [Arduino](arduino.md) (Uno, Nano, Mega, Due, Galileo, etc)
59- [ATTiny](attiny.md)
60- [Pico SDK support](pico_sdk.md)
61- [Linux Installation](linux_install.md) (or the alternative [instructions using CMake](using_cmake.md)),
62 ([Linux/RPi General](rpi_general.md), [MRAA](mraa.md) supported boards (Galileo, Edison, etc), LittleWire)
63- [Cross-compilation](cross_compile.md) for linux devices
64- [Python wrapper](python_wrapper.md) available for Linux devices
65
66### General µC Pin layout
67
68@see also the individual board [support pages](pages.html) for more info
69
70Observe
71
72![pinout.jpg](images/pinout.jpg)
73
74The table below shows how to connect the the pins of the NRF24L01(+) to different boards.
75CE and CSN are configurable.
76
77| PIN | NRF24L01 | Arduino UNO | ATtiny25/45/85 [0] | ATtiny44/84 [1] | LittleWire [2] | RPI | RPi -P1 Connector |
78| --- | -------- | ----------- | ------------------ | --------------- | ----------------------- | ---------- | ----------------- |
79| 1 | GND | GND | pin 4 | pin 14 | GND | rpi-gnd | (25) |
80| 2 | VCC | 3.3V | pin 8 | pin 1 | regulator 3.3V required | rpi-3v3 | (17) |
81| 3 | CE | digIO 7 | pin 2 | pin 12 | pin to 3.3V | rpi-gpio22 | (15) |
82| 4 | CSN | digIO 8 | pin 3 | pin 11 | RESET | rpi-gpio8 | (24) |
83| 5 | SCK | digIO 13 | pin 7 | pin 9 | SCK | rpi-sclk | (23) |
84| 6 | MOSI | digIO 11 | pin 6 | pin 7 | MOSI | rpi-mosi | (19) |
85| 7 | MISO | digIO 12 | pin 5 | pin 8 | MISO | rpi-miso | (21) |
86| 8 | IRQ | - | - | - | - | - | - |
87
88- [0] https://learn.sparkfun.com/tutorials/tiny-avr-programmer-hookup-guide/attiny85-use-hints
89- [1] http://highlowtech.org/?p=1695 The ATTiny2313 is unsupported due to lack of sufficient memory resources.
90- [2] http://littlewire.github.io/