this post was submitted on 06 Oct 2023
13 points (100.0% liked)

Ask Electronics

3325 readers
1 users here now

For questions about component-level electronic circuits, tools and equipment.

Rules

1: Be nice.

2: Be on-topic (eg: Electronic, not electrical).

3: No commercial stuff, buying, selling or valuations.

4: Be safe.


founded 1 year ago
MODERATORS
 

I'm working on an Arduino project that will likely rely on a 9v for its power. If I can get at least 40 hours of power, I'd be happy with that. Here's why I think it's doable:

First, rechargeable 9v lion batteries nowadays have substantially higher capacities than even a few years ago. I see one on Amazon rated for 5400mWh!

Of course, I'll want to reduce power consumption as much as possible, so I'm thinking an Arduino micro would be the best choice (though I will be attaching a shield to it, which will add to the current draw.

My understanding is that the linear regulator on the Arduino is capable of reducing the 9v down to 5v, but at great expense to efficiency through heat loss. My thinking was to bypass the linear regulator entirely, and rely on a much more efficient buck converter to adjust the voltage down to 5v.

Thinking it might be possible to reduce the core clock as well, and run the Arduino at 3.3v instead of 5.

Anything I should consider that I might have missed? I'm excited for the project, but definitely need to get the power consumption as low as possible so I can run it off a 9v and not be constantly swapping/charging.

you are viewing a single comment's thread
view the rest of the comments
[–] remotelove@lemmy.ca 3 points 1 year ago* (last edited 1 year ago)

Like someone else said, pull all the LEDs. There is no point to them if you don't need them. Just because a pin is set low doesn't mean it's completely off, so cut any unused paths to ground to be sure. LEDs still have to reach a specific forward voltage to turn on, but they could still be passing a fractional amount of current.

I believe the internal pull-up resistors are 10k, so if they are enabled, you can disable them and save a few more fractional pennies. (Maybe 3uA per pin if the pullups were enabled to start. Lulz.)

From a software perspective, you just need to keep the MCU in sleep mode as much as possible. Rely on the internal timers to wake up and sleep the MCU and make sure that the main loop is looping as slowly as possible.

That MCU should have an internal oscillator, so test it to see if it saves you any power. Turning it on and disabling the external oscillator should drop the clock speed down to 8mhz and might save you a bit more juice.