Geekzone: technology news, blogs, forums
Guest
Welcome Guest.
You haven't logged in yet. If you don't have an account you can register now.


mdf



2230 posts

Uber Geek
+1 received by user: 687

Trusted
Subscriber

# 248281 18-Mar-2019 12:48
Send private message quote this post

I am playing around with RGB LED strips. Right now, I'm trying to make a seven-segment digit (ultimate goal is something like this but I'm a long way off that right now). This is very much learning/prototyping stage. I'm using WS2812B strips from ebay, so only three wires (+5V, GND and Data). I checked before I cut and everything lit up as it should.

 

The strips are cut to size, laid out, and soldered back together in a figure 8. But it's my first time soldering something this fine solo, and I've clearly done something wrong as only a couple of segments light up. I've managed to probe with a multi meter and can see I have (or at least seem to have) 5V all around the circuit/figure 8. I think the issue is therefore with the data wire between segment 2 (working) and segment 3 (not working).

 

I've done the obvious (or at least, I think the obvious) and reheated and disconnected that connection, cleaned the pads with solder wick, tested the wire, and resoldered but still no dice.

 

Would appreciate any bright ideas or guidance to figure out what has gone wrong. I might have burned out the pad? Shorted something out when I tinned the pads? Is there a way of figuring out whether the issue is at the exit or entrance of a segment?

 

My soldering isn't great, but there aren't obviously great blobs of solder shorting out the pads.


Filter this topic showing only the reply marked as answer View this topic in a long page with up to 500 replies per page Create new topic
 1 | 2
771 posts

Ultimate Geek
+1 received by user: 100

Lifetime subscriber

  # 2200761 18-Mar-2019 13:10
Send private message quote this post

Do a continuity check - ohmeter check - from your wire and long each LED strip at the pads to make sure the strips copper tracks are still intact.

 

I have helped out someone with a similar LED strip. Too much heat with the soldering iron could make the pads lift or move on the substrate and break the copper connection between the pad and the track.

 

 





Gordy


mdf



2230 posts

Uber Geek
+1 received by user: 687

Trusted
Subscriber

  # 2200769 18-Mar-2019 13:19
Send private message quote this post

Gordy7:

 

Do a continuity check - ohmeter check - from your wire and long each LED strip at the pads to make sure the strips copper tracks are still intact.

 

I have helped out someone with a similar LED strip. Too much heat with the soldering iron could make the pads lift or move on the substrate and break the copper connection between the pad and the track.

 

 

Thanks. I've just rechecked and don't get any continuity at all on any of the data pads, even the ones I know are working. Each of LEDs is individually addressable via a little circuit and I assume something about that prevents checking continuity.


 
 
 
 


771 posts

Ultimate Geek
+1 received by user: 100

Lifetime subscriber

  # 2200776 18-Mar-2019 13:35
Send private message quote this post

It is possible the manufacturer has given all the pads a clear coating that you will have to scratch though.

 

 





Gordy


1751 posts

Uber Geek
+1 received by user: 427


  # 2200789 18-Mar-2019 13:52
Send private message quote this post

throw in the bin and start again . Honestly the easiest solution.
Make sure you test the complete strip before cutting it up.

 

If you want to fix it, remove the problem section from the fig 8 & test it separately.
Multimeter Continuity test, on switchable diode circuit & associated components....   :-) 

 

Try tracing +ve & -ve voltage through the circuit .
Then trace the switching pads through the circuit , that will depend on how they switch (how they are triggered ).

 

 


mdf



2230 posts

Uber Geek
+1 received by user: 687

Trusted
Subscriber

  # 2200933 18-Mar-2019 17:42
Send private message quote this post

Further investigations carried out.

 

Each of the segments (8 LEDs each) work fine on their own (and worked fine prior to cutting). +5V and GND definitely work as a continuous loop all the way around the circuit. If I connect Data In of each segement directly to the Arduino (i.e. bypass the previous segment), each LED will light up correctly. So I think that means that I've got an issue with the Data Out side of things. It would be quite the coincidence if I've managed to solder every +5V, GND and Data In correctly, but all the Data Outs incorrectly.

 

I suspect that I've soldered one or more badly enough to introduce noise on the circuit and it attenuates the data signal sufficiently to no longer work. Does that sound plausible?


8277 posts

Uber Geek
+1 received by user: 4565


  # 2200978 18-Mar-2019 18:46
Send private message quote this post

Or heat or voltage leakage from the soldering iron has fried the data chip on the individual LEDs.  Could try earthing and heat sinking the chip by using an earthed clip of some kind across the contacts as you solder them. Cut out one of the still working sections of a borked strip and give it a try.


22164 posts

