Before you start...

You should only attempt this project if you are comfortable and competant working with high voltage electricity, electronics and computers. Once the project is complete it is enclosed and there are no exposed high voltages. However, you must only work on the project when it's not plugged in and never ever attempt to test, measure, open, or probe the circuitboards while they are attached to a wall socket. If something isn't working: stop, remove it from the wall power, then open it up and examine. Yes it takes a few more minutes but its a lot safer!

Your safety is your own responsibility, including proper use of equipment and safety gear, and determining whether you have adequate skill and experience. Power tools, electricity, and other resources used for this project are dangerous, unless used properly and with adequate precautions, including safety gear. Some illustrative photos do not depict safety precautions or equipment, in order to show the project steps more clearly. This projects is not intended for use by children.

Use of the instructions and suggestions is at your own risk. Adafruit Industries LLC, disclaims all responsibility for any resulting damage, injury, or expense. It is your responsibility to make sure that your activities comply with applicable laws.

OK, if you agree we can move on!


Transmitter partslist

For each outlet you want to monitor, you'll need:

Image Name Description Datasheet Distributor Qty

adafruit_products_finishedwatt.jpg

Kill-a-Watt "Off the shelf" model P4400 power monitor

Some people in the forum have gotten this to work with an EZ type but we don't suggest it. Try to go with a 'classic' Kill-a-Watt.
P3 Kill-a-watt

Lots! Also check hardware/electronics stores.

1

adafruit_products_done.jpg

done.jpg

Adafruit XBee Adapter I'll be using my own design for the XBee breakout/carrier board but you can use nearly any kind as long as you replicate any missing parts such as the3.3V supply and LEDs. Webpage Adafruit 1

adafruit_products_xbeemodule_MED.jpg

XBee module We'll be using the XBee "series 1" point-to-multipoint 802.15.4 modules with a chip antenna part # XB24-ACI-001. They're inexpensive and work great. This project most likely won't work with any other version of the XBee, and certainly not any of the 'high power' Pro types! Adafruit 1

adafruit_products_1n4001_t.jpg

D3 1N4001 diode. Any power diode should work fine. Heck, even a 1n4148 or 1n914 should be OK. But 1N4001 is suggested and is in the kit. Generic 1N4001 Digikey

Mouser

1

adafruit_products_3mmredled.jpg

D2 Large diffused LED, for easy viewing. The kit comes with green. 1

adafruit_products_100uf-10v_t.jpg

C2 220uF, 4V or higher 
(photo shows 100uF)

Generic

Digikey

Mouser

1

adafruit_products_2200uf_t.jpg

2200uf_t.jpg

C4 10,000uF capacitor (wow!) / 6.3V (photo shows a mere 2200uF)

Try to get 16mm diameter, 25mm long.

Generic

Digikey

Mouser

1

adafruit_products_BrownBlackOrangeGold.gif

R4 R6 10K 1/4W 1% resistor (brown black black red gold) or10K

1/4W 5% resistor (brown black orange gold)

1% is preferred but 5% is OK
Generic Mouser

Digikey

2

adafruit_products_YellowVioletRedGold.gif

R3 R5 4.7K 1/4W 1% resistor (yellow violet black brown gold), or

4.7K 1/4W 5% resistor (yellow violet red gold)

1% is preferred but 5% is OK.

Generic

Mouser

Digikey

2

adafruit_products_10condwire.jpg

10condwire.jpg

Ribbon cable, or other flexible wire, at least 6 conductors, about 6" long. Generic Ribbon Digikey 6"

adafruit_products_heatshrink_t.jpg

heatshrink_t.jpg

Heat shrink! A couple inches of 1/8" and 3/32" each. Generic
It will run you about $50-$60 for each outlet.


Transmitter Schematic

We'll be making this:

The XBee radio does all of the hard work, it listens on two analog input ports (AD0 and AD4) for voltage and current data. Then it transmits that information wirelessly to the host computer receiver XBee. There are a few we have to engineer around to make it Work:

  1. We want to run the XBee off the Kill-a-Watt's internal power supply. However it's current limited and won't provide 50mA in a burst when the XBee transmits. We solve this by adding a simple 'rechargable battery' in the form of a really large capacitor C4.
  2. The Kill-a-Watt runs at 5V but XBees can only run at 3.3V so we have a voltage regulator IC1 and two capacitors two stabilize the 3.3V supply, C1 and C2.
  3. The XBee will transmit every few seconds, even while the capacitor is charging. This means that it will keep draining the capacitor, resetting, and trying again, basically freaking out while the power supply is still building. We prevent this by adding another fairly big capacitor C3 on the reset line. This slows down the XBee, delaying the startup by a few seconds & keeps the XBee from starting up till we have solid power.
  4. The XBee analog sensors run at 3.3V but the Kill-a-Watt sensors run at 5V. We use simple voltage dividers R3/R4 and R5/R6 to reduce the analog signal down to a reasonable level.

Step 3. Assemble and create the transmitter

Now the fun part! We'll filet, stuff and reassemble the Kill-a-Watt with a radio inside!

adafruit_products_parts.jpg

