14 year-old [Connor Smith] has been busy this holiday season, thinking up ways to improve the lighting situation at home.
A few weeks ago he put together this 3-channel light controller to toggle his parents’ external lights, incorporating an Arduino for control. The Arduino was used to switch the channels on and off at specified intervals in order to create a simple light show on the house’s exterior. Not satisfied with just a few strings of blinky lights, he took his controller back inside for some additional modifications.
He had grown tired of crawling behind the Christmas tree to plug and unplug it every day, and decided to make things easier on himself. He stripped the IR receiver out of an old VCR and interfaced it with the Arduino in his light controller using the IRremote library. After taking a bit of time to decode the values for two infrequently used buttons on his TV remote, he had himself a Christmas tree light switch that he could activate from across the room.
Check out the short video below to see his remote switch in action.
[youtube=http://www.youtube.com/watch?v=ikkrzQtJ1rI&feature=player_embedded&w=470]
wow! nice! i was going to do the same exact thing with the electrical box! except i only had one MOC and Triac from some old electronic junk, so im limited to one strand.
Using a Triac would definitely be quieter than hearing the clicks of the relays. I probably will make one with Triacs and experiment with fading using pulse width modulation. A SCR would also work well.
I think it’s awesome that there are still 14 year olds playing with electricity…looks like the sort of thing I would’ve done when I was that age. It’s also great to see the effort put in to the hand-drawn schematics, refreshing to see folks take pride in documenting their work. I think there are a few changes that I’d make, though:
Cover plate on the outlets: just good practice when working with AC, especially in a spot where there are likely to be dry pine needles and errant tinsel. He mentions in the comments to the article “I plan on putting a cover over it”, not sure I’d even put pictures out there without one.
Snubbing on the relay coils, which was also pointed out in one of the comments. It’s amazing how little coil inductance/current it takes to build up enough transient voltage to fry your buffer transistor (VCE max for a 3904 is 40V). In the absence of a suitable diode, even an R-C snubber should do the trick.
I don’t see any series resistance on the buffer transistors. While this would be fine for FETs, he’s using bipolars so there’s significant current on the control line (base). The base-drive pins connect straight to the Arduino, and on the Arduino they connect straight to the microcontroller. The current through the base of the 2N3904s is limited by RDSon of the Arduino pins, which is likely causing overstress on the pins and possibly the 3904s.
Thanks for the kind words! In the first schematic, I forgot to add the transistors and diodes. In the second I forgot the current limiting resistors at the base of each transistor (as well as the diodes). I am currently working on an eagle schematic that includes all of these. I plan on re-doing the whole project to make it look more professional. Thanks again!
Here’s my 12 channel one with IR or Bluetooth.
I’m 22 though, this is impressive for 14.
http://www.youtube.com/watch?v=lHtWobCT-PE
Looks great! I would control mine with an iphone, but I don’t have one. Not even a smartphone. Although, getting an iphone and developing apps is on my list of things to do this up-coming summer.
I used AppInventor for Android. It’s crazy easy graphical programming (puzzle pieces).
And one more thing to Conner…you can’t use PWM on ac to dim the lights, you need to detect zero cross, wait a bit, then turn triacs on. There’s many ways to do it.
i had 2 MOC and 1 triac. i managed to blow up the first MOC, which had zero crossing, so now im stuck with non PWM blinking :(.
these schemes are based on a MOC3011(no ZC) but should work with a pin compatible, ZC enabled MOC like the MOC3041.
for a resistive load(LED christmas lights): http://www.tradeofic.com/uploadfile/ic-circuit/2009713212017176.gif
and for inductive load: http://www.seekic.com/uploadfile/ic-circuit/200972152114212.gif
forgot to say above, once you have a ZC MOC with a TRIAC, just use a Arduino fade example and your done; fading Christmas lights!
This is very cool. I am also 14 and i made a 8 channle relay board for my outdoor christmas lights. Last year i had my christmas tree with 4 separate strings of lights plugged into a ssr board that i made. I think the idea of a tv remote controll is cool, i would have never had that idea