Black Lives Matter - Action and Equality. ... Adafruit joins the Stop Hate for Profit campaign.
0

RFM69HCW on Arduino Uno Not Initialising
Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.

RFM69HCW on Arduino Uno Not Initialising

by highlifelight on Fri Jul 12, 2019 12:57 pm

I've had a really difficult time getting the two RFM69HCW breakouts I ordered to work. I've tried the RadioHead library as well as the LowPowerLab version and I'm getting nowhere. Anyway I found this post with the same symptom ("RFM69 radio init failed"). This poster was fortunate to find that it was just a wire problem, but I've replaced my wires and it persists. Just like this previous poster, I wired up the Uno like the example. I'm sure I'm doing something stupid somewhere, but I really need some help. I attached an image of my breadboard (I put the LED on there just to show that it should definitely be getting power). Thanks for any help you can provide.

Edit: Also, I may as well mention that I was trying to demo this simple sketch because I couldn't get the breakouts to work with another application - there is more information there as well.
Adafruit.jpg
Adafruit.jpg (89.1 KiB) Viewed 438 times

highlifelight
 
Posts: 8
Joined: Fri Jul 12, 2019 12:48 pm

Re: RFM69HCW on Arduino Uno Not Initialising

by highlifelight on Sun Jul 14, 2019 1:10 am

