# Battery life and IMP002 current consumption

I would like to better estimate the battery life time of our product using IMP002. I want to better understand the current consumption of IMP002. So during which circumstances is the current typical and when is it maximal? What is IMP002 current at start up? How long does it take? What is IMP002 current when connecting to WiFi, and how long does it take?
What is the current when no Wifi is available. Is it 250mA for a minute? What about the current when Wifi is OK, but no connection to internet/IMP agent. I hope someone could elaborate on these questions.

I was just measuring this for the Imp 001 when I read your message

Max trapped at 108.9 mA until the green led cycle starts (about 85 mA average)
72.1 to 78.x mA with green led cycling
61.3 mA with after green led stops cycling
68.2 mA during a code update (granted my code update was very small)

This is for a network reconnect after power cycle.

When the wifi goes down 75mA average (45 to 100 mA) while rescanning. I’m not sure how long that lasts, its been going on for 5 minutes so far

I would assume that a messy blink up would draw 75 mA average (45 to 100 mA cycling) during wifi scan and connect). Anyone with better info please post.

This is Imp001. I would also be interested in the difference to 002 if anyone has those numbers.

oh and in regular sleep its 23 uA…

If you’re seeing 23uA, you’re likely measuring at the input to the april board, which means you’re measuring the DCDC current too.

Where are you measuring these currents?

@jrsikken there’s no real substitute for measuring here. Power taken depends heavily on what your code actually does. Joining wifi and trying to connect to our servers is about the same current as being connected (receiver is on continuously during the process) so in the 70-80mA ish range at 3.3v. Joining wifi and connecting to the server is usually 1-2s, but depends a little on the latency to our servers.

By default it’ll try to connect for a minute, but you can write your own code that will try for longer or shorter periods.

You are right, I’m on the April board not direct to imp power pins. I expect sleep current is a bunch lower direct

FYI I did some current measurements on our board with IMP002 that has the same boost converter and under voltage protection as in Nora reference design. The current is mostly as expected from the datasheet. The powersave feature reduces the current from 80 mA to 30 mA (average). The time to connect to a good Wifi is about 3 seconds. The time to connect to a bad Wi-Fi (through a portable Wifi acces point connected to the shared internet connection of my laptop) was between 15 to 40 seconds and sometimes failed completely. At higher battery voltage (3.4V) the current is lower than at 2.5V but still in the expected range. This is probably related to the boost converter which draws more current at lower voltages. The current during sleep is 9 uA as expected. (Imp002 takes 6uA and other circuits another few uA’s). The current when IMP is running code, but not connected to WiFi is about 5 mA, this is something I didn’t read from the datasheet, but not bad. The current while connecting to WiFi is about 80 mA, and when is connected it reduces to 30 mA (average). When there is no Wifi the current is about 100mA until the Imp snoozes (sleep) after 1 minute. When internet or Wi-Fi gets lost, after initial successful connection, the program stop within roughly a minute and 1 minute later the imp snoozes for 9 minutes.

This gives me a rough feeling about the IMPs current consumption under many different situations. I still would like to measure current consumption when there’s a lot of Wi-Fi interference, but that’s hard because I don’t have the right equipment to measure Wi-Fi signals or to set the interference conditions.

30mA in power save mode seems high; what’s your code doing at that point? We see about 7mA, but it will depend on how busy the wireless network is (as broadcast traffic takes devices out of powersave mode).

Hugo, current actually fluctuated between 9 and 74 mA as I read from my handheld multimeter. The code was actually blinking some LEDs. In another test I measured 5 mA when some code was running, no LEDs, and not sending any data to the cloud. So I believe there was actually no problem.

It does depend on your averaging period; over a 2 second average (what our Agilent 34410 does) we see under 10mA average. How long were you averaging over?

G’day @jrsikken.

I started out measuring current draw with my trusty Fluke 87 DMM and got some good stable readings for low-level current draw but saw some unusual readings when using the min/max and peak min/max functions so, based on prior measurement experience, knew I needed to measure current over time to really understand the current draw environment. I chose the (http://www.bitscope.com) BS10U which, for a pocket 'scope is pretty good value and has performed admirably thus far (it has limitations so read the fine print).

I captured current draw by connecting the DP01A differential active probe to read voltage drop across a 3.2ohm resistor connected in series with the IMP001 and setting the BitScope to trigger on the first leading edge that equated to ~70mA current draw.

The attached files (halve voltage measurements to obtain current draw in mA) reveal the information such a setup can provide; chalk and cheese compared with a DMM. As you can see, power up takes ~3 seconds with numerous pulse transients. Interestingly, the RxTx event captures show the IMP001 draws 2 x 380mA for 680uS prior to receiving at 80mA for 18mS then transmitting at ~250mA for 14mS. These measurements were made in an environment with a single router and ~5 Wi-Fi devices (I don’t think they were doing much at the time).

The “flat top with the peaks” looks like the wifi transmitter calibration (sweeping TX power levels).

Bit surprised it’s not getting to that for a while after powerup though; what code are you running here? Delays in DHCP, DNS and server connection will all happen after the network association has happened, which is after the calibration.

I don’t know where you’re located, but right now in our office we see ~1s connect time from power up. Some of this is being close to our servers (same US coast, at least).