denglend / decode345

Honeywell 345 Mhz decoding
MIT License
133 stars 17 forks source link

Suggestions for other receiver #2

Open SevenW opened 7 years ago

SevenW commented 7 years ago

I read your wiki/blog. As future step in stead of the CC1101 you could also use the very popular RFM69. In the jeelabs eco system there are various OOK decoders. It might be worthwhile to take a look there.

Here is one implementation of a RFM69 OOK reciever; https://github.com/SevenW/embapps/tree/master/ArduinoRFM69

denglend commented 7 years ago

Thanks for the tip. Google seems to indicate that the RFM69 is in a similar situation to the CC1101 -- in theory it supports frequencies down to 315 MHz, but the versions I see for sale all specifically advertise 433 MHz or 915 MHz. Do you have any experience with whether those versions will successfully tune to other frequencies?

SevenW commented 7 years ago

They radio chip itself supports the wide range of frequencies, just as the CC1101, however, the modules that are for sale have antenna circuits that are tuned to the specific frequencies. This is no different with CC1101 modules! If you buy a CC1101 for 433MHz, you better not try 868 or 915 with it.

I suggested RFM69, because it has a much wider support in the arduino and related worlds. Both through lowpower labs, and jeelabs. I suggested Jeelabs because there is extensive work done on OOK reception, including SW that can pick up the signal and run it through multiple decoders in parallel so that you can receive OOK signals of different brands with one single receiver.

I can help you implementing a Jeelabs type OOK decoder for this specif Honeywell node if you like.

denglend commented 7 years ago

Thanks for the offer of assistance, but I'll end up going with whichever device I can find a breakout board for that I can tune to 345. So far that's neither the CC1101 nor the RFM69.

SevenW commented 7 years ago

No problem. 345MHz is rare in the world of cheap radio devices. 315MHz can be found if you search really well. You could try a 315MHz module and see how sensitive it is at 345MHz. On CC1101 and RFM69 you can always program the desired frequency. You have a fair chance. For a quick test you could get yourself a $2.50 433MHz module and test your luck. Of course only if you can't source a 345MHz module.

esdad697 commented 7 years ago

Erwan's blog http://labalec.fr/erwan/?p=497 says the frequency can be set. Not sure which board he is using. His code seems to let the frequency be set (though not sure if only certain preset values are supported.) There are some on Amazon as well as http://www.elechouse.com/elechouse/index.php?main_page=product_info&cPath=90_177_92&products_id=568.

Do you think it is worth trying?

denglend commented 7 years ago

@esdad697 - thanks. That purchase link is a nice find. There's a v2 as well at: http://www.elechouse.com/elechouse/index.php?main_page=product_info&cPath=90_92&products_id=802

esdad697 commented 7 years ago

Here is a $15 cc1101 on Amazon: https://www.amazon.com/forum/-/Tx3Q3BOH80WKMM8/ref=ask_dp_dpmw_al_hza?asin=B00NPZ3YUA

Sounds like it can be set to 345 MHz, but will have an antenna issue. It is not clear if setting this frequency requires Smart RF Studio.

I'm not sure how to tune the antenna circuit or obtain a 345 MHz antenna, but it is worth trying unmodified to see how it works.

denglend commented 7 years ago

I'll give it shot.

esdad697 commented 7 years ago

Could breakdown steps to:

  1. Wire CC1101 (CC1101 to SparkFun Raspberry Pi breakout board mappings: S1-MIS1, S0-MIS0, CSN-CE0, SCK-SCK, G02-G25, G00-G24)
  2. Enable SPI on RPi - https://learn.sparkfun.com/tutorials/raspberry-pi-spi-and-i2c-tutorial
  3. Install SPI driver spi-bcm2835 http://www.airspayce.com/mikem/bcm2835/
  4. Configure and read from CC1101 (like https://github.com/f4exb/picc1101)
  5. Update decoder with https://github.com/denglend/decode345/issues/2

The CC1101 gets hot.

I've only done the first two steps, though overall process does not seem too bad. I don't know how to test it. If I get stuck in Step 4, I might be a simple SPI device like LED so can file SparkFun tutorial.