I have an LED strip that just has 5V and ground pins (2 each, but only one side is needed to power) when I connect them directly to the 5V and ground pins directly, the led strip shines at full power like it does when connected via USB to the wall, however it is always at full brightness. How do I control how bright the led strip shines from the Arduino UNO via software?
How do I control how bright the led strip shines from the Arduino UNO via software?
Use a PWM enabled pin such as pin 3 (note that it is marked with a ~) and analogWrite() to it with a value between 0 and 255 to control the brightness
HOWEVER, the pin can only safely provide about 20mA so driving a string of LEDs directly is not recommended and I hope that you have a current limiting resistor in place wherever you power it from
You'll need a transistor or [u]MOSFET driver[/u].
Do you know the current rating (Amps or milliamps) for the LED strip? If not, you can estimate 20mA per LED. Your MOSFET (or transistor) needs to handle that current.
These "standard" driver circuits invert the logic so a PWM value of 0 is full-brightness and 255 is off.