Hi,
I'm struggling to get my Adafruit RFM69HCW breakout board working. I've been trying LowPowerLab (per Adafruit examples), RadioHead and PlainRFM69 libraries and they all have exactly the same symptom, they all hang during initialization, and indeed at any setMode() function.
I have confirmed that I have power, and communication with the board (for example I get 0x24 back from the REG_VERSION register (as I should) and other registers read as expected). From this I conclude that power, CS, RST, EN and SCK, MOSI and MISO are connected OK. I also conclude from this that the Teensy 3.2 is not running the SPI too fast and simply dropping bits. I have tried the most recent versions of all software and ones from a while back in case something recent has changed. I have also tried both the LowPowerLabs RFM69 and Radiohead RFM69 code on some Moteinos (RFM69HW) where it works like a charm.
The board hangs every time after a mode switch when waiting for the MODEREADY flag to be set.
while ((readReg(REG_IRQFLAGS1) & RF_IRQFLAGS1_MODEREADY) == 0x00); // wait for ModeReady
This line occurs in a couple of places and it never makes it out of there. The equivalent line occurs in RadioHeads RFM69 code and in PlainRFM69 code, where they each hang too.
I've started to dig into the datasheet and find no clues there. MODEREADY "just works".
A couple of frustrating days in, I guess I'm ready to throw myself at the mercy of more experienced people (and I will post this on the RadioHead and Adafruit forums too)
Is anyone else seeing this?
Could it be a weird batch of boards?