I have 2 WLED Strip lights, one on the right and another one to the left of my kitchen. They are both WS2815 lights with an ESP32 running WLED 0.14.1 being powered each by a 12V 3A power supply.
The one to the left has 87 lights total and 87 lights on (length of 87 in the LED settings)
The one to the right has 105 lights total and only 87 on (length of 105 in the LED settings).
So 19 of those lights on the strip don’t turn on. I have attached an extension wire to the end of the right strip to add 20 more lights further down the counters. I can see 12 V at the end of that wire on the hot and ground wire.
I can see that 12V at the point where the lights turn off on the strip and can see that 12V all the way down the turned off lights.
I did set the correct amount of lights. So why can’t I have more lights turn on? I want my 105 lights.
And another question. If I add those extra 20 lights after the wire, do I then consider this right strip as 125 lights? anything else I need to set in WLED?
How have you wired the data connections of your right and left strips?
Are you using 2 GPIOs?
What ESP32 board are you using?
Do you have a levelshifter?
Where in WLED did you set the total number of LEDs to display?
Yes, I have wired the data connections. Both lights right now can be controlled to change to any color and FX.
Yes, I am using 2 GPIO for both.
I don’t have a levelshifter, what is that?
I set the total number of LEDs in LED Preferences>Hardware Setup>LED outputs. Start: 0 Length: 105
EDIT: Okay I have a level shifter that converts 12V to 5V for my ESP32.
And this is my ESP32: AITRIP 3PCS Type-C USB ESP-WROOM-32 ESP32S ESP32 CH340C Development Board 2.4GHz Dual-Core WiFi +Bluetooth 2 Function Microcontroller Without Expansion Board for Arduino
What you have is a buck converter not a level shifter. A Lever shifter takes the 3.3v data output of the Esp and raises it to the 5v the LEDs look for. Other Hardware - WLED Project
Did you check your segments from the main GUI and make sure they show your total # of LEDs?
If you’re using 2 GPIOs, then you have to set the proper length for each strip attached to each GPIO.
Under Hardware Outputs you should have 2 entries, each with their own GPIO, Start and Length settings.
If you look closely, you’ll notice the start of the 2nd entry begins at the end of the 1st.
WLED treats 2 strips on 2 different GPIOs as 1 long strip.
To light all the LEDs on both GPIOs, you need to create a segment that has a total length equal to the sum of both GPIO lengths (192 , if one is 105 and the other 87).
You can experiment with segments that start and stop at different points on the strip.
You can also create multiple segments with different Starts and Stops (be careful not to overlap the segments, that can cause flickering)
As far as levelshifters go, what you’ve described is probably a buck converter.
While that’s also necessary for your setup, it applies to the overall power supply of the ESP32.
Checkout the KB : LevelShifters
They apply to the data line only, and pay attention to the recommended devices.
The I2C versions commonly seen on Amazon won’t work effectively.
You may have gotten away without needing one (so far), but be forewarned that you’re not guaranteed reliable operation without one.
Okay, I have to admit that I don’t know what GPIO means. I watched a youtube video that said to set it at 2 and bam my lights turned on. I thought it was just a setting related to the types of lights. So I set both strips on 2.
Also, both strips turn on fine and play all FXs fine. It’s just the Right strip that won’t turn all 105 LEDs on, it only turns on 87.
I don’t have any segments going on. So I don’t think that’s the problem.
From your diagram it looks like you’re running 2 different ESP32 boards one hooked up to each strip.
That wasn’t clear to me in your original post.
You’ve got 2 different instances of WLED running here
I was talking about 2 strips attached to one ESP32 (that will work as I described).
Do you really need the 2 different ESP32’s?
What’s your end goal with this project?
The dual ESP32 scenario is likely trying to use the Sync features of WLED, so changes on one board make changes on the other (if that is what you were trying to achieve).
Before you jump into that, I would connect to the GUI of the 2nd board and try and make changes there directly, if only to prove you can get all the lights to come on.
After that it’s a matter of understanding how the sync feature works.
Probably worth a look at the KB: UDP Sync to get some idea of what it can do for you.
yeah sorry, I didn’t make myself clear. I am using two separate setups. Cause it’s impossible to hook up both of them together. And they are not being synced. I clicked sync once but then turned it off. Did it somehow keep my settings on the second one? I do see different settings. Both Strips are attached to the D2 pin of the ESP32.
It may not have kept the settings, but if it thinks Sync is active changes in one may affect the other.
In Config->Sync Setup you can turn off the groups and send/receive settings.
Have you checked the segment lengths on both WLEDs ?
The larger setup should have a segment ending in 105.
Just one last potential issue - are you sure you put the added 19 pixels in correct orientation so Data Out from the main strip feeds Data In?
Can you test the 19 strip by connecting it to the ESP32 1st, see if you get anything to light?
Yes, I turned off everything related to syncing.
Both strips have just Segment 0.
YES, it was the Segment 0 that was set to 87 LEDs on the long strip.
Thank you so much. That did the trick.
So one more question.
I have a wire attached to the end of that strip and will then add another 20LEDs.
So do I need to create that as a second segment? Or can I just add the 20 LEDs to the 105 so enter length: 125? Would that do the trick.
In general you set the total # of LEDs you want WLED to control in LED Preferences.
In the main GUI, you use segments to control different pieces of that total.
If you always want to refer to the whole strip, you just make the segment length equal to the whole strip.
But you can also refer to just the “middle 30” LEDs by making a segment that Starts at 35 with a Length of 30. That lets you do things like have a middle section, brighter/dimmer/ or a different colour.
Once you’ve played with it the way you like, save it to a preset and you can get it back when you like.
But I mean, adding a wire after the 105 LEDs and before the additional 20 LEDs for WLED that means just 125 LEDs total. Right?
It’s not going to freak out when it sees the wire.
But I can create segments if I want those 20 to act differently.
Are you talking about power or data?
The power wires are all in parallel, you just continue on with what’s there.
Data is serial. the output of one strip feeds the input of the next.
The LEDs have no idea how many pixels are in their strip.
You just tell WLED how many you want to run and it outputs the correct amount of data.
If you have more pixels than you tell WLED (either config or segment) then some on the end don’t light up
(as you saw). If you have less than you tell WLED, it sends the longer string anyway and the excess information “falls off the end” of the string.
And yes, you use segments to get the parts you want.
K cool
Thanks for all the help man!
Yes they all in parallel, I’m just extending the strip with a four wire (hot, ground, data and backup) cord to add another 20 LEDs on the other side of the stove.
One more question… if I may,
So on the right hand side, on the strip that was giving me problems. Now that the 105 LEDs work fine with the segment problem taken care of. I’m adding a wire at the end of the strip that goes through cabinets and then added another 28 LEDs.
So I see 12V all through the added strip, I now made it 133 LEDs total but the extra added LEDs don’t turn on. Only the original 105. I double checked the segments that were at 133 too. Am I missing anything else?
I’m not sure how to do that. Do you mean physically? Yes I have soldered all 4 wires from the last LED to the new strip. Maybe you are talking software? But yes 12V is all through the last 28 LEDs
What I’m talking about is the direction of data for a strip.
If you look closely at the markings on the strip you should see labels like DI (or DIn), DO (DOut), BI (BIn), and BOut. The In side is where data is fed into a strip and the Out side is where the data comes out to feed to the next device’s In.
Check the junction where you joined the strips carefully to make sure you have the correct end connected.
If that’s ok, you may have to disconnect the join and try the extra strip by itself directly connected to the ESP to make sure it’s good.
Yeah all the ins and outs are set correctly. Argh… I have a feeling this isn’t going to happen.
So usually if you add a wire in between two strips, the strips just act as if there was no wire more or less? Correct?