What is a good method to measure battery life of a Meshtastic node?

I have a handful of different battery powered meshtastic nodes that I’d like to test to see how long they would last as repeaters or sensor nodes, but I’m unsure exactly how to test this. The only option I can figure is to enable range testing on the device I want to test, grab the last sequence count from a different node, and calculate how long it took to die. However, there are a couple problems with this method, most notably, I’m pretty sure range test mode and repeater or sensor mode are quite different, so I would have to assume that they handle power usage differently. Also, I don’t really have a good way of recording the sequence count aside from just leaving a t-beam plugged in and hoping I don’t get any other messages after the last sequence count is received.
I feel like I must be missing something here because this method is a major pain and I know quite a few people have done battery life tests before. What methods have others used in the past to measure battery life of nodes?

2 similar things to try.

with a fully charged battery (or battery removed if you can power directly over usb?).
https://www.amazon.com/MakerHawk-3-7-30V-Voltage-Multimeter-Voltmeter/dp/B07FMQZVW2/
plug into one of these and let it run. this will give you instantaneous power as well as the energy consumed over time. then you can math it into the mWh for an 18650, or any other battery. Some 18650s have better rate/capacity curves for low power devices.

the other: remove the battery and use an adjustable power supply on the battery terminals. this bypasses the usb and charging circuit which may consume some power even when battery is fully charged.
without a dc power meter like https://www.amazon.com/HTRC-Precision-Analyzer-Battery-Voltage/dp/B06XPVKY13 it will be difficult to tell what the energy consumption is. you would have to try to take an average off the screen as the numbers change, which will be hard with a radio which consumes power in short pulses.

In both cases, you dont have to figure out when the device stopped working. rather, extrapolate to when it would.
does range test use more power than regular use? that may throw the result.

another would be the old timelapse camera app and clock. see when the lights go out.

The USB tester is a good idea, I actually have one of those but hadn’t considered using it. I’ll play around with that, thanks for the suggestion.

Don’t test directly from the USB tester. That circuitry will often use quite a bit more power. Try cutting a USB cable and attaching battery connector to one end, then connecting that to the battery input on your board. That way, you’re feeding it the same way a battery would. I’ve done that before with this type of device: USB C Power Meter Tester, Eversame USB Voltmeter Ammeter Load Tester,USB Voltage and Current Monitor with Braided USB C to USB C Cable(1.5Ft/50cm)-Test USB Cable Speed - PD 2.0/3.0 QC 2.0/3.0/4.0 : Amazon.ca: Tools & Home Improvement and an old USB-C cable.

You can use this method to determine how much power your device consumes. Then you can calculate how long a particular battery will last.

Note that simulating real-world conditions is hard because everyone’s network is different. Power consumption is heavily impacted by idle draw and how frequently the radio transmits. The idle draw is easy to figure out. The transmission draw is much harder because it changes based on how many nodes you have in your mesh and other things. The article is intended to set a standard testing protocol that would result in values that can be shared and trusted by others.

Also note, I recently discovered the RAK Wireless boards consume more power when powered by USB or solar then when they are powered from battery (all else being equal). We think this is caused by the charger chip being active and/or the LEDs. Since discovering this I’ve been powering my solar nodes directly through the battery connector using an external solar charging module.

I just snowmachined (snowmobile) up to my node and pulled logs from the victron solar controller. With clouds and some old frozen lead acid packs, its been on and off but i noticed some groupings in the data which were interesting.

12-13 days ago i plugged in my t beam (green line at x = 13). Prior to that there were some days of pretty consistent draw of 200Wh per day. After the green line there is another group around 260Wh per day.
That would put the consumption at about 60Wh per day or 2.5W average. (60Wh/24h=2.5W)

This is a very coarse measurement but wondering if its remotely close to your values. This node is also on the main mqtt server which is probably taking more power.

All the outliers are days that the station ran out of power during the night. Going to get some AGM packs this week as they do better in these temps.

Yeah that’s what I’m planning to do, the tester that I have conveniently came with a set of alligator clips.

That’s a very useful article, I’ll definitely have to play around with various settings while I’m testing power draw.

okay well I think that was noise in the data unless I had some serious inefficacy stack up. I just ran a quick test with the USB meter and came up with 0.5W per the following:
image

screen was on for part of that so it should average down over time.

1 Like