Subblades, wiring and will it work?

Hi all

thanks for taking a peak. I am currently building my MoM with crystal chamber finally and was just wanting to confirm how i am handling the data line and if it will work

it will first go to a single Adafruit NeoPixel RGB Accent 5050 LED for the crystal chamber and will use data in and then the data out will go to the data in on a 3535 (BTF Lighting) WS2812B strip cut to 6 pixels for a plasma chamber and then data out to the NPXL V4 Hilt Side PCB Connector

what i was hoping to do was fold the 6 pixel strip in half so 3 on each side and then programe that as 2 blades pixel 1,2 and 3 is fine but can i then program it so that it goes 6,5 and then 4? for example 1 and 6 light up, then 2 and 5 and finally 3 and 4?

i hope this makes sense, as i struggle to get whats in my brain into text at times

I’ve never done it but I think you can just specify that 3 pixel part (4,5,6 of the plasma 6px strip) as SubBladeReverse, leaving the others plain SubBlade.

1 Like

This is basically a small zig-zag blade.

is that good or bad?

Yes, that should work fine. You can mix subblade and subbladereverse on the same data line as I’ve done it myself in the past.

So if I’ve understood it right you will have:

  • Blade 1 - 1 pixel
  • Blade 2 - 3 pixels
  • Blade 3 - 3 pixels but running in reverse
  • Blade 4 - Main blade of 132 pixels or whatever.

So assuming a main blade of 132 pixels, your blade array would look something like this:

BladeConfig blades[] = {
   { 0,
//  Crystal:
    SubBlade (0, 0, WS281XBladePtr<139, bladePin, Color8::GRB, PowerPINS<bladePowerPin2, bladePowerPin3>>()),
//  Strip 1 to 3:
    SubBlade(1, 3, NULL), 
//  Strip 6 to 4:
    SubBladeReverse(4, 6, NULL),
//  Main Blade:
    SubBlade(7, 138, NULL),
CONFIGARRAY(presets) },
1 Like

Excellent, thank you all

Personally, I write them in the reverse order of above. Doesn’t matter, just saying you can.

BladeConfig blades[] = {
   { 0,
//  Main Blade:
    SubBlade (7, 138, WS281XBladePtr<139, bladePin, Color8::GRB, PowerPINS<bladePowerPin2, bladePowerPin3>>()),
//  Strip 6 to 4:
    SubBladeReverse(4, 6, NULL),
//  Strip 1 to 3:
    SubBlade(1, 3, NULL), 
//  Crystal:
    SubBlade(0, 0, NULL),
CONFIGARRAY(presets) },
1 Like

Yeh, so would I normally - like to have the main blade first. But just wanted to show this one in order of data flow as it were. :slight_smile:

Ooooooohhhhhh, you can “count up” or “count down” in your blade array. Interesting!

Its my understanding you can list them in any order, since its essentially an address to the pixels. Although some sort of logical order makes more sense.

1 Like

You can put the subblades in any order, just remember that your styles in your presets then have to be in whatever order you pick…

2 Likes