Arduino Uno (genuine) L LED goes dim when in use

I am a newbie so patience please.

I have two Uno's. One a genuine one, the other from Elegoo.

I have this last few days (I started Arduino-ing 3 weeks ago) noticed that the genuine board L LED is very faint (not apparent) during sketches.

In order to establish under what operations this occurs I went back to basics to compare the two.

Using the Arduino Basics - Blink sketch both UNO's L LED blinked brightly. When I used the Fade sketch the Elegoo Uno worked as expected but the genuine one's L LED fades to almost dull.

I also found by investigating and moving the boards, that the genuine board when lifted brightens and then dims again. This dimming is not in sync with the sketch Fade, indeed the breadboard LED does exactly what is expected.

I'll just explain what I mean by "moving the boards" - I lift the genuine Uno by tilting it on it's long side, keeping the edge on the worktop.

If I lift it off the worktop and place my finger under the location of the L LED, the L LED initially brightens then fades to dim, ie. no illumination at all.

To ensure that I was using like for like, I have used the same socket on the laptop (obviously changing the port) and the same USB cable.

There is no change if I use different leads between the Uno board and the breadboard or different ground pin sockets or if I fiddle with the leads in the pin sockets.

Any ideas folks?
ps searched the forum but couldn't find anything similar.

Your topic was MOVED to its current forum category which is more appropriate than the original as it has nothing to do with Installation and Troubleshooting of the IDE

Lose connection?
Inadequate power supply?
Short circuit?

The onboard LED on the genuine is driven by an op amp. If the GPIO pin is configured for input, the op amp input is in high impedance, it will pick up random voltages.

Run a sketch that configures pin 13 as an output.

If you are wondering about your own sketch, post it here in code tags.

1 Like

Hi John,
There are no obvious loose connections or shorts, the laptop socket and USB lead I used are common to both Unos so power supply was the same (unless the port has an influence on power supply but if that was the case how come it works perfectly when following the "Blink" sketch).
Ta

Hi aarg,
Running the Arduino "Blink Without Delay" which uses an LED on 13, the sketch runs as expected - the board L LED blinks brightly in sync with the breadboard LED.

It's just the same as the "Blink" sketch; ie the L LED shines brightly.

Interestingly the L LED stays bright even when the board is lifted and moved about; it didn't when using the "Fade" sketch as per original post.
Regards

Okay, if your external LED is connected to pin 13, and it is not functioning identically to the on board LED, then you have some wiring or component problem. So if that is the case, please post a diagram and images of your hardware.

Sorry aarg, External LED 13 functions identically when using Arduino sketches "Blink" and "Blink Without Delay" both using pin 13.

When using the Arduino "Fade" sketch and pin 9, the L LED does not shine brightly and fades away but not in sync with the external LED.

Hope that makes sense.

ps just tried Arduino sketch "DigitalReadSerial" which uses pin 2; the L LED is dim!

I told you why, in reply #4. I also provided the solution. If you are still confused about it, please post your sketch, as I requested. Do not neglect to use code tags.

Yep, I'm still confused but i will try and fathom out what you mean over the next couple of days.

In the interim. the 13 pin sketch from Arduino's site is as follows:

/*
  Blink without Delay

  Turns on and off a light emitting diode (LED) connected to a digital pin,
  without using the delay() function. This means that other code can run at the
  same time without being interrupted by the LED code.

  The circuit:
  - Use the onboard LED.
  - Note: Most Arduinos have an on-board LED you can control. On the UNO, MEGA
    and ZERO it is attached to digital pin 13, on MKR1000 on pin 6. LED_BUILTIN
    is set to the correct LED pin independent of which board is used.
    If you want to know what pin the on-board LED is connected to on your
    Arduino model, check the Technical Specs of your board at:
    https://www.arduino.cc/en/Main/Products

  created 2005
  by David A. Mellis
  modified 8 Feb 2010
  by Paul Stoffregen
  modified 11 Nov 2013
  by Scott Fitzgerald
  modified 9 Jan 2017
  by Arturo Guadalupi

  This example code is in the public domain.

  https://www.arduino.cc/en/Tutorial/BuiltInExamples/BlinkWithoutDelay
*/

