nRF905 driver implementation with MicroPython ( Unofficial )
This implementation of nRF905 driver covers full specification datasheet from nRF905 specification
Specification is stored also on repository
There are no external dependencies to this library, and it is written in pure MicroPython + Pico Python.
Specification
- Write full configuration of nRF905
- Writing configuration by segments (
AAAApart of specification) - Read full configuration of nRF905
- Reading configuration by segments (
AAAApart of specification) - Writing TX payload
- Reading TX payload
- Writing TX address
- Reading TX address
- Reading RX payload
- Fast write of channel configuration (
pphc cccc ccccpart of specification) - Reading status ( Reads AM / DR pin state, used in
receive_rx_messageandsend_tx_messagemessage as example )
Additional functions outside specification
- Printing to console whole configuration object with translation to human-readable format
- Printing to console configuration object segment by segment with translation to human-readable format
- Printing whole specification details via
print_helpmethod - Provided multiple translation of config for easier understand + bits configuration printing
To see examples and how to use driver, see main.py. The idea is to mostly use functions and compose required configurations etc. to get desired result. I did my best to avoid having a need to write binary code ( it's already there ).
Library contains a lot of comments to explain how to use given method or static value. In case of any questions, please look into specification
It's important to mention that this code has been tested on Raspberry PI Pico WH.
When it comes to nRF905 board it was 433 MHz variant ( green one if it helps )
This library has been tested intensively in real world.