I bought a cheap USB battery pack to power a portable project. It works great, except it shuts itself down if there's a current draw lower than a certain amount (haven't pinned it down, but I think it's around 60mA). Some of the time, my actual load is less than that (it's an arduino and some LEDs), although it can run quite a bit higher, too.
I can keep the battery pack on by just putting a resistor in parallel with the load, but obviously that's just burning power. Is there a simple-ish circuit I can build that would ensure that there's always a minimum current being drawn, but draw less or no current when the real load increases? That is, if the LEDs were off, it'd be drawing 60mA, but if the LEDs were drawing 200mA, it wouldn't draw any current?
Answer
The most obvious solution to me is to program your Arduino to drive some resistors when it isn't driving LEDs. If you have a spare GPIO port this should be straightforward.
Keep a count of num_leds_lit and when this drops below n, set resistor_driver_pin high.
If you don't like the idea of wasting power, have an idle loop that calculates pi to a zillion decimal places. A busy microprocessor probably burns more milliwatts than a truly idle one.
No comments:
Post a Comment