// constants won't change. Used here to set a pin number:
const int ledPin = LED_BUILTIN;  // the number of the LED pin

// Variables will change:
int ledState = LOW;  // ledState used to set the LED

// Generally, you should use "unsigned long" for variables that hold time
// The value will quickly become too large for an int to store
unsigned long previousMillis = 0;  // will store last time LED was updated

// constants won't change:
const long interval = 1000;  // interval at which to blink (milliseconds)

void setup() {
  // set the digital pin as output:
  pinMode(ledPin, OUTPUT);
}

void loop() {
  // here is where you'd put code that needs to be running all the time.

  // check to see if it's time to blink the LED; that is, if the difference
  // between the current time and last time you blinked the LED is bigger than
  // the interval at which you want to blink the LED.
  unsigned long currentMillis = millis();

  if (currentMillis - previousMillis >= interval) {
    // save the last time you blinked the LED
    previousMillis = currentMillis;

    // if the LED is off turn it on and vice-versa:
    if (ledState == LOW) {
      ledState = HIGH;
    } else {
      ledState = LOW;
    }

    // set the LED with the ledState of the variable:
    digitalWrite(ledPin, ledState);
  }
}

Hi aarg,
In trying to respond to your #4 I have been checking some sketches to see how the in-built L LED reacts using pins as inputs and outputs.
I have used the following Arduino Built-In examples off the website with results stated below.
1 Blink
The in-built L LED works as expected and is bright.
2 Analog Read Serial
Analog pin 2 is configured as intput - L LED faint, TX LED bright.
The readings to Serial Monitor are as expected.
3 Digital Read Serial
Digital pin 2 (Button) configured as input, L LED as output.
The L LED was very dim, TX was bright.
If I slide my fingers along the digital pin holder from 0 through to 13, the L LED starts off dark then increases to maximum brightness at 13.
If I place my finger above 13 it brightens then starts to fade, there is a similar response if I tap pin 13.
TX remains bright throughout.
4 Button
Pin 2 is configured as input, Pin 13 output.
L LED is bright but turns off when I move my hand above or near the LED, additionally it goes on and off irregularly when I am not moving.
When I press the button, L LED (and a loose LED in 13 and GND) goes on and off as expected.

I wonder if the change in brightness of the built-in L LED is due to a mechanical defect in the board?

And how does the movement of my hand remote from the board affect the illumination of the LED?

I'm confused!

Is that a standard example sketch? Unless it is, you need to post it here.

So far, most of the behaviour you are describing can be attributed to the op amp circuit I mentioned in post #4. The on board LED L can indeed act strange if pin 13 is allowed to "float". A confusing thing about this, is that most clones don't do this. The purpose of the op amp, is to eliminate the LED load on the pin, since it is also a SPI pin.

Some of the results you posted above seem to contradict it, but I'm more inclined to believe that is because you weren't thorough enough in sorting out the configurations in your sketches.

To prove/disprove it, you could write a dedicated test sketch that alternately sets pin 13 to either INPUT or OUTPUT, and then do your finger tests while that is running. So every 10 seconds,

  • OUTPUT mode, set to HIGH
  • INPUT mode

This will turn on the LED full brightness when the input mode is not selected, to help with the observations.

What is the point of all this? If you drive the pin properly, it will work.

That's appreciated and I will try the suggestions.
All of the sketches were simply downloaded fromthe Arduino website.

Just an update, after "messing" about with changing input, output, HIGH and LOW the L LED is now shining bright when expected and off when not in use.

Interesting. I will try this messing around thing.

You’ll lose half of all you own :scream:

That would be a win, at this point.

:woozy_face:

:zipper_mouth_face:

Storage space, man.

1 Like

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.