nRF24L01+ 2.4 GHz wireless connectivity with the TinyK20 board
I’m using the tiny and inexpensive Nordic Semiconductor nRF24L01+ transceiver (see “Tutorial: Nordic Semiconductor nRF24L01+ with the Freescale FRDM-K64F Board“) in many projects: it costs less than $3 and allows me to communicate with a proprietary 2.4GHz protocol in a low power way (see “IoT: FreeRTOS Down to the Micro Amps“). I have that transceiver now running with the tinyK20 board too:
The normal 2×3 pin rows of the transceiver module are not very bread board friendly. I have used the following connections to the nRF module:
- SPI MISO: PTC7
- SPI MOSI: PTC6
- SPI SCK: PTC5
- CE: PTC2
- CSN: PTD1
- IRQ: not connected
- 3.3V: 3.3V
- GND: GND
The project is for Eclipse (NXP Kinetis Design Studio) and is using the RNet wireless network stack:
For easier portability to other microcontroller the project is using Processor Expert components which encapsulate the low-level drives and software stacks including the RTOS:
The project includes a command line interface (38400 baud, 8N1) to send and receive messages, to do remote command execution and to inspect the status of the transceiver using Segger RTT. Plus it includes a wireless packet sniffer.
Alternatively, a USB CDC or UART (Serial) connection can be used.
I’m not going much into details how to use the nRF24L01+, RNet and all the other components. Check the links at the end of this article for more details.
With this project I have the tinyK20 board enabled with 2.4 GHz wireless connectivity for less than $3 using the Nordic Semiconductor nRF24L01+ transceiver. I plan to use this in one of my next projects which need to have all board components in a small enclosure: here the tinyK20 fits well :-).
The sources of this project are available on GitHub here: https://github.com/ErichStyger/mcuoneclipse/tree/master/Examples/KDS/tinyK20/tinyK20_nrf
Happy nRF’ing ?
- Using the Nordic Semiconductor nRF24L01+ transceiver: Tutorial: Nordic Semiconductor nRF24L01+ with the Freescale FRDM-K64F Board
- RNet stack: RNet Stack as Component, nRF24L01+ with Software SPI, Enhanced RNet Wireless Components and Communication Stack
- Segger RTT: Using Segger Real Time Terminal (RTT) with Eclipse