ESP8266 with RFM69 using Lowpowerlab
UPDATE: interesting new git project: https://github.com/bbx10/nanohab I’ll want to try it out soon!
I stumbled upon two different communities working on incorporating RFM into an ESP8266 environment or vice versa: Mysensors.org and Lowpowerlab.
My previous post discussed pinout for mysensors library. But, given that the funky’s I’m using worked so well with the Lowpowerlab library, I decided to look at leveraging their library to be run on the ESP8266.
|Pin Name||ESP8266 GPIO #||ESP8266 HSPI Function||RFM69 Pin||Arduino|
|MTDO||GPIO15||CS / SS (Select Slave)||NSS||10|
Rev A of the Huzzah ESP8266 board has GPIO #4 and #5 swapped (the modules changed pinouts on us)
- MISO (Master In Slave Out) – The Slave line for sending data to the master,
- MOSI (Master Out Slave In) – The Master line for sending data to the peripherals,
- SCK (Serial Clock) – The clock pulses which synchronize data transmission generated by the master
and one line specific for every device:
- SS (Slave Select) – the pin on each device that the master can use to enable and disable specific devices.
Then in RFM69.h:
#define RF69_IRQ_PIN 4 #define RF69_IRQ_NUM 4
Then from the lowerPowerLab sketch change CS to 15
To make matters more interesting, I’m using Martin’s Funky V3 with my RFM69.
In his version of the LowPowerLab’s Struct_Receive/Send, he sets the CS Pin to 10. I’ll try changing that to 15 in the ESP code to see if it works.