I'm so worn out with this. I've spent the better part of the last two days testing every bit of code I could find for both RadioHead and LowPowerLab libraries. I've double and triple checked my connections. I've set up Arduino Pro Minis (3.3V of course_ and wired them accordingly. Nothing works. At what point does one decide that the two breakouts I received were defective? I'm just so tired of "init failed".
Edit: I'm going to outline what I'm (re)trying this morning. I'm using the "rf69 demo tx rx.pde" RadioHead RawDemo_RX sketch linked from the tutorial. I have an Arduino Pro Mini 3.3 connected as follows:
Arduino <->RFM69HCW Breakout
VCC <->VIN
GND <->GND
2 <->G0
13 <->SCK
12 <->MISO
11 <->MOSI
10 <->CS
9<->RST
When I run the sketch, I get the error 'RFM69_CS' was not declared in this scope, so I remove all the IFs and declare the variables matching my pin assignments:
Code: Select all | TOGGLE FULL SIZE
// Change to 434.0 or other frequency, must match RX's freq!
#define RF69_FREQ 915.0
#define RFM69_CS      10
#define RFM69_INT     2
#define RFM69_RST     9
#define LED           13
// Singleton instance of the radio driver
RH_RF69 rf69(RFM69_CS, RFM69_INT);

And I compile successfully and upload and get the following in my console:
Code: Select all | TOGGLE FULL SIZE
Feather RFM69 RX Test!
12:20:28.489 ->
12:20:28.591 -> RFM69 radio init failed

I run the exact same code with exact same jumper placement on my Uno (different breadboard, different jumper wire, different microcontroller) and I get this.
Code: Select all | TOGGLE FULL SIZE
14:58:28.146 -> Feather RFM69 RX Test!
14:58:28.146 ->
14:58:28.282 -> RFM69 radio init failed


Edit: It's a new day, let's try again! I found this postwhich claims that you can't use pin 13 for LED because it's reserved for SCK. I changed arbitrarily to 4 to just get it to compile. No difference. I also found this post which claims removing "pinMode(RFM95_RST, OUTPUT);" from the sketch makes it work. Not for me. Also, adafruit_support_mike has some advice about increasing the delay, which doesn't work for me either.

Edit #2 for 7/15: I swapped the two breakouts and lo and behold, I got a message that init() actually worked and it said it was sending message #0, but it appeared to be frozen. I then uploaded the RX version of the sketch with the same pin assignments (without changing anything on the breadboard), and it was back to "RFM69 radio init failed". Then I felt really stupid and reuploaded the TX version, and it's back to "RFM69 radio init failed" as well. Switched the breakouts back, and fail fail fail. Everything fails. Hey, just for fun, here's a snapshot my breadboard when it accidentally didn't fail.

20190715_114842 (1).jpg
20190715_114842 (1).jpg (82.67 KiB) Viewed 384 times

highlifelight
 
Posts: 8
Joined: Fri Jul 12, 2019 12:48 pm

Re: RFM69HCW on Arduino Uno Not Initialising

by adafruit_support_carter on Mon Jul 15, 2019 1:55 pm

You shouldn't need to change the wiring or the example code from what is shown. Wire per here:
https://learn.adafruit.com/adafruit-rfm ... ino-wiring
Download the library:
https://learn.adafruit.com/adafruit-rfm ... xample-9-4
and run the RadioHead69_RawDemo_TX demo:
https://learn.adafruit.com/adafruit-rfm ... e-code-9-8
and should get:
Screenshot from 2019-07-15 10-51-43.png
Screenshot from 2019-07-15 10-51-43.png (34 KiB) Viewed 382 times


If that still does not work, it may be connection related. Post another photo that better shows the soldering job on the header pins.

adafruit_support_carter
 
Posts: 15889
Joined: Tue Nov 29, 2016 2:45 pm

Re: RFM69HCW on Arduino Uno Not Initialising

by highlifelight on Mon Jul 15, 2019 2:15 pm

Thank you for reading and responding to my post. I followed the instructions exactly. The jumpers are identical to the linked diagram, and I ran the RadioHead69_RawDemo_TX demo sketch. This is the output.
Code: Select all | TOGGLE FULL SIZE
13:06:45.693 -> Feather RFM69 TX Test!
13:06:45.693 ->
13:06:45.793 -> RFM69 radio init failed

I'll admit my soldering is poor, but there are no bridges and from what I can tell, there is good contact. These are the best pictures I could take with my phone, I apologize that they're a little blurry.

20190715_130051.jpg
20190715_130051.jpg (562.58 KiB) Viewed 381 times
20190715_125958.jpg
20190715_125958.jpg (611.69 KiB) Viewed 381 times

highlifelight
 
Posts: 8
Joined: Fri Jul 12, 2019 12:48 pm

Re: RFM69HCW on Arduino Uno Not Initialising

by adafruit_support_carter on Mon Jul 15, 2019 2:24 pm

It might be worth trying to touch up the soldering. It looks like maybe there's a chance they are not wetted out enough on the breakout pads.
https://learn.adafruit.com/adafruit-gui ... n-problems

I just wired one up to an UNO and tested everything. That's how I got the serial monitor output above. So it doesn't seem like there are any software issues.

adafruit_support_carter
 
Posts: 15889
Joined: Tue Nov 29, 2016 2:45 pm

Re: RFM69HCW on Arduino Uno Not Initialising

by highlifelight on Mon Jul 15, 2019 3:00 pm

Okay, thank you, I will try to clean it up tonight and will report back.

highlifelight
 
Posts: 8
Joined: Fri Jul 12, 2019 12:48 pm

Re: RFM69HCW on Arduino Uno Not Initialising

by adafruit_support_carter on Mon Jul 15, 2019 3:03 pm

OK, and also revert back to the wiring shown in the guide and the un-modified example sketch.

adafruit_support_carter
 
Posts: 15889
Joined: Tue Nov 29, 2016 2:45 pm

Re: RFM69HCW on Arduino Uno Not Initialising

by highlifelight on Thu Jul 18, 2019 9:18 am

Sorry for the delay - I did as you asked (my setup is identical to the diagram, save using the ground on the other side) and my results have not changed. I have a multimeter here, do you have any advice on how I should proceed? My brain hurts.

highlifelight
 
Posts: 8
Joined: Fri Jul 12, 2019 12:48 pm

Re: RFM69HCW on Arduino Uno Not Initialising

by adafruit_support_carter on Thu Jul 18, 2019 12:44 pm

Post a photo of the new setup showing all the wiring connections.

Are you still getting the "RFM69 radio init failed" message?

adafruit_support_carter
 
Posts: 15889
Joined: Tue Nov 29, 2016 2:45 pm

Re: RFM69HCW on Arduino Uno Not Initialising

by highlifelight on Thu Jul 18, 2019 1:29 pm

Yes, it's the same message. I wicked off and resoldered or just added solder to any of the joints that looked dodgy on both of my breakouts but both still fail.
Code: Select all | TOGGLE FULL SIZE
12:22:41.660 -> Feather RFM69 TX Test!
12:22:41.660 ->
12:22:41.759 -> RFM69 radio init failed
Attachments
7-18.jpg
7-18.jpg (106.01 KiB) Viewed 313 times

highlifelight
 
Posts: 8
Joined: Fri Jul 12, 2019 12:48 pm

Re: RFM69HCW on Arduino Uno Not Initialising

by adafruit_support_carter on Thu Jul 18, 2019 2:24 pm

Try running this sketch and post the output you get on the serial monitor:
Code: Select all | TOGGLE FULL SIZE
#include <SPI.h>

#define RFM69_CS      4
#define RFM69_RST     2
#define RH_RF69_REG_10_VERSION  0x10
#define RH_SPI_WRITE_MASK       0x80

void setup() {
  Serial.begin(115200);
  while (!Serial);
  Serial.println("RFM69 Test!");

  SPI.begin();
 
  pinMode(RFM69_RST, OUTPUT);
  digitalWrite(RFM69_RST, LOW);
  pinMode(RFM69_CS, OUTPUT);
  digitalWrite(RFM69_CS, LOW);

  // manual reset
  digitalWrite(RFM69_RST, HIGH);
  delay(10);
  digitalWrite(RFM69_RST, LOW);
  delay(10);

  // get info
  digitalWrite(RFM69_CS, LOW);
  SPI.transfer(RH_RF69_REG_10_VERSION & ~RH_SPI_WRITE_MASK);
  uint8_t result = SPI.transfer(0x00);
  digitalWrite(RFM69_CS, HIGH);

  Serial.print("result = "); Serial.println(result);

}

void loop() {
}

adafruit_support_carter
 
Posts: 15889
Joined: Tue Nov 29, 2016 2:45 pm

Re: RFM69HCW on Arduino Uno Not Initialising

by highlifelight on Thu Jul 18, 2019 2:53 pm

Breakout #1
Code: Select all | TOGGLE FULL SIZE
13:47:56.028 -> RFM69 Test!
13:47:56.028 -> result = 0
13:48:05.898 -> RFM69 Test!
13:48:05.898 -> result = 0

Breakout #2
Code: Select all | TOGGLE FULL SIZE
13:48:43.483 -> RFM69 Test!
13:48:43.483 -> result = 0
13:48:56.710 -> RFM69 Test!
13:48:56.710 -> result = 0

highlifelight
 
Posts: 8
Joined: Fri Jul 12, 2019 12:48 pm

Re: RFM69HCW on Arduino Uno Not Initialising

by adafruit_support_carter on Thu Jul 18, 2019 5:26 pm

Bummer. 0 for both. This really seems to indicate some kind of wiring or other connection issue. Your wiring looks OK pin-wise. Maybe it's still the soldering? Can you post a good close up of current soldering on both of the breakouts.

adafruit_support_carter
 
Posts: 15889
Joined: Tue Nov 29, 2016 2:45 pm

Re: RFM69HCW on Arduino Uno Not Initialising

by highlifelight on Wed Jul 24, 2019 12:20 am

adafruit_support_carter wrote:Bummer. 0 for both. This really seems to indicate some kind of wiring or other connection issue. Your wiring looks OK pin-wise. Maybe it's still the soldering? Can you post a good close up of current soldering on both of the breakouts.


I took the time tonight and desoldered and removed the pins entirely. I took pictures of the process, but it probably doesn't matter. I resoldered new pins being very careful to do a cleaner job and to cover the pads entirely (although I hadn't cleaned off the flux when I took the picture). Still:
Code: Select all | TOGGLE FULL SIZE
23:06:53.861 -> RFM69 Test!
23:06:53.861 -> result = 0

I'm just so exhausted with this. What else is there even to try?
Attachments
20190723_231121.jpg
20190723_231121.jpg (88.24 KiB) Viewed 250 times

highlifelight
 
Posts: 8
Joined: Fri Jul 12, 2019 12:48 pm

Re: RFM69HCW on Arduino Uno Not Initialising

by adafruit2 on Thu Jul 25, 2019 6:10 pm

ok please setup one uno with the RFM69
use one color wire at a time. use red for power, black for ground, etc. don't have two wires with the same color. use only square-end jumpers, dont use the rubber-end jumpers
after you've wired it up, post another photo top down so we can clearly see the wiring.

adafruit2
Site Admin
 
Posts: 19221
Joined: Fri Mar 11, 2005 7:36 pm

Please be positive and constructive with your questions and comments.