When I searched for a panelmeter which is flexible adaptable to my special project requirements, I was very happy to discover Panel Meter V1 (PM1) from Sigma Zeta Electronics. The hardware uses a good current sense amplifier which is able to amplify shunt currents measured on the high side in common mode up to 36V. The used 12bit ADC has quite a good performance, as well. Until discovering PM1, I wasn't really interested into Arduino systems as I usually do work with larger ARM Cortex controllers and thought of Arduino as toy stuff... ;-). As I didn't want to develop a current/voltage measurement device for my niche application by myself (it wasn't worth the time as I needed it only once), I decided to try PM1 tohether with the Arduino environment.
Well, after receiving the panel meters (I ordered 3, shipping was very fast and without any trouble), I powered one PM up and played a bit around with it. Very soon I was interested if I could tweak the firmware until it fulfilled my custom needs. So I connected a standard Arduino programming cable and started the Arduino IDE... within seconds, I recompiled the project and reprogrammed the PM. Nice start! :-)
After that I immediately added my custom measurement modes which was done within minutes. My PM1 finally performs filtered power calculations including measurement value output to the serial port (which I am logging with a Raspberry Pi).
As I had very much fun with working with the firmware, I began to improve more and nore of the code which lead to a full rewrite of the firmware to get it modular and even more easy customizable for other future projects... ;-) As as I shared the code with the orignal author, it might be possible that he will use some parts of my code for further firmware versions... :-) So... the choice to make PM1 Arduino compatible was a very good idea... it makes it super easy to adapt the device to any custom requirements!
PM1 works reliable since around 2 weeks in my system and shows no problems at all - I am very happy with the result!
NOTE: When integrating PM1, I discovered a serious problem which I need to share here to avoid any frustration: Unfortunately, PM1 requires a support voltage of 9-15V to bring the used analog multiplexer into a linear operation range. I had to add a small stepup voltage converter to generate this voltage from my single 5V supply. At first, I decided to set it to 12V but discovered, that starting at around 9.5V, PM1 creates completely random measurement results. My support voltage is perfectly clean, no noise (check with a lab power supply as well) - so there is some issue here in PM1 (I checked with the other PM1 - same behaviour). So please be sure to use more or less exact 9V, as above 10V ALL of my 3 PM1 produced random measurement values!
Having said that, this is the only issue which needs to be mentioned and which should be fixed in a future revision - best solution would be to get rid of the support voltage completely.
CONCLUSION: PM1 definitely fulfills its promises and I highly recommed it if you do have any custom measurement requirements! Working with it is fun! :-)