Jump to content

Question about RGB headers and LED Bars


cjkennedy72

Recommended Posts

I ordered a set of two RGB light bars to replace the janky lighting in my V2.4. I have an Octopus v1.1 in the printer and it has a single RGB header. The light bars have a single 3 pin connector, so no easy daisy-chaining. So to the question...

What is the best way to connect two strips to a single header on the board? Or should I remap a pin and use some other connector on the board? The only one that seems appropriate would be to use the "Probe" port with the voltage set to 5v. I can easily split the connection to the single RGB port but I am unsure how that would work in the config for the LEDs.

Any advice is appreciated!

Link to comment
Share on other sites

45 minutes ago, cjkennedy72 said:

I ordered a set of two RGB light bars to replace the janky lighting in my V2.4. I have an Octopus v1.1 in the printer and it has a single RGB header. The light bars have a single 3 pin connector, so no easy daisy-chaining. So to the question...

What is the best way to connect two strips to a single header on the board? Or should I remap a pin and use some other connector on the board? The only one that seems appropriate would be to use the "Probe" port with the voltage set to 5v. I can easily split the connection to the single RGB port but I am unsure how that would work in the config for the LEDs.

Any advice is appreciated!

I presented this same problem on the voron discord, voron_electronics channel. Three solutions was presented.

1- use CAN and connect the SB leds there, so you can use the data pins for your chamber lights.

2- like you suggest, find a 5v source on the board (or use a dedicated 5v source) and an unused data.

3- connect both discos and sb in parallel to the neopixel port of the octopus. You will not be able to address the pixels individually this way.

 

You can also check out this thread on this forum which has much more information. I am sure you will be able to find your solution here 🙂

  • Like 1
Link to comment
Share on other sites

10 minutes ago, cjkennedy72 said:

If I can wire them in parallel instead of serial and get them to turn on and off, I am good

Hmm... so... why not simply use the neopixel port on the octopus? it has everything you need. You can even make it go disco instead of just turning on / off since there is even a data pin (PB0) ?

And.. parallel and serial is just a matter of wiring, not?

Link to comment
Share on other sites

My concern with parallel vs serial is more about the addressability of each bar. In serial wiring, each LED on the bar should be individually addressable. When a second strip is connected in serial, would the next strip not just continue the numbering for the LEDs? So 0-17 (or 1-18) on the first bar and 18-35 (19-36) for the second bar. If they are wired in parallel, how do you determine the LED addresses?

Am I misunderstanding how addressable LEDs work? Using the RGB port was the plan. This is what is puzzling me.

Edited by cjkennedy72
Link to comment
Share on other sites

I think you are right.

When in parallel, they will both receive the same data. and in serial you will have twice the amounts of leds to address.

