Cyber Monday may be behind us, but there are always some hackable, inexpensive electronics to be had. [Stephen’s] wireless Android/Arduino outlet hack may be the perfect holiday project on the cheap, especially considering you can once again snag the right remote controlled outlets from Home Depot. This project is similar to other remote control outlet builds we’ve seen here, but for around $6 per outlet: a tough price to beat.
[Stephen] Frankenstein’d an inexpensive RF device from Amazon into his build, hooking the Arduino up to the 4 pins on the transmitter. The first step was to reverse engineer the communication for the outlet, which was accomplished through some down and dirty Arduino logic analyzing. The final circuit included a standard Arduino Ethernet shield, which [Stephen] hooked up to his router and configured to run as a web server. Most of the code was borrowed from the RC-Switch outlet project, but the protocols from that build are based on US standards and did not quite fit [Stephen’s] needs, so he turned to a similar Instructables project to work out the finer details.
Stick around after the break for a quick video demonstration, then check out another wireless outlet hack for inspiration.
[Via Reddit]
I bought a similar kit a while ago and sniffed the communication using LIRC (linux Infrared Remote Control) by wiring directly into the encoder chip. I was then able to control the power switches from a command line or even from an arbitrary IR remote. I finally abandoned the project because the receivers needed powered 24/7 or they forgot their settings which paired them to the wireless (834 MHz if I recall correctly) remote control and they had to have the button on the front panel pressed to restart the pairing process. As I wanted them hidden behind or in things this was something of a showstopper. But hey, they were cheap, I think about UKP14 for the set of three. I gave them away.
Cool, i made the same thing few months ago (a bit different)
i made a video in German language: https://www.youtube.com/watch?v=UdsQKiIZjMY
my code turns on every wall plug and after 5 secs it turns off again
like this:
SecureCode|KEY|VALUE
0000 A ON
0000 B ON
…
0000 D ON
0001 A ON
0001 B ON
….
1010 C ON
1010 D ON
…
1111 A ON
1111 B ON
…
1111 D ON
(very quick)
after 5 seconds, it repeat all steps with VALUE = OFF
example code
010100100010 = 0101 secure code, 0010 = C, because ABCD(E) 10 = on, 01 = off
Same for Raspberry Pi and Elro (compatible) outlets and receivers:
PowerPi http://raspberrypiguide.de/howtos/powerpi-raspberry-pi-haussteuerung/
A Raspi may be less fun from the hardware hackers point of view, but it is clearly the cheaper and more flexible solution for this problem.
Raspi is more fun from a hardware hackers point of view as you can do so much more with it. Honestly, the guys that poo-poo the pi are simply newbies to hardware hacking.
Totally agree actually. If I were to do this again, I may consider starting with the Pi as the brain. I have 2 Android/Arduino projects running on the same Arduino webserver, I just can’t really put any huge amount of processing power behind anything. But I haven’t hit that limitation yet, and if I do, I have a Pi on my shelf waiting for a project. For this need, either would work. And as someone else pointed out, even a router would have enough processing power to send data out on 1 pin. That’s somewhat more complicated though.
You can make it even simpler:
1 A router running openwrt which has some IOs for LEDs.
2. use such I/O to inject the signal in the radio from the remote.
No need for adruino, ethernet shield, extra radio. A cheap router capable of doing that will be under 20, cheaper than the arduino and it will not need an ethernet connection.
I build a PHP page than be locked into an anroid device.
Just saying.
It’s even better to create a simple webserver and then you can send commands to it using querry strings. This way you can access it both from a custom app or from a browser. Makes it way more versatile. Know I posted it earlier, but anyway maybe someone will find it useful
http://www.youtube.com/watch?v=vKE8SHywZmo
This does in fact run a web server as you described. The Arduino app just provides current status and toggle buttons and acts as a front-end over those URLs. So an IPhone, web browser, etc. could also access the same URLs concurrently, and the Arduino web server will still manage the current state correctly.
I posted a article with the same hack, but run on a custom x86 os, that was written in full asm, including full tcp/ip stack and web server, in 2009.
But it never got on to hackaday.
Full assembly on a custom x86, wow, you must really have needed all the extra processing power to get such a arduous task of turning a light on.
I did this with a rPi https://github.com/charleswolfe/lights
This is a nice project; I like it. One thing I wonder is why not use the original remote? Control the ON/OFF push-buttons from the Arduino using either a transistor per button or a cheap analog switch? Seems it would be cheaper and easier than adding a new RF module, getting the codes etc.
ability to control more than a single receiver set? In multiple locations? As an addition to the normal use of the remote?