Uber Geek
+1 received by user: 4729

Trusted
Subscriber

  # 2200980 18-Mar-2019 18:50
Send private message quote this post

There are fake WS2812 LEDs around - I got some in one lot and about 4 failed, just refused to pass data out their out pin.

 

Also flexible strips are terrible for the connections cracking to the LEDs. That is why there are the newer ws2813 LEDs that have a dual data wire to bypass a single failed connection.

 

Do you have an oscilloscope to probe the output of that strip for data?

 

Also check you are outputting enough data for that many LEDs. I was caught out by that with a multiplication mistake when putting some White/amber LED pixels into some shelving.





Richard rich.ms

 
 
 
 


mdf



2230 posts

Uber Geek
+1 received by user: 687

Trusted
Subscriber

  # 2201079 18-Mar-2019 20:24
Send private message quote this post

Cheers guys. It's possible I have completely fried something along the way, but I'm not quite ready to throw the whole thing out or re-cut. I'm reasonably confident all the individual chips/LEDs are working:

 

  • Everything worked as it should prior to cutting, so I don't think it is a chip DOA scenario.
  • I've checked the code on another (un-cut) strip so I'm confident that is working.
  • I can make each segment individually behave as expected when that segment is directly attached to the arduino.

It is just when they are all chained together I can't get beyond a segment or two.

 

I'll continue to experiment. Ideally I want to make six of these. Could be quite a lot of troubleshooting before I'm done. Youtube made it look so easy too!


541 posts

Ultimate Geek
+1 received by user: 126

Subscriber

  # 2201159 18-Mar-2019 21:11
Send private message quote this post

The data pins are not commoned. They pass the data through the chip the first 24 bits are dropped and then the rest is sent to the next chip and the process continues till the end of the string, so a dead chip will stop at that point and not continue.

 

Check that all the connections are going from DO to DI.





Geoff E

22164 posts

Uber Geek
+1 received by user: 4729

Trusted
Subscriber

  # 2201176 18-Mar-2019 21:23
Send private message quote this post

pictures plse





Richard rich.ms

2840 posts

Uber Geek
+1 received by user: 1387

Lifetime subscriber

  # 2201177 18-Mar-2019 21:23
One person supports this post
Send private message quote this post

If you overheat a chip when soldering you will kill it. If the first chip in a series of WS2812s is dead, the rest of the strip won't light up.

 

Also, check that you don't have the dead strip wired up back to front... i.e. DO from one strip going to DO on the next.

 

You can't introduce noise by bad soldering. But you can have intermittent/failed connections. Try pressing down with your finger on the connections going into the failed section, or out of the last working section. With a bit of luck, it may burst into life.

 

Also check for solder bridges (i.e. zero resistance) between +5 or GND and the DI/DO lines.

 

 


187 posts

Master Geek
+1 received by user: 77


  # 2201178 18-Mar-2019 21:23
Send private message quote this post

You haven't got some of the strips backwards (i.e. DO connected to DO on the next strip)?


mdf



2230 posts

Uber Geek
+1 received by user: 687

Trusted
Subscriber

  # 2201223 18-Mar-2019 22:07
Send private message quote this post

Oh yes, was very alive to the possibility of being a complete bonehead and definitely checked data in/out twice before posting the first time!

 

Please excuse the recycled cardboard backing but this is what I'm trying to achieve:

 

 

