mikaelpatel / Cosa

An Object-Oriented Platform for Arduino/AVR
https://mikaelpatel.github.io/Cosa/
GNU Lesser General Public License v2.1
339 stars 76 forks source link

Questions about RFM69HW 433mhz usage #186

Closed kmorris81 closed 10 years ago

kmorris81 commented 10 years ago

I purchased a few of the 433mhz RFM69HW modules: http://www.ebay.com/itm/RFM69HW-433Mhz-20dBm-HopeRF-Wireless-Transceiver-RFM69HW-433S2-/171329729831

While I wait for them to arrive, I have a few questions:

  1. Will I just need to modify line 47 in RFM69.cpp to be: #define FRF_SETTING FRF_434_MHZ ? or will I need other changes as well?
  2. I see that this transceiver also supports: "get_input_power_level()" Is this feature fully implemented in Cosa for RFM69? If so, then the CosaWirelessReceiver example could display the "rssi" value for the RFM69 like it does the CC1101, right?
  3. I also noticed the following High-Power related comment: "// Fix: High power level setting for RFM69HW". Does that mean it has been accomplished by the code below it, or is that an outstanding "to do"?

Thanks!

mikaelpatel commented 10 years ago

Some quick answers to your questions.

  1. Yes, that is basically the change needed in the configuration. But if you check the LowPowerLab driver you can verify if more is needed. I only have 868 devices right now so I cannot verify that for you.
  2. Yes the "get_input_power_level()" member function is available but not enabled in the example sketch. There is a commit with an update that fixes this (and the implementation) https://github.com/mikaelpatel/Cosa/commit/ed1780a71008852bb15fb7c92071bbd8c80705ad.
  3. Yes, the high power levels for the HW version is not implemented yet. Hope to get around to that soon. Needs a new state variable and some extra tweaking ;-). A comment with "Fix:" in Cosa means that this is work to be done (or a short-cut that needs to be removed). The actual change, i.e., when fixed is commented in the git commit log.
  4. There are a few new example sketches for the Wireless interface and RFM69/Moteino. I am using them for the testing of this board. See CosaWirelessPing/Pong. These are also for testing acknowledgement/retransmission algorithms. This is also on the to-do-list.

I have completed the first iteration of support for LowPowerLab Moteino. Unfortunately I only ordered two boards and burned one during some testing. Right now I am using a dual voltage Nano clone and a spare RFM69 for the testing.

Cheers!

BW: Please remember to only use 3V3 logic level on these devices. They are not 5V tolerant as the NRF24L01+ modules. They will otherwise break very easy. Also be very careful when soldering as a too long heating or high temperature of the pins around the ANT connection may affect the SMD components. They are very close.

kmorris81 commented 10 years ago

Excellent. Thanks for the quick and thorough response! Once the boards arrive, and I get the header pins soldered in, I will let you know of any success. I plan to run these transceivers with a Tiny84 powered by 3.3v to keep things simple.

I'm glad to hear that I'm not the only one around here that fries hardware every now and then :-). As a token of my appreciation for all of the help you have provided me over the past year, is there any hardware (or anything else for that matter) that I can send your way?

mikaelpatel commented 10 years ago

I think this might interest you; http://www.anarduino.com/?cid=9. A much cheaper and better solution than Moteino as the boards have both RTC and a very large and fast flash (on SPI). I just ordered a couple 868 Mhz RFM69 version boards to play with.

BW: I did some updates to the CC1101 device driver. There were some issues with performance and robustness when sending and then directly receiving messages (as in the Ping/Pong example).

I appreciate all the testing you have done. And the great feedback. Thanks!

kmorris81 commented 10 years ago

Thanks for the tip on the Anarduino devices especially since I may need to grab a few in the near future. Unfortunately, I failed to realize that the RFM69 units I purchased are 2mm spacing and no simple/cheap breakout boards are really available. A year or so ago, I purchased several XBee radios and needed breakout boards since they are also 2mm spacing. Fortunately, I found these XBee breakout boards on the cheap. I was hoping that something similar would be available for the RFM69 radios, but I have yet to find any. I'm also surprised that no 2mm solderless breadboards exist...

mikaelpatel commented 10 years ago

The cheapest/simplest solution I found (as I was in the same situation just lately) was to buy the LowPowerLab Moteino board without RF modules and solder them myself. I think I actually burnt one of the devices when soldering. Anyway it broke very quickly. https://lowpowerlab.com/shop/index.php?_route_=moteino-r4

I have also tested simply soldering wires directly. It works by nothing that I would use in a permanent setup. Ok for my driver prototyping.

Here is another solution. I have not tested it but it seems like a possible solution. The antenna contact is great. http://modtronicsaustralia.com/shop/rfm69hw-breakout-board-bare-pcb-rf-wireless-module/

Cheers!