RGB hue sweep

The datastream for WS2812 is serial and runs separately to J8/9, so matrix events don’t make sense. Instead, each LED needs its own EVENT_RGBLED. The current _NG implementation can either change the hue (colour) or the value (brightness) when dimmed=1.

Let me know if you want some PCBs and/or encoders.

Best,
Andy

Hm okay. But if I have a strip of 6 LEDs and I want them to show the status of a fader or encoder like a led-bar or led-ring which sends f.e. CC16, how to do that? Or isn’t it possible yet? Maybe I could assign different ranges to the LEDs…this is the only workaround I could think of at the moment  

i have another idea for lightning the encoders. So no need for PCBs or encoders. Will share it as soon as I’ve tested it. :wink:

I tried now a few different things but I was not able to get a few WS2812-LEDs working as LED-Ring or bar. 

Any ideas how to get this working?

Okay! I got it! 

This code works great:

EVENT\_RGBLED id=1 type=cc cc=16 rgb=0:5:0 dimmed=1 range=MAP1 EVENT\_RGBLED id=2 type=cc cc=16 rgb=0:5:0 dimmed=1 range=MAP2 EVENT\_RGBLED id=3 type=cc cc=16 rgb=0:5:0 dimmed=1 range=MAP3 EVENT\_RGBLED id=4 type=cc cc=16 rgb=0:5:0 dimmed=1 range=MAP4 EVENT\_RGBLED id=5 type=cc cc=16 rgb=8:5:0 dimmed=1 range=MAP5 EVENT\_RGBLED id=6 type=cc cc=16 rgb=5:0:0 dimmed=1 range=MAP6 MAP1/BYTEI 0:0 21:127 MAP2/BYTEI 0:0 21:0 42:127 MAP3/BYTEI 0:0 42:0 63:127 MAP4/BYTEI 0:0 63:0 84:127 MAP5/BYTEI 0:0 84:0 105:127 MAP6/BYTEI 0:0 105:0 127:127 

 

Hey people,

I have an idea in mind but I don’t know if it’s possible to program it. It seems like a challenge.

Let’s assume we have a midi-keyboard and a strip of WS2812 on top of the keys. What I want to do is, visualizing the split-zones of the keyboard. My DAW is able to send tons of different values f.e. CC, NoteOn, SysEx, NRPN, and so on.
My first idea was to assign a CC to the LEDs f.e. CC16. If I now send CC64 to the MIDIbox, all LEDs would light up which are <= 64. But what if I only want LED10-LED16 to light up and not the LEDs which are lower than that? 
Another idea: Assign a CC-value to every LED f.e. value 0 = LED1, value 1 = LED2, etc. But that would mean, that A LOT of MIDI data has to be sent to the MIDIbox on patch-change.

So is there anything I overlook? Do you have any other ideas how to address a range of WS2812 LEDs?

Thanks,
Chris 

Hey people,

I ordered a new bunch of WS2812B LEDs. The problem: They are not working! I tested them in the same environment as the last bunch, which worked great. But the new LEDs do not.
I at first thought that I received the wrong LEDs. But I doublechecked with an Arduino and they work well on those as well as my old LEDs. 

I tried to replace the pullup with a 470Ohm and a 10k but both is not working.

Any ideas?

I think what has happened is the newer batch is set up to use a different clock frequency. Hopefully that’s all.

This is all I know:

https://www.muffwiggler.com/forum/viewtopic.php?p=2542218#2542218

Thanks for that hint! I found that document:

Now I need to figure out, how I make the adjustments to the firmware… if even possible?

There is a post from Adafruit where they report the new LEDs. And they say that they had to adjust the reset-time and everything went well again.

But in the midibox code I do not see any kind of reset-feature…

It seems that I’ve got it working. I changed in ws2812.c this line

#define WS2812\_BUFFER\_SIZE (((WS2812\_NUM\_LEDS+2)\*24)) // +2\*24 to insert the RESET frame

to

#define WS2812\_BUFFER\_SIZE (((WS2812\_NUM\_LEDS+2)\*24)+200) // +2\*24 to insert the RESET frame

because of the 300us reset, the 2017 WS2812B need.

The LEDs are now working. I didn’t do a mass-test, but it looks promising.