Hack a wireless home automation system to be USB controlled using two AVR microcontrollers!

Check out the video! The system is really more responsive, but the browser on my phone is slow.

If you like this, you may also like this:


Step 1: Skills ans tools

There are two ways of hacking an RF remote to be controlled by a computer or a microcontroller.

The lame way:
Soldering wires onto the button pads on the remote and hooking them up to an Arduino.

The cool way:
Most RF remotes have a separate module for transmitting data. This device usually has a VCC and a GND line and a DATA line. You can easily transmit your own wireless data by connecting a microcontroller to the DATA line.

However, in order to transmit something that the wireless receivers can understand, you first have to figure out how the wireless data is formatted and transmitted.

To do this hack you will need a logic analyzer and optionally an oscilloscope.

I use the Logic from Saleae. This is an awesome tool and I have done a few reverse engineering hacks using this device!

Check it out at http://www.saleae.com/logic/

It costs 149 USD but it's a good investment for any hacker!

You also need to be familiar and comfortable with microcontrollers and programming in C.
<p>You made nice project</p><p>I made simple Do it yourself in 10 minutes bluetooth controlled home automation</p><p><a href="http://www.instructables.com/id/Take-control-of-your-house-in-10-Minutes/" rel="nofollow">http://www.instructables.com/id/Take-control-of-your-house-in-10-Minutes/</a></p>
<p>wow, checksum calculation. my head just exploded. </p>
just few minute back, I post a thread http://www.edaboard.com/thread305974.html#post1309531 <br>, but now I found very useful page(this).. <br>I have not read whole article but ,, it seems very useful for me.. <br>thanks to author of this post.. chr <br>
G8 Work........
G8 Work
Bought a 5-pack of these things (US 120V version) and will hopefully have them next week! I really hope they have the separate radio chip like yours, this is such a clean way to do it (opposed to the soldering wires on button pads). If it has a standard 433MHz transmitter I might buy one just so I can keep the remote and still have PC/network/phone control. <br> <br>Ultimate goal is a home automation system driven off a RasPi, with web interface, timers, sensors, etc.
Link so i can buy some too please
They didn't work out too well, ended up buying some from Walmart (Holiday Time brand, seasonal only) that were 3 to a pack (bought 2 packs). The 5-pack only had toggle buttons, they didn't have different commands for on and off. I did the same method of reverse engineering the protocol and used an ATTiny to reproduce the signals. I did my own Instructable about it as well.
Hi! <br>Like your tutorial very much. <br> <br>It inspired me to put togather an instructable too. <br>http://www.instructables.com/id/Wireless-power-outlets-for-home-automation-using-A/ <br> <br> <br>Can one use voltage doubler for RF transmitter using 2 capacitors and 2 diodes. <br>http://www.reuk.co.uk/Making-Voltage-Doublers-and-Multipliers.htm <br>Sorry, I put your picture about voltage booster in the description. Is it OK or should I remove it. <br>
very good, its great ! <br>fred
i love how thorough your explanations are !<br>well done <br>you made me interested in taking my circuits course again ha ha
cool thanks
i have absolutely no experience with building things like this but im starting my studies in electrical engineering soon and i want to build something cool like this very badly. any thoughts or suggestions?
This deserves to win the contest =)
I was an EE student and this instructable was fantastic. It was an excellent walkthrough that teaches you the theory of digital circuits through a custom/cool and practical implementation. Awesome Logic analyzer btw, gonna pick up one of those for myself perhaps to replace the one i hate. Incredibly well done and really invaluable. This is like a digital control programming class and a lab in ONE instructable. Just amazing.<br><br>Nice Oscilloscope btw, looks like an expensive one. Sparkfun has a really nice usb oscilloscope just like the logic analyzer you used/referenced. Both of them are at the bottom of their tools page. http://www.sparkfun.com/categories/177. I'd love to see this done with some of the xbee units they sell, but doing it this way might be cheaper.
Thanks for the excellent explanaition and idea!!!!<br>its nice that you explain the logic and order.<br>keep it up!
This is an awesome inscrutable. It has helped me a great deal with digital circuits. Thanks again.
Some projects are, I'm sure, quite inscrutable--this doesn't sound too bad. ;-)
This is exactly why this site and DIY is AWSOME!
Hello Everyone!<br><br>Realy nice prodjekt :-)<br><br>There is a product from a swedish company www.telldus.se named tellstick. <br>I have run this i 4 years with linux and windows and itś very easy to set up and work like a charm<br>there is also many 3part application.<br><br>/Andreas
This is simply AMAZING!<br>This is what i was looking for! V-USB + RF+Android !<br>How can i say.....you're the best (:<br>Best instructable I've ever read!
Very very nice. Cool beginners guide to reverse engineering. Thanks for that!
Isn't the zener diode reverse connected in the schematic?<br>We want the diode to reverse bias, not to forward bias.
Very Well Done!!!! -Lee
This is pretty cool. For my A-Level electronics project I reverse engineered an RGB LED remote that I got cheap of eBay, found the protocol much like you, and used it to control my own coloured lights which decoded the protocol! Cool
Don't turn it on, take it apart!..<br><br>I assume you are also suffering from an eevblog overdose? :)<br><br>nice writeup, cheers!
I've published a similar project some weeks ago (but more protocols and pcb available):<br>http://www.maltepoeggel.de/?site=usbfunk
Nice work!
That's COOL!<br>I understand you can control the mcu by PC through USB, but how do you control the PC by cell phone?!?! By blue tooth?! wifi? How?!!?
Another option is to purchase the encoder ICs that most of these remote systems are based on. I picked up several encoders and decoders on ebay for a similar project. Had to order from China, though. <br> <br>They are usually PT2262 (encoder) and PT2272(decoder) <br> <br>I think this is awesome that you decoded the protocol, however. Lower parts count, yeah!
Excellent! I have fairly rudimentary electronics knowledge, so this was practically a tutorial on using a logic analyzer and reverse engineering communication protocols. Not just a quick how-to, but something that I can take as a beginning step for doing similar stuff. Thanks!
Nice: here is something similar that i did<br>http://linux-utils.blogspot.com/2011/01/arduino-remote-control-outlet.html<br>the kit was cheap (15&euro;, 2 RF outlets modules and the remote control)
Very nice project! I must say, aside from the general awesomeness of doing this I was almost knocked of my chair by the magnet wire work. Holy cow.. <br> <br>Been considering doing the same exact thing myself with the wireless equipment I have at home. Different brand (nobrand crap), but same type of remote, distinct rf-transmitter board, and same wallwart'ish plugs. Sadly, my electronics skill is far below yours, so the project never got of the ground. <br> <br>Quick question: could this be done with an arduino? I have captured the signals from IR-remotes (with the help of a 38KHz demodulator) and played them back to control my old tv so I do grasp the general concepts of how this is done. However, I don't feel I can splurge on a logic analyzer that I'll likely have fairly limited use for right now. Can an arduino (atmega168) sample an input quickly enough to capture the DATA-pin? <br> <br>Also (and this is embarrasing), how would I hook it up? Considering my remote is powered by a 3.3V battery, could I simply desolder the rf-transmitter sub-board, power the remaining remote off of my arduino's 3.3V port and connect the DATA-line directly to an arduino input..? <br> <br>Thanks for the awesome project, and thanks in advance for any advice you can give an aspiring electronics noob! =D
to do the thing with an rfm12 module, take a look at ethersex. there even is another libra set on the compatibility list, so i think it should work out of the box.<br>http://ethersex.de/index.php/RFM12_ASK
coool...<br>can we have the pcb layout??
There is no pcb layout, it is soldered on a protoboard..
Only now I see that you published .sch too... sorry.<br>very funny project.<br>I've made it in the lame way (16f627 + transistors), but it should be fine to control a lot of other receiver.<br>tnx a lot
Very impressive!
This is so BOSS! its awesome!

About This Instructable


259 favorites


Bio: I like microcontrollers and LEDs :D
More by chr: Reverse Engineering: RGB LED Bulb with IR remote Reverse engineering: USB controlled home automation hack LED Cube 8x8x8
Add instructable to: