40 votes
Accepted

Addressable RGB strip works fine individually but cannot set all LEDs to full white

I would suspect that it is a voltage drop in the power rails caused by the current draw. Probably cheap construction with copper tracks that are just too thin and so have too high a resistance. To ...
Majenko's user avatar
  • 105k
5 votes
Accepted

Setting 10 RGB Strips Independently from Single Arduino

You could use chainable RGB drivers like these: They are based on the P9813 chip and can be used with the FastLED library. You can find them on Aliexpress or eBay, if you search for "STM32 rgb". ...
gre_gor's user avatar
  • 1,680
5 votes

RGB led strip is too dim

The Wemos D1 Mini is a 3.3V device. With a 1k base resistor, the most base current you're going to get is (3.3V / 1k ohm) = 3.3mA. Looking at the datasheet, the current gain (h_FE) for the TIP31 ...
jose can u c's user avatar
  • 6,974
5 votes

Addressable RGB strip works fine individually but cannot set all LEDs to full white

Majenko's answer is correct, and you could also verify it with the test performed. Since it is an issue I encountered myself in the past in a similar case, I want to share some measurements I took on ...
frarugi87's user avatar
  • 2,721
4 votes
Accepted

Do I have to wire up my WS2812 LED strip in "series", if I want to address each LED individually?

The LEDs are "addressed" in series; if you address the first LED then you address all connected first LEDs. So yes, you must connect the Data Out of the previous LED/strip to the Data In of the next ...
Ignacio Vazquez-Abrams's user avatar
4 votes
Accepted

RGB LED strip 100m

100 Meters of 5050 SMD strip LEDs will require roughly 120-200 amps. However, you cannot drive a 100 meter strip from a single power supply. The thin copper traces in the LED strip can only handle so ...
AJ_Smoothie's user avatar
4 votes
Accepted

What can I do to increase the amount of LEDs I can power with a pro micro?

As Majenko already mention, use a separate power supply. Use that power to power the LED strip(s). Use the MCU to control the data and clock lines. Connect grounds together.
Michel Keijzers's user avatar
3 votes
Accepted

Stacks on arrays on arrays

C(++) does not natively let you "add" arrays like that. Your code looks like maybe Python. There are several ways to do what you want to do. You could make your code which writes the pattern to the ...
Mark Smith's user avatar
  • 2,181
3 votes

for() loop doesn't seem to break?

Consider the sequence of values of "fadeIn". It starts at 8 and in incremented by 16. So: 8, 24, ... 248, 264, ... . It is never exactly 255. So you never break out of your "for" loop. There is ...
st2000's user avatar
  • 7,315
3 votes

Control multiple WS2812B strips with different leds count

The WS2812 chip requires highly timing dependent pulses to work, as I describe on my page about Neopixels. We are talking about pulse widths of 350 ns. I suggest it would be impossible to add another ...
Nick Gammon's user avatar
  • 38.1k
3 votes
Accepted

Arduino is incorrectly reading serial input from C# program

Your Serial receive code is not correct in some ways: You should only read from Serial, if there is really something to read. For the first read, that is not the problem, since you checked against ...
chrisl's user avatar
  • 16.1k
3 votes

What can I do to increase the amount of LEDs I can power with a pro micro?

Managing your power budget is a normal part of electronics projects. You can only draw about 500 mA total from the USB port, and less than that from the 5V line if your Arduino is powered from USB. If ...
Duncan C's user avatar
  • 5,682
3 votes
Accepted

LED strip brightness decreases when using multiple strips

40 amps is a LOT of current. 24 AWG wire can't handle anywhere near 20A of current, nevermind 40A. (After a little googling, it looks like 24 AWG wire is limited to about 3.5A.) Think about it. In ...
Duncan C's user avatar
  • 5,682
3 votes

ignoring potentiometer value variations

You have two issues going on - noise pickup, and a potentiometer with imprecise stops at one or both ends. The pot is the easiest to fix: What are the lowest low reading and highest high reading you ...
JRobert's user avatar
  • 15.2k
3 votes

FastLED library: How can I adjust the brightness of a single pixel on an absolute scale?

There is no dedicated function to adjust brightness. You can (however) do this by using the HSV color model. Breaking HSV (Anachronism) into Parts: H (Hue) Controls the Color itself. S (Saturation) ...
chrisl's user avatar
  • 16.1k