Figure 8, 8 leds to a segment. In this image, data and power enter from the right (3 o'clock), go in a loop clockwise back to 3 o'clock, then turn more sharply for the middle segment before exiting to the left (9 o'clock).

 

As you can see from the above image, the first two segments (bottom right and bottom) light when connected to the Arduino and powered on. Stops at the junction between bottom and bottom left. Apologies, soldered from the bottom so it's still stuck down that way.

 

However, I can get all seven segments/all LEDs to light if connecting their data in pin directly to the Arduino:

 

 

This also works if I wire the data out pin of the previous strip directly to the Arduino, i.e. the data is getting "in" through my manky soldering, but not getting out from the data out pin. You can see in the middle left (9 o'clock again) one of the green data wires has been disconnected. If I attach that directly to the Arduino, it lights as it should.

 

It's not just the bottom/bottom left junction. If I light the bottom left segment by directly connecting to the arduino data pin, I then need to do the top right, top, top right etc. directly to the data pin too.

 

I've checked all the way around, and am still getting 5V between positive and ground at the exit point. I will need to check for solder bridges tomorrow in the better light.

 

Close up of my soldering. Some are better, some are worse:

 

 

And the code I'm using to test. Pretty basic:

 

[code]

 

 #include <FastLED.h>

 

  #define NUM_LEDS 56

 

  #define DATA_PIN 3

 

  #define LED_TYPE WS2812B

 

  #define COLOUR_ORDER GRB

 

  #define BRIGHTNESS  100

 

  #define COLOUR Blue

 

  CRGB leds[NUM_LEDS];

 

 

 

void setup() {

 

  FastLED.addLeds<LED_TYPE, DATA_PIN, COLOUR_ORDER>(leds, NUM_LEDS);

 

  FastLED.setBrightness(BRIGHTNESS);

 

  FastLED.clear();

 

}

 

 

 

void loop() {

 

  fill_solid(leds, NUM_LEDS, CRGB::COLOUR);

 

  FastLED.show();

 

}

 

[/code]

 

I've confirmed that this will make the first 56 leds on another strip (not cut) light up blue as expected.


22164 posts

Uber Geek
+1 received by user: 4729

Trusted
Subscriber

  # 2201256 18-Mar-2019 22:45
One person supports this post
Send private message quote this post

Hmm, ive never soldered to the back of the strips before. Possibly the plating thru on the data pins isnt that great and its not getting contact? perhaps try the front pads instead since that is the side that trace is actually on.





Richard rich.ms

2840 posts

Uber Geek
+1 received by user: 1387

Lifetime subscriber

  # 2201364 19-Mar-2019 09:08
Send private message quote this post

 

However, I can get all seven segments/all LEDs to light if connecting their data in pin directly to the Arduino:

 

 

The default state for WS2812 LEDs is on (white). If they're all on, then there is NO data connection (or you've turned them all on). I guess this does verify that the LEDs themselves work and the power circuitry is good.

 

A thought... what version of Arduino are you using? If you have a 3.3V one (e.g. Nano), then it can't reliably drive WS2812s directly. You need a 5V (e.g. Uno) Arduino (or a level shifter).

 

 

It's not just the bottom/bottom left junction. If I light the bottom left segment by directly connecting to the arduino data pin, I then need to do the top right, top, top right etc. directly to the data pin too.

 

 

So, no matter where you connect the Arduino to your hardware, you always get just the first 16 LEDs lit? That sounds like a software problem to me. I'm not familiar with the fastLEDS library, but at first glance your code looks good. Is fastLEDS widely used? Maybe try the NeoPixel library.

 

But this

 

 

 

I've confirmed that this will make the first 56 leds on another strip (not cut) light up blue as expected.

 

 

 

 

sounds like hardware.

 

 

 1 | 2
Filter this topic showing only the reply marked as answer View this topic in a long page with up to 500 replies per page Create new topic



Twitter and LinkedIn »



Follow us to receive Twitter updates when new discussions are posted in our forums:



Follow us to receive Twitter updates when news items and blogs are posted in our frontpage:



Follow us to receive Twitter updates when tech item prices are listed in our price comparison site:





News »

Xero announces new smarter tools, push into the North American market
Posted 19-Jun-2019 17:20


New report by Unisys shows New Zealanders want action by social platform companies and police to monitor social media sites
Posted 19-Jun-2019 17:09


ASB adds Google Pay option to contactless payments
Posted 19-Jun-2019 17:05


New Zealand PC Market declines on the back of high channel inventory, IDC reports
Posted 18-Jun-2019 17:35


Air New Zealand uses drones to inspect aircraft
Posted 17-Jun-2019 15:39


TCL Electronics launches its first-ever 8K TV
Posted 17-Jun-2019 15:18


E-scooter share scheme launches in Wellington
Posted 17-Jun-2019 12:34


Anyone can broadcast with Kordia Pop Up TV
Posted 13-Jun-2019 10:51


Volvo and Uber present production vehicle ready for self-driving
Posted 13-Jun-2019 10:47


100,000 customers connected to fibre broadband network through Enable
Posted 13-Jun-2019 10:35


5G uptake even faster than expected
Posted 12-Jun-2019 10:01


Xbox showcases 60 anticipated games
Posted 10-Jun-2019 20:24


Trend Micro Turns Public Hotspots into Secure Networks with WiFi Protection for Mobile Devices
Posted 5-Jun-2019 13:24


Bold UK spinoff for beauty software company Flossie
Posted 2-Jun-2019 14:10


Amazon Introduces Echo Show 5
Posted 1-Jun-2019 15:32



Geekzone Live »

Try automatic live updates from Geekzone directly in your browser, without refreshing the page, with Geekzone Live now.


Support Geekzone »

Our community of supporters help make Geekzone possible. Click the button below to join them.

Support Geezone on PressPatron



Are you subscribed to our RSS feed? You can download the latest headlines and summaries from our stories directly to your computer or smartphone by using a feed reader.

Alternatively, you can receive a daily email with Geekzone updates.