Wednesday, December 17, 2014

Decoding 433.92 Mhz devices with RTL_433.

I've been doing a bit of playing with merbanan's rtl_433, which uses the rtl_sdr code to decode signals from 433 Mhz ISM devices that mostly use On-Off-Keying.

So far I've been working on decoding
  • Lacrosse TX-7 temperature and humidity sensors, same protocol as TX-3, TX-6.
  • DSC wireless security contacts (door/windows, smoke and carbon monoxide detectors)
There is a lot I've learned from playing with the devices using rtl_433 and digging into the code.  I need to write it up because there are almost no instructions.

I've posted the LaCrosse code to github and submitted a pull request to merbanan/rtl_433.

I'm successfully decoding the DSC contacts using a separate Python script that parses the debug output from rtl_433.  I need to write a new pulse decoder for rtl_433 in order to handle the DSC protocol as it's a little different than other pulse or distance coded signals. It doesn't send anything for a zero (0) bit, so there can be long periods (up to 8 bit slots) of no signal.

For more info, contact me if I haven't posted here or to github.

Update: 2015-01-11, merbanan processed a whole bunch of pull requests, including mine, so the LaCrosse TX-7 support is now in the main merbanan/rtl_433 github repository.

I haven't pushed any code for the DSC sensors yet. I have to decide how I want to do the decoder and call back yet.  Anything I push will probably be only be in rct/rtl_433 for a while as it is likely to be experimental.

No comments: