Double Micro (nano) Ampere meter
-
A very low current (double) stand alone uA meter to tune MySensors battery nodes..

I de' MySensor'ized this project because it is more usefull on the workbench for measuring the very low currents of MySensors battery nodes. I own several Ampere meters including the famous µCurrent. Many of these are not accurate enough or need a lot of wiring and additional equipment (µCurrent). I just wanted something simple and stand alone
Using the low cost HX711 weight scale 24 bit AD converter a sub 10€ cost double µA meter was born. Some characteristics to fit MySensors projects:- range channel A: ± 20mA 5½-6½ digit µA
- range channel B: ±40mA 5½-6½ digit µA
- burden voltage 1µV/1µA (internal resistance 1Ω)
- 'patch panel' on the connectors.
- easy calibration.
In comparison with the µCurrent and a standard multimeter in uA range

The internals:

Although it cannot compare in accuracy with the µCurrent (in combination with a good multimeter) it is more than useable and accurate to do some serious MySensors tuning.
If there is some interest I will try to publish a decent built instruction on Openhardware.io.
If there is some interest I will try to publish a decent built instruction on Openhardware.io.
I'm interested.
-
If there is some interest I will try to publish a decent built instruction on Openhardware.io.
I'm interested.
@NeverDie said in Double Micro (nano) Ampere meter:
I'm interested.
In case you haven't seen it, it's here :
https://forum.mysensors.org/topic/6723/micro-nano-ampere-meter-double/5 -
@NeverDie said in Double Micro (nano) Ampere meter:
I'm interested.
In case you haven't seen it, it's here :
https://forum.mysensors.org/topic/6723/micro-nano-ampere-meter-double/5@Nca78 said in Double Micro (nano) Ampere meter:
@NeverDie said in Double Micro (nano) Ampere meter:
I'm interested.
In case you haven't seen it, it's here :
https://forum.mysensors.org/topic/6723/micro-nano-ampere-meter-double/5Thanks! It looks a bit complicated to me. I've used one of these breakout boards (https://www.amazon.com/gp/product/B00OPVBEQO/ref=oh_aui_search_detailpage?ie=UTF8&psc=1) as a way to measure 24-bit voltage on capacitors, and it works really well. As you can perhaps tell from the photo:

the chip is fairly simple to use. What I especially liked is that there was already a demo arduino sketch for interfacing with it. That was a real time saver. If I were to build something, I might try that first, if only because it seems like it might be easier (though perhaps, in part, because I'm already comfortable with it). Would using it in conjunction with a sense resistor be all it would take to make an accurate, high resolution current sensor? -
@Nca78 said in Double Micro (nano) Ampere meter:
@NeverDie said in Double Micro (nano) Ampere meter:
I'm interested.
In case you haven't seen it, it's here :
https://forum.mysensors.org/topic/6723/micro-nano-ampere-meter-double/5Thanks! It looks a bit complicated to me. I've used one of these breakout boards (https://www.amazon.com/gp/product/B00OPVBEQO/ref=oh_aui_search_detailpage?ie=UTF8&psc=1) as a way to measure 24-bit voltage on capacitors, and it works really well. As you can perhaps tell from the photo:

the chip is fairly simple to use. What I especially liked is that there was already a demo arduino sketch for interfacing with it. That was a real time saver. If I were to build something, I might try that first, if only because it seems like it might be easier (though perhaps, in part, because I'm already comfortable with it). Would using it in conjunction with a sense resistor be all it would take to make an accurate, high resolution current sensor? -
@Nca78 said in Double Micro (nano) Ampere meter:
@NeverDie said in Double Micro (nano) Ampere meter:
I'm interested.
In case you haven't seen it, it's here :
https://forum.mysensors.org/topic/6723/micro-nano-ampere-meter-double/5Thanks! It looks a bit complicated to me. I've used one of these breakout boards (https://www.amazon.com/gp/product/B00OPVBEQO/ref=oh_aui_search_detailpage?ie=UTF8&psc=1) as a way to measure 24-bit voltage on capacitors, and it works really well. As you can perhaps tell from the photo:

the chip is fairly simple to use. What I especially liked is that there was already a demo arduino sketch for interfacing with it. That was a real time saver. If I were to build something, I might try that first, if only because it seems like it might be easier (though perhaps, in part, because I'm already comfortable with it). Would using it in conjunction with a sense resistor be all it would take to make an accurate, high resolution current sensor?@NeverDie said in Double Micro (nano) Ampere meter:
It looks a bit complicated to me
btw. Which part looks complicated? It's just a few resistors attached to an ADC board (and sketch ready) I am curious on how you can build something simpler with the ADS1220 (which seems to be a better ADC if you are able to find it somewhere ;-))
-
It sounds like I was mistaken then. In my quick read I thought that I had to implement the entire schematic, not just add a couple of resistors to a pre-made breakout board. I suppose if the schematic were more of a block diagram, that might be clearer for other future readers to quickly grasp, or maybe it's just me.
Why would the ADS1220 be a better ADC? I really haven't looked into doing a comparison. I bought the breakout board that I pictured above from Amazon , but I see that it's out of stock now. I believe the company which made it is in India. I seem to recall that it's open source, so there's always that I suppose. I didn't mind ringing the till for the maker: it was all pre-made, it did what I needed at the time (which was watching in real-time the voltage leakage from supercapacitors that I was testing), it was available with free Amazon Prime delivery, and I wanted something sooner rather than later. So, it fit what I needed at the time. Most of those reasons relate to rapid availability though rather than technical reasons.
-
OK, I received an HX711 and have partially hooked it up. I have it connected to an UNO and powered by the 3.3v pin. I also have AWI's sketch running on the UNO. I haven't yet connected a OLED screen to it, so at the moment I'm just looking at the output of the serial consol, which gives a running output of "average" and "spread". I have 10mv connected between A+ and A- to just to see what it will do.
Looking at the code, it looks as though the button (A2) is normally pulled high. Is the button supposed to be connected to GND through a 330 ohm resistor? I don't see any schematic with a button on it.
-
OK, I received an HX711 and have partially hooked it up. I have it connected to an UNO and powered by the 3.3v pin. I also have AWI's sketch running on the UNO. I haven't yet connected a OLED screen to it, so at the moment I'm just looking at the output of the serial consol, which gives a running output of "average" and "spread". I have 10mv connected between A+ and A- to just to see what it will do.
Looking at the code, it looks as though the button (A2) is normally pulled high. Is the button supposed to be connected to GND through a 330 ohm resistor? I don't see any schematic with a button on it.
-
@NeverDie the sketch uses the internal pullup:
Button myBtn(buttonPin, true, true, 40); // Declare the button( pin, pullup, invert, debounce ms)@mfalkvidd said in Double Micro (nano) Ampere meter:
@NeverDie the sketch uses the internal pullup:
Button myBtn(buttonPin, true, true, 40); // Declare the button( pin, pullup, invert, debounce ms)Right. So that's one leg of the button. Is the other leg connected to GND through a 330ohm resistor? Or....?
-
@mfalkvidd said in Double Micro (nano) Ampere meter:
@NeverDie the sketch uses the internal pullup:
Button myBtn(buttonPin, true, true, 40); // Declare the button( pin, pullup, invert, debounce ms)Right. So that's one leg of the button. Is the other leg connected to GND through a 330ohm resistor? Or....?
-
Thanks. I'll do that then.
Regardless, I must be doing something wrong, because I'm feeding it 9.9mv (see photo)

across A+ and A- from a voltage divider powered by 2xAA batteries, but it's showing zero current. Shouldn't it be showing 9900ua instead?[I alsoi tried sending it 99uv instead, but it still reads zero]
-
Thanks. I'll do that then.
Regardless, I must be doing something wrong, because I'm feeding it 9.9mv (see photo)

across A+ and A- from a voltage divider powered by 2xAA batteries, but it's showing zero current. Shouldn't it be showing 9900ua instead?[I alsoi tried sending it 99uv instead, but it still reads zero]
So, here it is with the button and with 99uv applied.

Button mechanics works fine, but it keeps registering zero as the uA. Isn't it 1uv=1ua? So, shouldn't it be reading 99ua? Or am I (quite probably) misunderstanding something?The HX711 I'm using is a clone of the Sparkfun one.
-
I added in the 0.1uF cap across A+ and A-, but that made no difference.
What's odd is that if I run the sparkfun scale code, it does in fact detect voltage (and converts it to pounds). Hmm.. Sounds like maybe it's not reading the right datapins. I'll check that next.
-
Yup. That was my error. I had initially wired it using the sparkfun directions for the initial test. Sparkfun wired the DAT and CLK pins to different arduino pins. When I made the change to AWI's selections, it now works. :)
-
By the way, there was a similar project posted on the eevblog by a guy named quantumvolt:
https://www.eevblog.com/forum/projects/ppmgeek!-5-5-digit-dvm-volt-ref-cal-(for-arduino-or-any-uc-w-spi)/
One of the things that they eventually noticed and talked about was that quite a bit of noise came in over the usb. Not sure if that applies only to usb's connected to computers for power, or whether it may apply to other sources as well. Anyhow, just thought I'd mention it in case anyone here is using that and wants to drop their noise level.Also, although I'm no expert, I would guess this project might (?) benefit from a PCB implementation, because, in general, it seems like the shorter the connections, the lower the noise. Of course, please just take that as constructive feedback. No criticism intended. I think it may also be why Dave Jones chose to power his uCurrent from a button cell directly attached to his PCB: he wanted the power lines to be as short as possible.
Thanks again for posting the project!
-
@AWI do you think that logging reading to SD card could be a useful addition? (in case you want to monitor something for a longer time)
@gohan said in Double Micro (nano) Ampere meter:
@AWI do you think that logging reading to SD card could be a useful addition? (in case you want to monitor something for a longer time)
Yeah, but then you'd probably also want an RTC to go with it. There are already shields for both of those, though, so it's probably better to keep the project simple. Since I'm interested in solar charging current, I'll probably monitor wirelessly and do my logging that way. It's more fun to see stuff graphed in real time. :)
-
The refresh rate is really slow: a lot slower than 100ms described in
https://www.openhardware.io/view/380/Micro-nano-ampere-meter-double
where in the introduction it says, "~100ms update rate to be able to 'see' power fluctuations (like radio communication)". What do I need to change to get that?It matters less, but response to button pushes is also very slow. Has anyone devised a fix for that?
Rather than re-invent the wheel, I thought I'd ask first.
I did try increasing the sample rate by solder bridging the "RATE" solder pads on the back:

I'm not sure, but that may have helped speed things up a bit. It's still very slow updating though: nearly 7 seconds between screen updates.Anyhow, current consumption during normal operation is something < 1.5mA, according to the datasheet. So, for my purposes (admittedly a bit different than the OP's), I need to get it powered up, take a reading, and then power down again as quickly as possible. The datasheet says the powerdown drain for the HX711 is <1ua.
-
I have the same problem, I don't have a jumper on my HX711 board so I soldered directly the pin of the IC with a small wire.
It has clearly improved things, but it's still slow so I will try to reduce number of samples and if it's not enough switch to TTP223 touch buttons in toggle mode, one to reset, one to change screen, so I will never miss a press. -
The refresh rate is really slow: a lot slower than 100ms described in
https://www.openhardware.io/view/380/Micro-nano-ampere-meter-double
where in the introduction it says, "~100ms update rate to be able to 'see' power fluctuations (like radio communication)". What do I need to change to get that?It matters less, but response to button pushes is also very slow. Has anyone devised a fix for that?
Rather than re-invent the wheel, I thought I'd ask first.
I did try increasing the sample rate by solder bridging the "RATE" solder pads on the back:

I'm not sure, but that may have helped speed things up a bit. It's still very slow updating though: nearly 7 seconds between screen updates.Anyhow, current consumption during normal operation is something < 1.5mA, according to the datasheet. So, for my purposes (admittedly a bit different than the OP's), I need to get it powered up, take a reading, and then power down again as quickly as possible. The datasheet says the powerdown drain for the HX711 is <1ua.
@NeverDie @Nca78 a lot going on here :grinning: Nice to see that my afternoon project sparked creativity.
I started this to be a datalogger for remote monitoring of MySensors node power consumption. During the run changed my mind and it turned out to be this which fits my needs. But all options are still open..
The converter has a max sample rate of 80Hz which was default on the board I used. I balanced accuracy and readability by applying sample averaging. This averages out much of the noise from USB source etc.
The sparkfun boards are probably designed a little different and don't have the shield which helps to keep out noise.
To increase speed you can change the amount of averaging (number of readings per sample)
To get a better response for the button the way is to go for non blocking (averaging) readings of the Adc. The library is very basic so that would be the best place to start.