440 LEDs - Two bladePowerPins Are enough?

I’m about to hook up a 440 LED zig zag quad blade (blade section below) to a 3.9 board and suddenly thought “that’s a lot of LEDs”. Is it cool to just use 2 bladePowerPins, or is there some kind of risk of too much current?

They’re mini skinny strips from Electronics123.

BladeConfig blades[] = {
{ 0,
  SubBlade(0, 109, WS281XBladePtr<439, bladePin, Color8::GRB, PowerPINS<bladePowerPin2, bladePowerPin3> >()),
  SubBladeReverse(110, 220, NULL),
  SubBlade(221, 328, NULL),
  SubBladeReverse(329, 439, NULL),

  CONFIGARRAY(presets) },
};

Skinny strips usually draw less power per LED (and are also less bright, per LED), so I would think two FETs is still fine. I think my rule of thumb is ~5A per FET or so. (They can handle more, but at that point they start getting warm, which is potentially a problem.)

1 Like

This says 144, I think you want it to say 439.

1 Like

I should maybe also point out that in my quad-blade (which has 529 leds) I use three FETs, and I also made sure to use an 11-pin pogo pin PCB to have as little resistance as possible.

1 Like

Yes. Yes I do thank you

No pins, the blade is fixed and will be wired to the board directly.

Clarifying after fixing my typos, since my total is 440 LEDs, I think I want to say 440. So I get:

BladeConfig blades[] = {
{ 0,
  SubBlade(0, 109, WS281XBladePtr<440, bladePin, Color8::GRB, PowerPINS<bladePowerPin2, bladePowerPin3> >()),
  SubBladeReverse(110, 220, NULL),
  SubBlade(221, 328, NULL),
  SubBladeReverse(329, 439, NULL),

  CONFIGARRAY(presets) },
};

Otherwise I think I miss 1 LED.

Is that right, or do I need to account for the 0 as the first LED like in the rest of the blade array?

This is correct. You specify the actual number of LEDs (1-indexed) inside WS281XBladePtr, and then for subblades you use the zero-indexed values.

1 Like

However, I would assume those 440 are evenly distributed? Why does the second subblade end at 220 (and so on, things don’t seem to add up)?

I would expect your blade array to look more like:

BladeConfig blades[] = {
{ 0,
  SubBlade(0, 109, WS281XBladePtr<440, bladePin, Color8::GRB, PowerPINS<bladePowerPin2, bladePowerPin3> >()),
  SubBladeReverse(110, 219, NULL),
  SubBlade(220, 329, NULL),
  SubBladeReverse(330, 439, NULL),

  CONFIGARRAY(presets) },
};

I appreciate that!

My strips are indeed uneven. I cut them by eye and slightly offset them. They don’t need to wrap over the outer tip because this isn’t a saber and there a solid cap on the end. So ultimately I counted them by hand after I set them on the core rod. And this is the garbage I made :slight_smile:

1 Like

Hah, gotcha. So long as you’re aware and it’s correct (well, relatively speaking) :laughing:

1 Like

Encouraged to take another look, I redid my count and the math.

I was not correct, but I think this is :slight_smile:

BladeConfig blades[] = {
{ 0,

//110 LEDs
  SubBlade(0, 109, WS281XBladePtr<439, bladePin, Color8::GRB, PowerPINS<bladePowerPin2, bladePowerPin3> >()),
//109 LEDs
  SubBladeReverse(110, 218, NULL),
//110 LEDs
  SubBlade(219, 328, NULL),
//110 LEDs
  SubBladeReverse(329, 438, NULL),
//439 LEDs total

  CONFIGARRAY(presets) },
};
#endif

EDIT: this blade array is corrected

388 → 328 maybe?

Ha, yup. Thanks.