Rgbw strip not doing the w when using rgb function

I have a pixelblaze v3 and am using three different BTF SK6812 60led RGBW strips…

one for natural white, one warm white and one cool white… I want to test the W to see which white works best for me…

I have the pixelblaze set for ws2812 leds, 60 of them and I try different color orders and the only time the W illuminates is with RGB… not RGBW…

code running is

export function beforeRender(delta) {
}

export function render(index) {
rgb(1.0,1.0,1.0)
}

Fascinating…

code

export function beforeRender(delta) {
}

export function render(index) {
hsv(1.0,0.0,1.0)
}

Works as expected with only the W being used (for white) in rgbw

@wizard Is this a known issue that rgbw strips only work (or more correctly the white led) with hsv and not rgb functions?

@devoh ,
Right, RGBW support is missing when using rgb() - I’ll get that in the next update.

4 Likes

I feel like this is a dumb question, but will that update also apply to GRBW?

Non-official, non @wizard answer, but I can say with almost 100% assurance, yes, it will – pretty sure the Pixelblaze only reorders colors as its sends data to the LEDs.

And in any case the ‘W’ calculation just looks at the difference between R,G, and B color values to figure out how much white ought to be present. The closer together they are, the more white. Changing color order doesn’t affect this calculation at all.

1 Like

Yep, RGBW/GRBW both.

I have this working, along a few more changes in the release. The rgb() function also didn’t support HDR e.g. with APA102/SK9822 LEDs, but that is getting fixed as well! Just a bit more to polish up on the release, and port back to V2.x.

2 Likes

Ohhhhh that explains a few things. If I have a chance to port in rgb2hsv, I’ll compare my RGB output with hsv(rgb2hsv). Otherwise I’ll wait for the update.