Trying to get back to basics to learn more about using serial data from

Trying to get back to basics to learn more about using serial data from a computer to address WS2812B LEDs. I am not much of a programmer so I would like to generate my RGB pixel array in visual programming software (Vuo.org) and send to a Teensy that will use FastLED to send the array to the LED. Where I am stuck on is; what does the data need to look like from the computer side in order to be understood by FastLED. I understand that I will need to create R G B values separately in terms of 0-255 (so red would be 255, 0 ,0 ) but I don’t understand how to send those values into the Teensy. Is there a good demo sketch that is specifically used for streaming serial data as fast as it can be sent into the LEDs? Please be gentle in your replies, thank you! :slight_smile:

Note, besides data in RGB format, you could also send it as HSV if you prefer to work in a certain way. Or HEX.

Rather then one at a time, it’s been suggested to read three bytes at a time for better speed.
Serial.readBytes( (char*)(&leds[i]), 3); // read three bytes at a time

If data is sent as HSV:
//Read and convert entire HSV array to RGB before showing:
Serial.readBytes( (char*)ledsHSV, NUM_LEDS * 3); // ledsHSV is second array to receive serial data
hsv2rgb_rainbow( ledsHSV, leds, NUM_LEDS); // convert
FastLED.show(); // display data

My test of reading RGB data from Glediator:
https://github.com/marmilicious/FastLED_examples/blob/master/Glediator_test1.ino

An example I had in my notes of reading serial RGB data (can’t recall where I got it):
https://gist.github.com/marmilicious/bcd3ccf8d1f4c195c153fbe06b33828e