There is a new library, RF9X-RK. This is a port of the RadioHead Packet Radio Library version 1.89 for RF95/96/97/98 LoRa compatible radios.
It should work with these Adafruit radios:
- RFM95W 868 or 915 MHz Americas ITU 2 license-free ISM
- RFM98 433 MHz for use in Europe ITU 1 license-free ISM
While I used the FeatherWing version, it should also work with just the breakout.
If you are using the Adafruit Radio FeatherWing you should just follow the Adafruit instructions.
The radio communicates by SPI (MISO, MOSI, and SCK) and these pins are fixed.
However, there is a choice you need to make for the 3 remaining control pins. I selected these pins:
Pin | Map To | Particle Pin | Color |
---|---|---|---|
IRQ | E | D2 | Green |
CS | A | D6 | Yellow |
RST | F | A5 | White |
The reason is that D3, D4, and D5 (D, C, B) are used by the Ethernet FeatherWing, and by using different pins you can put the Radio FeatherWing in the Particle Ethernet FeatherWing along with a Xenon to make a nice base station.
After soldering the headers and the jumper wires are shown above:
I included what I believe to be a useful subset of the RadioHead library features:
- RF95/96/97/98 radio support
- Reliable datagram
- Encryption (optional)
You can easily make a fork of this library and add in a different set of features copied from the RadioHead distribution easily, if you wanted to.
There’s also a sample program that displays the output on the Adafruit OLED FeatherWing.