I just looked up the information I had received from the expert (cat40 (she/her) from the aforementioned discord:

_________________________

 

When you chain them, you wind up with one data total (likewise if you do it normally, you wind up with one 5V and on return at the connector, but that's not required)
If you connect the data in of each device to the mcu board you have wired them in paralell

as far as I know it's not technically in the spec and you might rarely get glitches, but more importantly you can't individually control each LED. For two strips wired in parallel, the first LED on each strip will get the same address and respond to the same controls, and likewise for each pair going up the strips

Tons of people do, it's not wrong, it just depends on how much hassle you'll go through for the control

If they are chained, they are not in paralell, the data is in series (it's a JTAG like topology, where each chip has a data_in and forwards data to a data_out port)
Though, since the SB only has three, you could set higher addresses to whatever you want to change the bulk of the strips, and just accept the first three pixels on the strips reflecting the SB leds

____________________________

and when in doubt, you can always just try it out and see what happens.

 

  • Like 1
Link to comment
Share on other sites

I think I found a solution. The bars have a solder point on the back at the end labeled "Out". I believe if I split the 5v and Gnd, then solder a wire from that pad and run around to the input on the second bar then they should work in series. 

However, having them in sync by running in parallel may be easier to manage in the config. 

Thanks @Dirk, some times I just need a sounding board. 🙂

  • Like 2
Link to comment
Share on other sites

if using the octopus v1.1 board, the max leds/neopixels you can use is 20 due to limitations of the onboard 5v regulator, so more than 20 leds you will need a separate 5v psu with the gnd tied to either octopus gnd or octopus psu gnd and enough power to supply your leds, i use 82 neopixels on a 5v 20a psu this way and all addressable…

Link to comment
Share on other sites

it all seems to depend on the kind of neopixel used, but a simple google search shows that BTT recommends not more than 30, like several other MCU manufacturers. BUT, apparently running 60 works fine. In the aforementioned link  @Buurman shows running 60 + 4 neopixels. He clearly specifies he uses the 5v power from the board (in fact from the BLTouch pin).

But indeed, an additional psu is a safe and easier way to go. If you need 82 neopixels 🙂

Link to comment
Share on other sites

There are three limitations :

- the onboard 5V regulator, SY8368AQQC : 8A continuous, 16A peak ; Neopixels are not the only devices on this power line
- the data line buffer capabilities SN74LVC1G125 ; not an issue (high impedance DATA input on the forst Neopixel, the first buffering for the second and so on)
- the pin header rating. JST-XH is rated 2A (assuming it is real JST...)

The limiting factor is not the regulator, it is the pin header. The regulator will shutdown if overloaded, while the pinheader will be damaged.

Quick look at Neopixels on Adafruit website : up to 60mA/Neopixel at full brightness (10 to 20 mA for an ordinary LED has been a rule of thumb for decades) -> 30 LEDs (33.3333) for 2A on a JST pin ; probably the reason why BTT recommands not more than 30. Then, if all Neopixels are not used at full power for too long, 60 is doable... (but not a great idea...)

Edited by YaaJ
  • Like 2
Link to comment
Share on other sites

Sorry I'm late to this--busy New Year's weekend with guests over).

The Octopus can handle what you need easily. Obviously, the NeoPixel port for one strip (that's my Stealthburner strip). Then for the other, use the BL Touch port with just the 5V, GND, and signal port (PB6)--that's my case lights. I have 46 LEDs on it--10 for SB (Rainbow Barf in the logo), and 36 on the case light. I also drive my Pi 4B off the Octopus 5v rail and have zero issues with it providing enough power to all that.

My config definitions:

 

[neopixel caselight]
pin: PB6
chain_count: 36
color_order: GRB
initial_RED: 0.0
initial_GREEN: 0.0
initial_BLUE: 0.5
#left side = neopixel:caselight (1-18)
#right side = neopixel:caselight (19-36) (or 36-19 to invert effect)
 
[neopixel sb_leds]
pin: PB0
#chain_count: 3
chain_count: 10
color_order: GRB, GRB, GRB, GRB, GRB, GRB, GRB, GRB, GRBW,  GRBW
initial_RED: 0.0
initial_GREEN: 0.0
initial_BLUE: 1.0
initial_WHITE: 0.0
# logo (Rainbow Barf PCB) = neopixel:sb_leds (1-8)
# nozzle = neopixel:sb_leds (9,10)

 

  • Like 1
Link to comment
Share on other sites

@claudermilk: New year / Christmas is for family and friends 🙂 Happy new year to you too.

There is truly very little 'simple' information on the net about neopixel use in our Voron printers.

Neopixel lighting is not in the BOM of my voron 2.4r2. So the kit maker I bought it from (Fysetc) does not provide it. The different kits have aparently different 'lighting / led' options.

When I check out the current BOM for a voron 2.4, the stealthburner, its leds and any neopixels you put in your case, are not part of the list. 

I think there are too many options, without a clear and concise manual / guide.

And nobody says octopus can't handle leds, but @YaaJ wrote up a very clear post about the number of neopixel we should use on an octopus.

And I referred to the post @Buurman made a year ago, where you also shared your LEDS.cfg configuration file. Buurman said he lights 60+3 Neopixel LEDS on his octopus.

The Daylight neopixel led design has been produced and is being sold online, to light your cases with. But it is of course not the only way to enlighten your printer box. You can simply buy a piece of LED stripe which only has an ON/OFF function and does NOT require a DATA pin, like described recently here by @YaaJ SMD or COB, 24v or 5v and then build it into your case.

Or you can buy a daylight-on-a-stick from different locations, disco-on-a-stick and connect them to your MCU. These come with a connection for 3 cables: Data, Ground, 5V, same as the stealthburner neopixels. I do not know BARF, I am guessing the big neopixel used on the Trident beds.

There is no guideline from BTT, (or fysetc / MKS/Mellow) on where to plug in your 5v / 24v leds. Most boards have a neopixel port. 

But when you want to connect your stealthburner leds and a chamber light or two chamber lights, I can imagine you could get lost. 

 

I think it's good to know that using the dedicated neopixel port is a good idea, but not the only option there is: as long as you have a 5v/data/ground, and think about the limitations of the number of max connectable leds, you have more than one options.

Connecting a 24v on/of COB/SMD stripe can be done on any 24v producing pins (BTT recommends to use HE1-HE3 ports for LEDS).

 

But the original question asked was: 

On 12/30/2023 at 6:49 PM, cjkennedy72 said:

What is the best way to connect two strips to a single header on the board?

@cjkennedy72 came up himself with the fact that these sticks have a data-in / data-out pin to solder things to. So similar to how you connect the SB neopixels, you can solder a wire from [data out] from one stick, to the other sticks [data in], which will connect them serially. The first stick would need 3 lines (data, 5v, g) and the second line just the 5v and g. Then you would connect these lines to the  respective pins on the neopixel pin. 
This solution will give you (18 neopixels on every stick), 36 addressable leds for your chamber. 

If you connect both sticks with data/5v/g and connect these lines to the MCU neopixel port, you will have connected them in parallel, and will have 18 adressable leds. But still use power for 36 leds.

If you want to use the cool Julian Schill led library thats mentioned in the other thread, I think you should go for solution 1 🙂

  • Like 1
Link to comment
Share on other sites

Posted (edited)

@Dirk I gave a lot of thought to either wiring them in serial as you describe as option 1, or as @claudermilk suggests, using the bltouch header for the second strip. At the end of the day, I know myself well enough to know I am not going to go crazy with lighting effects.

The LED project is cool, and I am probably going to implement it on the VZTrident I am waiting on magnets for and the 400mm Trident tool changer that is up next. This time around, I just wanted working lights that look better than the chopped-up USB light strip wired poorly around the top that I put in place to get the printer up and the cam feed viewable.

Edited by cjkennedy72
  • Like 2
Link to comment
Share on other sites

What you said is absolutely true. There's no case lighting in the basic printer BOMs, and the Stealthburner just adds three, which you can easily skip. These are an add-on mod as much for fun as anything else. I had to do a lot of digging around to find the information on it myself. That's where i learned about using the BL Touch port on the Octopus. I also read accounts of using a whole lot more LEDs on the 5v rail (I think the high I saw was about 78?), so I knew what I'm using was easily within the capabilities.

I do use the Julian Schill libraries and they are great. Yes, I have a whole light show going on, but I also know just by glancing at the printers exactly what they are up to. One of my favorites is the progress meter overlay on the case lighting. I know how far along the job is just walking by the printer. 😁

  • Like 2
Link to comment
Share on other sites

I setup my printers by default with the DAYLIGHT led strips, they are absolutely awesome, but no colors. You put them on a 24v out of your octopus board, and you can adjust them in brightness from Klipper.

Believe me.... 40% is often enough light.. they are amazing... super simple, and never had a broken led or strip.

  • Like 2
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...