Skip to content
Simple way to use an nRF24L01 radio to exchange arbitrary Python objects between two Pyboards
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
async-radio-pickle
radio-fast
radio-pickle
LICENSE
PROTOCOL.md
README.md

README.md

micropython-radio

Three protocols for the nRF24L01+ radio module. All are based on a link between two radios, where one acts as master (initiating communications) and the other acts as slave (responding to transmissions). The async-radio-pickle hides this underlying master/slave asymmetry.

radio-fast

A protocol for short fixed-length records which trades the simplicity of use of radio-pickle in exchange for higher speeds and (slightly) greater range.
See README

radio-pickle

This offers a simple way to use the nRF24L01+ radio to exchange arbitrary Python objects between two Pyboards. This is the easy way to do it!
See README

async-radio-pickle

A version of radio-pickle which uses uasyncio to achieve non-blocking behaviour. The unit of communication is an arbitrary Python object. It provides a symmetrical Channel object enabling either end of the link to send unsolicited messages. This enables the same code to run on both ends of the link with the exception of a single boolean initialisation flag which must differ at each end.

One aim of this was to achieve "reliable" communication in the sense that messages would never be lost. If a unit moved out of range the message would inevitably be delayed until it moved back into range - but it would eventually get through. Alas this has not yet been achieved: under circumstances of poor communication messages are occasionally lost.

See README

You can’t perform that action at this time.