Sent a new board off a week ago, a power meter based on the INA219, a high side current meter from TI. I have been wanting a way to log power consumption to my computer for a while, and wanted a more complete solution (and single board) than a dev board + current sensor. It seemed the usual hobby suspects sold analog and I2C current sensors, but not a good USB datalogger to go with it.

I put 3 on a board with 4 current set resistors (.01, .1, 1, and 10 ohm). The 1 and 10 ohm resistors are switched using a jumper. This gives the board range from tens of amps down to microamps (but not at same time). It can log on all three channels. It would be nice to get some kind of mux and use 1 meter and autorange the current, but I didn’t think of an easy way to do that, and just wanted a board. Might look at how a Fluke meter does it for a future revision.
Interesting features of the meter are USB isolation and a speaker. The measurement side is isolated from the micro-controller and USB, which allows some protection if the device under test has a massive ground spike, or is reverse connected. The uC is bus powered with an LDO, the measurement side requires an external power supply.
The speaker will allow a tone to be plated proportional to the current, which might be a nice hands off debugging feature. Even though the main purpose of the meter is power logging, having some feedback when a load is changing or cut out might be nice.
I’m using an atxmega32a4u for the controller. I think I will use this chip series from now on, the advantages are just too much. Fewer parts, more peripherals, twice as fast. I started writing the code for the DAC, it looks like I can get DMA working such that no CPU intervention will be required to drive the DAC, everything can be event driven.
I probably will just have the board stream ascii data at first, I don’t feel like building a command interface at the moment. Adding jumpers to mute the speaker and boot to boot-loader should be good enough.