This package provides a Python wrapper of the LowPowerLabs RFM69 library and is largely based on the work of Eric Trombly who ported the library from C.
The package expects to be installed on a Raspberry Pi and depends on the RPI.GPIO and spidev libraries. In addition you need to have an RFM69 radio module directly attached to the Pi. For details on how to connect such a module checkout this guide Connecting the Radio.
There are links to an Arduino installation from Adafruit at the bottom of this page.
Connecting to Raspberry Pi#
- Connecting the Radio from RPI RFM69 library
- Installing the library, which comes down to the following:
sudo pip3 install rpi-rfm69
Pin Guide Raspberry Pi to RFM69HCW (Adafruit and Spark Fun breakouts) #
PI Name | 3v3* | Ground | MOSI | MISO | SCLK | ID_SC‡ | CE0 | |
---|---|---|---|---|---|---|---|---|
PI GPIO† | 10 | 9 | 11 | 8 | 5 | |||
PI Pin | 17 | 25 | 19 | 21 | 23 | 28 | 24 | 29 |
Adafruit | Vin | GND | MOSI | MISO | CLK | G0 | CS | RST |
Breakout Garden SPI | 3V3 | GND | MOSI | MISO | SCLK | GPIO | CS |
* This pin can only support low power mode. Use different supply if you want to use the RFM69HCW in high power mode.
† These numbers refer to the pin index when you could from top left to bottom right i.e. odd number on the left and evens on the right. These are not the GPIO numbers. pinout.xyz is an amazingly helpful tool.
‡ This is the interrupt pin. The RFM69HCW module calls an interrupt on the RPI when there is new data to process.
† These numbers refer to the pin index when you could from top left to bottom right i.e. odd number on the left and evens on the right. These are not the GPIO numbers. pinout.xyz is an amazingly helpful tool.
‡ This is the interrupt pin. The RFM69HCW module calls an interrupt on the RPI when there is new data to process.