Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Add a low power indicator LED

jack0987

Member
I have some small battery powered Arduino sensors in plastic cases about the house.

My thinking is I would like to drill a small hole and put an led behind it to add a small indicator led to each so when I look up at them and the led is lit I know the battery is not dead yet.

The Arduino runs on low power and only wakes up on an interrupt. With a T5 led ran for about 10 days. The Arduino has an led and so far it has run 90 days.

Perhaps size matters.

Please suggest some ideas. low cost is best.

Edit: Changed thread Title
 
Last edited:

Papabravo

Well-Known Member
What you want is a high efficiency LED. Typical LED currents are 10-20 mA which is too much for a battery powered application. You need to find one with a much smaller nominal current and further reduce the average current by turning it on with a 10% duty cycle, taking advantage of the LED's persistence.
 

danadak

Active Member
Use a color that has max eye sensitivity also helps :

1659630113418.png




Regards, Dana.
 

Attachments

  • 1659625559334.png
    701 KB · Views: 18
Last edited:

crutschow

Well-Known Member
Most Helpful Member
As noted, find a high-brightness LED with a low current requirement and run it on just enough current to make it visible.

The eye is most sensitive to color in the yellow part of the spectrum.

You can use a simple astable circuit to pulse the LED at a low frequency to further reduce its power requirements.
 

Nigel Goodwin

Super Moderator
Most Helpful Member
As noted, find a high-brightness LED with a low current requirement and run it on just enough current to make it visible.

The eye is most sensitive to color in the yellow part of the spectrum.

You can use a simple astable circuit to pulse the LED at a low frequency to further reduce its power requirements.

Or simply use the Arduino to flash it - using a timer interrupt to wake up from sleep (it may already be doing this?).

Many of my projects 'run' in sleep, and wake up every second (or less), it's easy to flash an LED for as long as you want as often as you want.
 

crutschow

Well-Known Member
Most Helpful Member
Spectral response eye
An interesting LED test would be which color is still visible at the lowest current level, which is influenced by both the eye sensitivity and the LED efficiency.
 

jack0987

Member
Use a color that has max eye sensitivity also helps :

View attachment 138099



Regards, Dana.

Very interesting. While yellow may have max eye sensitivity, in advertising people will choose a red label over a yellow one.
 

jack0987

Member
Or simply use the Arduino to flash it - using a timer interrupt to wake up from sleep (it may already be doing this?).

Many of my projects 'run' in sleep, and wake up every second (or less), it's easy to flash an LED for as long as you want as often as you want.

I thought of perhaps using a 555 timer to flash the LED but it would add components, most likely use more power, and basically cause more problems than it solves.

Maybe using the Arduino itself would be the best choice.

Right now, I am using both pins 2 and 3 for interrupts. How I would go about doing that at the moment I do not know. Is there a write up on this somewhere you may know of? Remember, at this time I have not disabled the Arduino onboard indicator LED.
 

Nigel Goodwin

Super Moderator
Most Helpful Member
I thought of perhaps using a 555 timer to flash the LED but it would add components, most likely use more power, and basically cause more problems than it solves.

Maybe using the Arduino itself would be the best choice.

Right now, I am using both pins 2 and 3 for interrupts. How I would go about doing that at the moment I do not know. Is there a write up on this somewhere you may know of? Remember, at this time I have not disabled the Arduino onboard indicator LED.

I use mainly PIC's, but I imagine you can set AVR timers to wake up from sleep, just as you can PIC ones.

Here you go:


It even flashes an LED :D
 

jack0987

Member
Although continuously waking the Arduino and blinking an led every few seconds is a possibility, I fear that method in the end will use more power than just connecting a very small, led directly to the battery and just let it run. Perhaps the very tiny surface mount ones like on the Arduino Mini board will do the trick. I'd like to use a blue one but do not know what to look for.

Could you link me to a part, please.

EDIT: On second thought, maybe having the led light up when the battery needs recharging may be better.
 
Last edited:

danadak

Active Member
Although continuously waking the Arduino and blinking an led every few seconds is a possibility, I fear that method in the end will use more power than just connecting a very small, led directly to the battery and just let it run. Perhaps the very tiny surface mount ones like on the Arduino Mini board will do the trick. I'd like to use a blue one but do not know what to look for.

Could you link me to a part, please.

EDIT: On second thought, maybe having the led light up when the battery needs recharging may be better.

Just use a sample blink sleep program and measure the difference in current drain.

I think you will find its a big difference in current draw, hence battery life.

Note depends on board used, as to what's external; left running.


Regards, Dana.
 
Last edited:

Nigel Goodwin

Super Moderator
Most Helpful Member
Although continuously waking the Arduino and blinking an led every few seconds is a possibility, I fear that method in the end will use more power than just connecting a very small, led directly to the battery and just let it run.

How do you work that out? - having the LED ON all the time drawing 1mA (for example) takes 1mA on average. Using the processor to flash the LED with 1mA for a second every ten seconds only averages 100uA, a 90% saving - so the battery will last ten times as long. The power the processor uses is far too small to bother about, as it's in sleep almost all the time, and only wakes for very brief periods.

You also don't need to flash it for as long as 1 second, much shorter is perfectly acceptable, and easily noticeable.

You've got an Arduino?, it has an LED on the board - try flashing that from sleep (consult the link I gave above) and measure the current taken. Experiment with ON/OFF times to see what you consider a good indicator, and then try an external LED, and alter it's series resistor upwards, until you get minimum current with acceptable brightness.

I usually use PIC's, and for longest battery life I use an external 32KHz crystal on TMR1, which wakes the PIC every second - I usually then update the 'real time clock', and check for whatever the device is supposed to be doing, then go back to sleep. This only takes microseconds - and battery life is likely to exceed the shelf life of most batteries - so we use special long shelf life Lithium batteries. Five+ years should be easily doable.

For less critical uses I just use the internal clock, modern PIC's have LOAD'S of clock options, and usually wake the device every millisecond, and keep a millisecond count running, as well as an RTC. Although power consumption is higher than the external 32KHz option, it's still stupidly small :D
 

New Articles From Microcontroller Tips

Top