Just wondering;
I’m not an expert, far from it but why reinvent the wheel?
Why use so many peripheral chips when you can save space and money by using for example a reliable PIC18F46J50 or similar which got most of it onboard?
Just drop the “full of nasty surprises” Atmel chip.
Don't say that! ALL chips have nasty surprises. I am a fond PIC user myself, but I have had projects where 5 patch wires were required because several GPIO was an I-only (or USB communication). Kinda annoying when you wire up the symbol saying 'D+/RD4' (or something). This also happened for the oscillator pins, apparently not capable of doing output kinda stuff.
Yeah, should have read the datasheet, but it should be clear from the pin-out and I/O table diagrams what I can use as an I/O and what not.
This also applies to some Altera FPGA's, where it said something like 148I/O pins on the datasheet. But as 10 of them were clock, it's more like '138 I/O, 10 optional I pins'. Unfortunately this project required 140 O's. Too bad the chips were already ordered..
Also, as Dave mentioned in the video, an internal ADC/DAC is nearly not as good as an external one. The Microchip parts are pretty bad at specificying noise, but the ADC used has an SNR of about 72dB there abouts. Considering THD is not an issue, you get about 11.6 effective number of bits. This means oversampling by 2-3x gets you 'noise free' readings (not free, but atleast not much left of it). I don't think an internal ADC can improve on that, in fact.. I've seen internal ADC's dancing around on 10-bits.
Also note that a direct USB connection is not nice, because you don't have an isolated supply any more.
I plan on building my own PC accessible dual power supply, but with some tweaked specs. I think 10.24V out is too low, rather see 18V maximum. I will probably be using a higher specified ADC for the readouts so I can get even more accuracy on current and voltage. Especially the current consumption functionally is neat, as I was designing a device that I approached the other way around (good current measuring with internal supply options).
I don't think the uA range of 10mA may be wide enough, I'd rather get up to 20 - 25mA with a resolution of <1uA. Yes, that's about >20k counts, but a 16-bit ADC + oversampling should cope.
Even more nicely would be to add an 'oscilloscope'-like feature to the PC (so USB communication actually has a good use!) so I can see the power consumption real time. It will require fast ADC's and a lot of post proccessing.
Will have to see how it goes. Especially streaming data to PC, isolated and fast is kinda hard to do. FTDI chips can only run so fast (like 2M-3Mbaud), so may have to resort to a FT232H chip (USB2.0 , up to 12MBaud).
Auto ranging the uCurrent range is only useful when you can also lock it to on/off. If you have a device with a modem drawing 1Amp peaks during transmit, you don't want the PSU to be smart and think "hey I can switch to low current measuring range", but isn't responsive enough on the transients (how fast is checked whether it's not clipping? once every 10ms?)
But I guess this goes far beyond the average user this kit is meant for, as the uA measurement is a nice extra, and the rest of the supply is more than sufficient for someone playing with microcontrollers..