parts.jpg

Open up your kit and get out the parts for the transmitter. Remember that we'll be using most of but not all of an XBee adapter kit. The two small LEDs, the 74HC125N chip, a 10K and 1K resistor are not used and you should put them aside for a future project so you don't accidentally use them here.

Check to make sure you've got everything you need. The only thing not shown here is the XBee radio and Kill-a-Watt.

adafruit_products_pcbready.jpg

Place the PCB of adapter kit and get ready to solder by heating up your soldering iron, and preparing your hand tools.

adafruit_products_psup.jpg

psup.jpg

We'll start by soldering in the 3.3V regulator, which is identical to the standard XBee Adapter kit you made in the receiver instructions. Don't forget to check the polarity of C2 and that IC1 is in the right way. Then solder and clip the three components.

adafruit_products_psup_solder.jpg

adafruit_products_bigled.jpg

bigled.jpg

Now we will veer from the standard xbee adapter instructions and add a much larger LED on the ASC line so that we can easily see it blinking when it's in the Kill-a-Watt. Make sure to watch for the LED polarity, because a backwards LED will make debugging very difficult. The longer lead goes in the + marked solder hole.

Give the LED about half an inch of space beyond the end of the PCB as shown. Also solder in the matching 1K resistor R2.

adafruit_products_header.jpg

header.jpg

Solder in the two 2mm 10pin female headers in the adapter kit. Be careful with the solder so that you don't accidentally fill the female header. Use a sparing amount to make sure there's a connection but it's not overflowing.

adafruit_products_part1done.jpg

adafruit_products_ribbonclip.jpg

ribbonclip.jpg

Now it's time to prepare the wires we need for the next few stops. Use your diagonal cutters to notch off the brown, red, orange and yellow wires from the end of the rainbow ribbon cable in the kit.

Then tear off the four wires from the rest of the cable.

adafruit_products_ribbontear.jpg

ribbontear.jpg

adafruit_products_ribbonpieces.jpg

ribbonpieces.jpg

Do the same for the black and white wires and the single green wire. Then cut the green wire so it's only about 1.5" long. You should now have 3 strips of wire, one 6" with 4 conductors, one 6" with 2 conductors and one 1.5" with 1 conductor.

adafruit_products_ribbonstrip.jpg

Use wirestrippers to strip the ends of the green wire, 1/4" from the ends.

Then tin the green wire by heating the ends of the wire and applying a little solder to bind together the stranded wire.

adafruit_products_greentin.jpg

adafruit_products_minigreen.jpg

adafruit_products_vrefjumper.jpg

vrefjumper.jpg

Use the green wire to create a jumper between the VREF pin, 7th from the top on the right and the VCC pin on the top left.

Double check to make sure you get this right! Then solder it in place. This will set the reference point of the analog converter to 3.3V.

adafruit_products_4ribbonsplit_t.jpg

Go back to the 4-piece ribbon cable. Split the ends with the diagonal cutter, then strip and tin all 8 ends.

adafruit_products_4ribbontinned.jpg

adafruit_products_4.7ktin.jpg

Put a 4.7K resistor in a vise or holder, then clip one end off and tin it just like the wires.

adafruit_products_47kwire.jpg

Cut a 1/2" piece of 1/16" heat shrink and slip it onto the yellow wire, making sure there's clearence between the heatshrink and the end of the wire. Then solder the yellow wire to the 4.7k resistor.

adafruit_products_47kheat_t.jpg

47kheat_t.jpg

Do the same for the orange wire and the other 4.7K resistor. Use a heat source (a heat gun or hair drier is perfect) to shrink the heatshrink over the soldered wire/resistor joint. Then bend the resistor 90degrees and clip the other end of the 4.7k resistors

adafruit_products_10kplace.jpg

Now we will build the voltage divider. Take the two 10K resistors and connect them as shown. One goes from AD0 and one from AD4. Both then connect to ground. Conveniently, the chip we are not using had grounded pins so we can 'reuse' those pins.

adafruit_products_47kpiggy.jpg

47kpiggy.jpg

Now comes the tricky part. We want to connect the other end of the 4.7K resistor to the AD0 pin but the 10K reisistor is already there. Use your soldering iron to melt a blob of solder onto the top of the 10K resistor and then piggyback the 4.7K resistor by soldering to the top of the 10K resistor.

Solder the orange wire to the AD0 pin, the yellow to the AD4.

adafruit_products_poweradapt.jpg

The other two wires are for carrying power. The red wire should be soldered to the +5V pin on the bottom of the adapter PCB. The brown wire to theGND pin.

adafruit_products_resetcapplace.jpg

We're nearly done with the adapter soldering. Lastly is the 220uF reset capacitor. We'll connect this to the RST pin, 5th from the top on the left. Make sure the long lead is connected to the RST pin and the shorter lead goes to the 4th pin of where the chip would go. Check the photo on the left to make sure you've got it in right.

The capacitor wont fit underneat the XBee module so give it some lead length so that the cylindrical bulk is next to the 3.3V regulator.

adafruit_products_47kpiggy2.jpg

adafruit_products_back.jpg

