So I'm designing a project that will have about 75 LEDs and will be controlled by multiple Arduinos. I want to have a lamp test push button so I can light all the lights at once and see any that are broken. So I've been looking around and what little on lamp test I been able to find is to use a diode between the LED and lamp test buss so that power doesn't feed back into the lamp test buss and go places it shouldn't. The question is should I put a similar diode between the Arduino output pin and the LED, so that lamp test buss power doesn't feed back into it? The lamp test buss will be +5V just like the Arduino output. It will be a separate power supply that can deliver enough current to run all the LEDs at once without getting unhappy.

Anyone with lamp test experience that can enlighten me?

  • \$\begingroup\$ lamp test? there's a flashback. you don't need a lamp test with LEDs unless you are doing something wrong. \$\endgroup\$
    – dandavis
    Apr 3, 2018 at 20:26

1 Answer 1


The most effective Lamp test is a momentary button, where you scan for an input to activate all, in firmware, or activate momentarily by some sequence on Power On Reset (POR) with no switch.

Diode OR power switches may serve one purpose for a test in case of dead UC but then Design for Testability ought to be learned as quickly as possible by new designers. (Search DFT for system level)

  • \$\begingroup\$ So if I have an input port with the internal pull up resistor pulling it high and then have the lamp test button pull it low and then have the main event loop checking that and turning on the lamps while that port is low, this is the direction you think best? \$\endgroup\$
    – zeta-band
    Apr 3, 2018 at 20:17
  • \$\begingroup\$ I think so. Some uC have internal pull-up on write \$\endgroup\$ Apr 4, 2018 at 1:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.