This project emerged as part of a need to control several 120 VAC loads with an Arduino. I have a small garden at home and due to the unavailability of certain plant varieties at my local nursery and the relatively short growing season we have in central Illinois, I occasionally have the need to start seeds indoors. As I often have to be away from home for several days at a stretch, I envisioned building an Arduino-controlled system that could automatically monitor/adjust soil temperature and moisture, and provide artificial lighting control while I’m not there. After amassing a lot of associated parts, I quickly realized that this project wasn’t going to come together in time to start this year’s seedlings. So, I went ahead and started my seeds “old school” and broke the assembly down in to several sub-projects that I could easily assemble, test and integrate over the next year. So, here’s part 1.
IMPORTANT NOTE: This project involves wiring and components that carry household mains voltages. If handled improperly, pain, injury or even death may result. If you are not knowledgeable, experienced and comfortable working with line power, please seek assistance from someone so qualified.
Step 1: Parts & Tools
I was going to buy some 5VDC/120VAC relays and wire them up, but found the Grove modules were a very inexpensive alternative that included all the supporting components and a status LED, all on a mountable PCB.
The HDPE material is commonly sold in the kitchenware department as a cutting board. The other plastic pieces are pretty generic and entirely up you and what you may have on hand. I just happened to have some this tan-colored plastic sheet lying around. You could just as easily use some thin plywood from a craft or hobby shop or other similar plastic material. The clear faceplate material came from a big piece of Plexiglas I salvaged off the front of a projection TV someone was throwing away. I chose clear so I could see the status LEDs (and it looks cooler to see the components and wires), but you could also opt just to cover over any holes that might be left open in the case with a solid material.
Parts I used:
- 1- 6-Socket Power Strip
- #16 stranded hookup wire
- 3- Grove “Relay Twig” Modules
- 1/4" HDPE material
- 1/16" Plastic Sheet
- 1/16” Clear Plexiglas Sheet
- Rubber Grommet Male Header Strip
- Misc Wires /Connectors / Heat Shrink
- Misc Small Screws / Washers (#2)
Tools you will need:
- Dremel Cutting Wheel and/or Metal Nibbler
- Fine Metal File
- Portable Drill and Drill Bits
- Wire Stripper
- Soldering Iron / Solder
- Small Saw or other tool to cut the plastic parts (I used a bandsaw)
Step 2: Construction
I started by completely disassembling the power strip. There were a number of metal tabs and slots that held the back of the case in place. It seems there’s always one that takes a bit of extra fiddling to release.
Once open, it was relatively easy to remove the outlet assemblies and remove the wiring that was installed in the push-in connectors by depressing the quick release tabs. It looked like I could easily fit three of the relay modules in the space previously occupied by two of the outlets. As it turned out, it was a pretty close fit due to the little mounting tabs on the PCBs. This arrangement allowed me to use the 4 remaining positions with one always-on socket and three others controlled by the installed relays.
For the case mods, I just joined the sides of the two existing outlet holes with a line to make them square and began removing the extra metal. I found my nibbler tool wasn’t able to reach into the corners very well, but I managed to use it to get the opening roughed out and finished it by grinding and filing the remainder down to the line I had drawn. I drilled a hole between the two outlets and installed a rubber grommet to protect the control wires as they exit through the case.
Cutting the plastic pieces was a matter of some TLAR measuring and a few trial fittings and adjustments. The clear face plate is held in place against the case by the HDPE strips which are secured to the side of the case with small screws from outside. The three relay assemblies are screwed to the inner plastic shelf, using some nylon washers to provide some clearance for the solder side of the PCBs. The shelf is then screwed to the HDPE strips on the inside. The inner shelf has an oblong hole under each of the terminal screw strips to allow the two 120VAC wires to pass down to each of the outlets.
Step 3: Wiring
I found that #16 stranded wire was the absolute largest gauge what would fit inside the terminal strip holes. I would highly recommend installing the wires BEFORE mounting the relays.
The sets of sockets on each of the two remaining outlet assemblies were joined by a metal bar on each side. In order to power each one separately, it was necessary to remove the bar on the hot (black) side of each piece. This was easily accomplished by carefully cutting though the material with a Dremel cutoff wheel. The neutral (white) side can be left alone as they all need to remain interconnected. With the sockets mounted back in the case, you can make all the necessary connections. Since the push-in connectors are designed for solid wire, you will need to make the stranded wire “solid” by stripping off the correct amount of insulation and heavily tinning the ends with solder.
Each Grove relay assembly came with an 8” 4-conductor ribbon cable. Only the Black (GND), Red (VCC) and Yellow (SIG) are used to control the relays. I routed the cables down the side and cut the ends off to the appropriate lengths so that everything fit together. The three GND and VCC were wires were each ganged together along with their respective wire for the external connector. Each of the SIG wires connects to an individual wire on the external plug.
I searched for some time to find a really elegant way to make a plug-in for the relay controls, but came up empty handed. I ended up just using some stranded wire salvaged from a PC power supply soldered to a 5-pin section of male header strip. I fashioned a molded housing for the header out of Sugru. It’s not the prettiest, but is actually quite sturdy and works well with a breadboard.