Imp002 Current Draw

We’re working with the IMP002s, trying to determine the minimum current requirements for a power supply. I’ve seen it mentioned a few times on the forums that current draw is typically 80mA (or 8mA with PowerSave enabled) with brief spikes of 350-400mA for 4.8ms. Looking at the current on the scope we are certainly seeing performance consistent with that. However, at reasonably regular intervals (circa every minute) with see a burst of 300-400mA for about 15ms. What is the imp doing at this point? I’ve attached a snapshot of it.

Well, the only part of the imp capable of drawing anything like that current is the WiFi transmitter. I can’t explain the exact shape of that plot, but perhaps it had five packets to send, or perhaps it had to do some retries – is your WiFi particularly congested?


As far as I know, this is not something that our code is doing. The five pulses occur together. Wifi is not congested. Sending data doesn’t exhibit a profile like this. All other current consumption for transmission is a succession of sharp peaks with a maximum duty cycle of about 15-20%. This sort of stuff blows our short-term energy budget out of the water, so we’ll need to investigate further.

Additionally, the unit we are testing flips between two ssids. We note that the current-draw signatures for each access point (from different manufacturers) is quite different (only when imp is in powersave mode). They are the same distance (~4m) from the imp and both support 802.11g/n.

That’s a wifi calibration cycle. The wifi chip does it when powered up; it’s doing a transmit cycle and using it to ensure the TSSI circuitry is working right.

It only does it:

  • you’re doing a connect (it happens whenever the wifi chip is powered up)
  • there’s a temperature change (it’ll re-do cal to ensure it’s still correct)
  • at some other opaque interval defined by broadcom

Current will be different based on what modulation scheme the imp is using to talk to the router. Does your router show this? (some do)

Can you describe how the current signatures vary? In powersave mode it will vary a lot depending on broadcast traffic on the network.

Yes, I’ll get some snapshots of these. We’re in between scopes at the moment after one got blown up recently (mistakes were made!). Our work to date has been exclusively with the powersave option off. Switching it on has had a marked effect on uptime for imps. Still early days, but it appears that there’s a trade-off in reliability when seeking the battery saving.

Yep, IEEE PS mode is a regrettably inexact science due to variations in implementation router-side.

What is the minimum time between those 4.8mS @ 400mA pulses? I am trying to figure out if its possible to run an Imp from a 100mA 5V source with a 1F - 5F goldcap and then a buck converter to 3.3V

It depends on how much you’re transmitting. The pulses are more like 250mA in fact (we overspecced significantly), and pulses that length are only going to be seen if you are far enough from the router to have dropped down to 1Mbit 802.11b (ie you are on the edge of coverage).

500mW source is likely a little tight…

it will be transmitting a maximum of 64 bytes every 10 seconds, and can keep its WiFi off (in the 6-8mA mode) in between. a 1.5F goldcap can supply the imp with a second or 2 with 400mA if needed, and recharge in the time between. i’ll let you know how it goes :slight_smile:

The code:
function beep() { server.log("beep"); imp.wakeup(0.5, beep); // schedule the blink function to run again in .5 seconds } beep();

The hardware:
a 1.5F goldcap, charged to 5.2V (bit over spec, i know, but my USB hub has 5.2V) on a sparkfun breakout board

The test:
i charge the cap, disconnect USB then insert the IMP001. (the imp has already run the code at least once before on the same impee)

The result:
it boots, connects to WiFi, keeps blinking green for a while and keeps sending data for a whooping 50 seconds! at which point the voltage on the cap dropped to 2.8V.

resulting in an average power usage of 72mA.

Adding a simple imp.setpowersave(true); gets the time up to almost 400 seconds (6.5 minutes!), and power down to about 9mA average.

and it will be lower when the supply is maintained at ~5V, the green led is disabled and its not connecting to the cloud of the first seconds.

looks good so far!

(note that this is power usage average on a cap dropping from 5.2 to 2.8, then converted down to 3.3V for the imp, so its not the usage of the imp itself)

Supercaps are… amazing…

I recently checked current of IMP003 and saw 450mA peaks with imp.powersave(true) and 250mA peaks with imp.powersave(false). The difference in peaks may because the capacitors in the radio power supply need to be recharged.

In our circuit I designed 6x47uF 0805 ceramics parallel to the CR123 battery to reduce battery peak current during Tx and I hope it will improve battery lifetime (because of battery internal resistance, peak current and voltage drop). I started a battery lifetime test with 2 boards, in 1 board I added a 3300uF electrolytic capacitor. The board with the additional capacitor drained out sooner than the other. I concluded that for CR123 battery lifetime is not increased when more capacitance is added.

That conclusion is probably not totally sound… what was the leakage current on the 3300uF cap? Some of those can be pretty leaky. You should also note that batteries vary unit to unit, sometimes significantly (more so on the non-brand types).

What voltage are your 47uF ceramics? You may be seeing a lot of derating with a constant DC voltage.

The board with additional 3300uF elcap drained the CR123 in 100 hours. The other board drained in 102 hrs. At least there is no significant difference. I havent measured the leakage of the elcap, I dont even have it anymore, so I can’t say much about it.

The voltage rating of the 6x47uF ceramics is 4V. Battery voltage was 3.3 down to 1.6V.

Seems like your ceramics are enough, then. If those are rated at 4v, you’re likely only getting maybe 15-20uF from each one, though.

I thought voltage derating applies to polarized capacitors like elcaps and tantalum. I never read about voltage derating for ceramics.

It’s severe; eg see page 2 “DC bias characteristics”.

This is a 47uF X5R dielectric cap rated at 4v. At 3.3v you’re maybe 65% down, so you are only getting 35% of the rated capacitance (~16uF).

You’re not derating operating voltage, just actual capacitance (unlike eg a electrolytic).