For reference, here is twhat the back should look like.

adafruit_products_xbeeon.jpg

Here is what it should look like with the XBee modem installed. Make sure the pins on the XBee line up with the header.

adafruit_products_bigcap.jpg

Now replace the PCB with the huge capacitor.

adafruit_products_bfcclip.jpg

Clip the long leads down. You'll need to use the "-" stripe to keep track of which pin is negative and which is positive.

Tin both leads with solder.

adafruit_products_bfctin.jpg

adafruit_products_bfcpos.jpg

Solder the other end of the red ribbon wire (that goes to +5V on the XBee adapter) to the positive pin of the capacitor.

Then solder the brown wire (that goes to GND on the XBee adapter) to the negative pin.

adafruit_products_bfcpower.jpg

adafruit_products_bfcdiode.jpg

bfcdiode.jpg

Clip the cathode lead down of the 1N4001 diode, that's the end with the white stripe on it. Solder the diode so that the white-stripe side is connected to the positive pin of the big capacitor.

adafruit_products_bwwire.jpg

Take the black and white ribbon from earlier. Split, strip and tin the four ends. Cut a 1" piece of 1/8" heatshrink and slip it onto the white wire. Slip a 1/2" piece of 1/16" heat shrink onto the black wire.

adafruit_products_whitesolder.jpg

Clip the other end of the diode (the side without a white stripe) and solder the white wire to it. Solder the black wire to the negative pin of the big capacitor.

 

Now shrink the heatshrink so that the capacitor leads and diode are covered.

adafruit_products_bfcgnd.jpg

adafruit_products_tronix.jpg

All right, here is what you should have, an adapter with two sensor lines (orange and yellow) hanging off and two power lines (red and brown) that are connected to the big capacitor. Then there are two black&white wires connected to the capacitor, the white one through a diode.

adafruit_products_openkaw.jpg

openkaw.jpg

Now it's time to open the Kill-a-Watt! There are only 3 screws that hold it together, and they are found on the back.

Be gentle when opening as there is a delicate ribbon cable inside. Carefully pry off the back cover.

adafruit_products_halved.jpg

adafruit_products_drill.jpg

Use a 3/8 drill bit to make a hole near the right corner of the case back. This is what the LED will stick out of. (Ignore the white tape and #4, this is a recycled kill-a-watt :)

adafruit_products_drilled.jpg

adafruit_products_chipsolder.jpg

chipsolder.jpg

Now find the LM2902N chip. This is a quad op-amp that senses the power line usage. We're going to piggy-back right on top of it, and borrow the ground, 5V power and 2 sensor outputs!

With your soldering iron, melt a bit of solder on pin 1, 4, 11 and 14 of the chip. Make sure you have the chip oriented correctly, the notch indicates where pins 1 and 14 are.

adafruit_products_newkaw.jpg

newkaw.jpg

Some newer Kill-a-Watts have a smaller version of this 2902 chip. Unfortunately it seems this is recent and there's no way to tell which one you have before you open it. The smaller version is basically the same but it's a little tougher to solder to. (Thanks to mrtz for the photos of this new version)

adafruit_products_chipsolder2.jpg

Solder the white wire (5V to the XBee) to pin 4. Solder the black wire (ground) to pin 11 directly across.

adafruit_products_chipsolder3.jpg

Now solder the yellow wire to pin 1 and the orange wire to pin 14.

adafruit_products_chipsoldered.jpg

adafruit_products_chipsolderedside.jpg

adafruit_products_kawsoicsolder.jpg

adafruit_products_taped.jpg

taped.jpg

Use two small pieces of sticky foam and stick them onto the back of the case.

Then place the XBee adapter and capacitor on the tape so that the LED sticks out of the hole drilled earlier.

adafruit_products_stuck.jpg

adafruit_products_kawsoicfull.jpg

adafruit_products_tucked.jpg

Tuck the excess ribbon cable out of the way so that they are not near the 120V connections which could make them go poof.

adafruit_products_filet.jpg

adafruit_products_reassemble.jpg

reassemble.jpg

Close it up and plug it in.

You'll notice it's a bit finicky for a few seconds as the big capacitor charges up. The display may not come up for 15-30 seconds, and it may fade in and out at first. The numbers may also be wrong for a bit as it powers up. Within about 30 seconds, you should see the display stabilize and the indicator LED blinking every 2 seconds!

adafruit_products_finishedwatt.jpg

adafruit_products_terminaljunk.gif

terminaljunk.gif

Go back to your computer, plug the receiver XBee into the USB adapter and make sure it has the latest firmware uploaded and set it to the same PAN ID as the transmitters. You will see the RSSI LED (red LED) light up. That means you have a good link!

Open up the Terminal in X-CTU (or another terminal program) and connect at 9600 baud 8N1 parity and you'll see a lot of nonsense. What's important is that a new chunk of nonsense gets printed out once every 2 seconds, indicating a packet of data has been received.

The hardware is done. Good work!

This guide was first published on Dec 03, 2014. It was last updated on Dec 03, 2014.

This page (Transmitter) was last updated on Feb 14, 2013.

Text editor powered by tinymce.