2 votes

How to identify RGBW LED pins?

The pin with a + is the anode of one colour. The three next to it are also anodes. Each anode is connected to one LED. The cathode of that LED is connected to the pin directly opposite the anode.
Majenko's user avatar
  • 105k
2 votes

How to identify RGBW LED pins?

Brand Name: LEDGUHON Model Number:JH-4RGBW14G
AltAir's user avatar
  • 542
2 votes
Accepted

RGB LED strip green LEDs cannot be dimmed to less than 50%

analogWrite only works on pins that support PWM. Those are the pins with the ~ next to it. On no-PWM pins, analogWrite will set the pin to LOW, for all values lower than 128, and HIGH for all the ...
Gerben's user avatar
  • 11.3k
2 votes
Accepted

RGB LED strip inverted PWM

The RGB LED strip has a common anode (V+). When you put 12 V on R, G or B, the LEDs have 12 V on both sides, so there is no voltage across it and no current. And if you put 0 V, they have 12 V across ...
gre_gor's user avatar
  • 1,680
2 votes
Accepted

Is there any problem in running Arduino logic to 12V LEDs?

The signalling of those LEDs is 5V and the power supply 12V. Basically you have a 5V-powered chip with constant current sinks driving LED chains that are powered from 12V. The 5V power for the chip is ...
Majenko's user avatar
  • 105k
2 votes

Do I need the Ground and 5 V pin connect to Led?

I think it is not a good idea to power the LED strip via USB. Normally USB delivers a maximum of mA (see below). Assuming you have 30 LEDs (minimum for a normal LED strip), and each LED gives 40 mA (...
Michel Keijzers's user avatar
2 votes

WS2812B LED strip + Arduino First Pixel keeps dying/breaking

I found (a part of) the problem: The soldered pin connections at start of the ribbon had leaking current. This was due to the soldering flux remaining around the pins. Rinsing the connection with ...
Bart B's user avatar
  • 41
2 votes

for() loop doesn't seem to break?

This is doing an assignment, not the comparison you are expecting if (led = 144 Need == for the comparison
CrossRoads's user avatar
  • 2,405
2 votes
Accepted

Strange artifact in writing to serial while executing loop

In your code colors is declared as rgb_color colors[ledCount]; This means that the very first iteration of this cycle in shiftLED for (uint16_t i = ledCount; i > 0; i--) { // access colors[i] ...
AnT stands with Russia's user avatar
2 votes

What can I do to increase the amount of LEDs I can power with a pro micro?

So am I right in this assumption? Yep. and If so, what can I do to increase the amount of pixels I can power at full range? Simple: don't power it from the Arduino. Add a proper external power ...
Majenko's user avatar
  • 105k
2 votes
Accepted

Cycling through switch states

The problem lies in your for cycle. If (state == 1) you are switching the red colour ON. If (state == 2) you are switching the blue colour is ON. So at this moment, you have red AND blue colour on, ...
JSC's user avatar
  • 116
2 votes

Cycling through switch states

In your lines: if (state==1) { leds[i].red = 100;Serial.println("Red"); } if (state==2) { leds[i].blue = 100;Serial.println("Blue"); } if (state==3) { ...
user85471's user avatar
  • 701
2 votes

ignoring potentiometer value variations

There are many ways to remove noise, below are some ways: Only change the value when it differs enough. Assume the range is 0-1023. Than only change the value if the input value differs more than a ...
Michel Keijzers's user avatar
2 votes

Addressable RGB strip works fine individually but cannot set all LEDs to full white

For completeness, I want to include an RGB circuit simulation I made a while ago, along with some data. It's for analog RGB strips, but the concept regarding voltage drop is the same. I've since added ...
Bort's user avatar
  • 397
2 votes
Accepted

Pass Color to a function without using a specific Adafruit_NeoPixel

Looking at the library at https://github.com/adafruit/Adafruit_NeoPixel/blob/master/Adafruit_NeoPixel.h, you can see that the Color method is static (see line 307): static uint32_t Color(uint8_t r, ...
Michel Keijzers's user avatar

Only top scored, non community-wiki answers of a minimum length are eligible