Skip to content

OSI Layer 3 Networking for nRF24L01(+) and nRF52x on Arduino and Raspberry Pi

License

Notifications You must be signed in to change notification settings

nRF24/RF24Network

Folders and files

NameName
Last commit message
Last commit date

Latest commit

731a368 · Jan 10, 2025
Oct 5, 2024
Sep 13, 2024
Jul 5, 2024
Oct 5, 2024
Jun 15, 2024
Jul 5, 2024
Jun 19, 2022
Oct 30, 2021
Feb 20, 2024
Jun 8, 2023
Oct 5, 2024
Jan 10, 2025
Jul 5, 2024
Jun 12, 2021
Apr 15, 2017
Dec 23, 2015
Mar 12, 2024
Jan 10, 2025
Jun 17, 2024
Jun 19, 2024
Jan 10, 2025
Jan 10, 2025

Repository files navigation

Linux build Arduino CLI build PlatformIO build Pico SDK build Documentation Status

TMRh20 2014-2024 - Optimized Network Layer for nRF24L01(+) & nRF52x radios

Introducing RF24Network & RF24Mesh v2.0 with some significant API changes, adding the use of C++ Templates in order to support a range of ESB enabled radios, most recently NRF52x radios.

Important Notes:

  • Any network layer that uses v2 needs to have RF24Network/RF24Mesh dependencies of v2 or newer. RF24 v1.x is an exception here.
  • General usage should remain backward compatible, see the included examples of the related libraries for more info
  • Any third party libs that extend the network/mesh layer may also need to be updated to incorporate the new templated class prototypes:
template<class radio_t>
class ESBNetwork;
  
template<class network_t, class radio_t>
class ESBMesh;
  • Third party libs should also be able to use the backward-compatible typedef in their template:
    • ESBGateway.h:
    template<typename network_t, typename mesh_t>
    class ESBGateway
    and inform the compiler what types they intend to support:
    • ESBGateway.cpp:
    template class ESBGateway<RF24Network, RF24Mesh>;
  • The auto installers do not perform a version check like package managers, so having the correct versions of the software is important.
  • We will be maintaining the v1.x versions with bugfixes etc for those who cannot or do not wish to migrate to the newer template approach.

Please see the full documentation at http://nRF24.github.io/RF24Network/ for more information

See http://nRF24.github.io/RF24/index.html for general RF24 configuration and setup

See Linux Installation and General Linux/RPi configuration and setup