Description
RBG LED is a extendable strip light with RGB LED lined on. Just in case you haven’t heard about RBG LED yet, RBG LED features digitally addressable LEDs,which means each led can display RGB color and brightness individually. It is very easy to program by Single-BUS with simple protocol. Another feature is the extension and flexiblulity.You can even connect many of them up together to create a massive long LED display. It's important to note that, the brightness and the quantity of LEDs matters the most to the power consuming, if you have a bunch of them connectted up, you will need extra power supply.
Notice: please pay attention to the direction of the input port and output port
Product Features
- Alternative length: 10cm/20cm/0.5m/1m/2m
- Sofeware Development Platform: Arduino, UIFlow(Blockly,Python)
- extendable
Kit includes
- 1x RGB LED Unit
- 1x Grove Cable
Documents
Learn
Example
1. Arduino IDE
To get complete code, please click here。
/*
Install FastLED library first.
*/
#include <M5Stack.h>
#include "FastLED.h"
#define Neopixel_PIN 21
#define NUM_LEDS 30
CRGB leds[NUM_LEDS];
uint8_t gHue = 0;
static TaskHandle_t FastLEDshowTaskHandle = 0;
static TaskHandle_t userTaskHandle = 0;
void setup(){
Serial.begin(115200);
M5.begin();
M5.Lcd.clear(BLACK);
M5.Lcd.setTextColor(YELLOW); M5.Lcd.setTextSize(2); M5.Lcd.setCursor(40, 0);
M5.Lcd.println("Neopixel example");
M5.Lcd.setTextColor(WHITE);
M5.Lcd.setCursor(0, 25);
M5.Lcd.println("Display rainbow effect");
// Neopixel initialization
FastLED.addLeds<WS2811,Neopixel_PIN,GRB>\
(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);
FastLED.setBrightness(10);
xTaskCreatePinnedToCore(FastLEDshowTask, \
"FastLEDshowTask", 2048, NULL, 2, NULL, 1);
}
void loop(){
}
void FastLEDshowESP32(){
if (userTaskHandle == 0){
userTaskHandle = xTaskGetCurrentTaskHandle();
xTaskNotifyGive(FastLEDshowTaskHandle);
const TickType_t xMaxBlockTime = pdMS_TO_TICKS( 200 );
ulTaskNotifyTake(pdTRUE, xMaxBlockTime);
userTaskHandle = 0;
}
}
void FastLEDshowTask(void *pvParameters){
for(;;){
fill_rainbow(leds, NUM_LEDS, gHue, 7);// rainbow effect
FastLED.show();// must be executed for neopixel becoming effective
EVERY_N_MILLISECONDS( 20 ) { gHue++; }
}
}
2. UIFlow
To get the complete code, please click here.
More information
PinMap
M5Core(GROVE A) | GPIO22 | GPIO21 | 5V | GND |
RGB LED Unit | / | Signal Pin | 5V | GND |