Author Topic: Trying to get RFM12B to talk to RFM69CW [SOLVED]  (Read 2844 times)

bnovaz

  • NewMember
  • *
  • Posts: 3
Trying to get RFM12B to talk to RFM69CW [SOLVED]
« on: June 18, 2014, 08:15:39 PM »
I’ve been attempting to get an RFM69CW node to talk to an RFM12B node using these libraries (https://github.com/aanon4/RFM69 - https://github.com/aanon4/RFM12B) with no luck.

The nodes are an RFM69CW or RFM12B transmitter connected to a clone 3.3v 8 mhz pro-mini mounted on a board that I had fabricated at Elecrow (nice boards up to 5x5 in any color 10 for $9.90).  I wanted to learn how to design and build my own boards.  The transceivers are connected in the standard Moteino fashion (SPI, int on D2, SS on D10). 

The home built RFM12B node communicates OK with my other Moteinos (RFM12B) using the above library, but I can’t get the RFM69 node to talk to my other Moteinos or the RFM12B node I built.

I loaded the Jeelabs RF12_demo app (it supports RFM69) on my RFM12 and RFM69 home build nodes and they can communicate in both directions with each other with no problem – so I know the HW is functional.

Sorry for the long winded explanation, but I wanted to get the details out.

Any ideas or suggestions for getting this working?
« Last Edit: June 19, 2014, 02:58:41 PM by Felix »

Felix

  • Administrator
  • Hero Member
  • *****
  • Posts: 6866
  • Country: us
    • LowPowerLab
Re: Trying to get RFM12B to talk to RFM69CW
« Reply #1 on: June 18, 2014, 09:19:14 PM »
Have you seen this blog post about this very topic?
http://lowpowerlab.com/blog/2013/12/18/can-rfm12b-talk-to-rfm69/

bnovaz

  • NewMember
  • *
  • Posts: 3
Re: Trying to get RFM12B to talk to RFM69CW
« Reply #2 on: June 19, 2014, 10:37:23 AM »
Hi Felix - Thanks for the reply.  Yes, I've been over and over that thread.  Specifically, I've tried using the Struct_receive example on the RFM69 side and the Struct_send_node example on the RFM12 side (and vice versa).  Other than setting the transmission freq (433mhz) and serial baud rate, the sketches are unmodified.  I just can't get it to work - I feel that I'm missing something - perhaps something to do with bitrate?   I've also tried disabling the encryption.

Felix

  • Administrator
  • Hero Member
  • *****
  • Posts: 6866
  • Country: us
    • LowPowerLab
Re: Trying to get RFM12B to talk to RFM69CW
« Reply #3 on: June 19, 2014, 10:55:14 AM »
I wish I had an epiphany right now. The sketches I provided should work with timw's libraries.
You should definitely not use encryption.
Do you have a lot of RFM12B nodes? Is that why you're trying this backwards compatibility?
I think RFM12b was great but I see it as a legacy product right now. It still works great for who doesn't care about bells and whistles. If you have a LOT of RFM12B stuff you could implement a gateway for that portion of your network, which can relay the data onto the RFM69 network (ie a gateway with a 12B and a RFM69 to pass on the data to your main RFM69 gateway).

bnovaz

  • NewMember
  • *
  • Posts: 3
Re: Trying to get RFM12B to talk to RFM69CW
« Reply #4 on: June 19, 2014, 01:56:34 PM »
Hi Felix - Success!!

Just a stupid mistake on my part.  When I downloaded the new libraries, I renamed the directory with the old RFM12B libraries to RFM12B_old.  When I compiled the examples from the new libraries, the Arduino IDE was still using the code in the RFMB_old library even though I restarted the Arduino IDE many times.  I resolved it by completely removing the RFM12B_old library from the Arduino directory tree.  I haven't completed all of my testing yet, but I can now get the RFM69 node to talk to the RFM12 node - Yeah!

You suggestion about completely switching over to RFM69's is something that I've been thinking about.  Do you see any issues with retrofitting my existing Moteino's by replacing the RFM12B with an RFM69CW?

Thanks for your help.  -Bob

Felix

  • Administrator
  • Hero Member
  • *****
  • Posts: 6866
  • Country: us
    • LowPowerLab
Re: Trying to get RFM12B to talk to RFM69CW
« Reply #5 on: June 19, 2014, 02:58:28 PM »
Yeah no kidding, i've done that once myself and I was going crazy for 2 days wondering why changing some functions did not have any effect, literally going crazy thinking all the radios in a batch are bad... funny thing was I also renamed the other lib to "..._old" haha :D

You can certainly replace/upgrade RFM12Bs to RFM69CW since it's the same pinout. If you got Moteinos it's easier to desolder the side with fewer pins and use something like a razor to wedge between the PCB and each pin as you desolder, then mode to the side with more solder connections. Or just use hot air if you got it.
Then of course switch/upgrade your code to use the RFM69 library instead of the RFM12B lib.