Primeiros passos com a LED Driver Board for XIAO

A LED Driver Board for XIAO é uma solução compacta porém poderosa que oferece suporte a fitas de LED de 5V e 12V, incluindo LEDs RGB endereçáveis populares como NeoPixel WS2812, WS2813, WS2815. Compatível com todas as placas XIAO, ela permite controle inteligente e automação por meio de WLED e Home Assistant quando usada com a XIAO ESP32 Série, ao mesmo tempo em que oferece opções de alimentação flexíveis e proteção abrangente para uma operação segura e confiável em sua configuração de iluminação.
Introdução
Características
-
Ampla compatibilidade com LEDs
Driver versátil que oferece suporte a fitas de LED 5V/3A e 12V/2A com regulação de energia integrada. Compatível com LEDs monocromáticos e RGB endereçáveis, incluindo NeoPixel WS2811, WS2812(B), WS2813, WS2815, SK6812 e outros LEDs com protocolo de 1 fio, proporcionando amplas opções de iluminação.
-
Compatibilidade com XIAO para controle inteligente
Projetada para todas as placas Seeed Studio XIAO. Quando usada com a XIAO ESP32 Série (ESP32-C3/S3/C6), desbloqueia recursos inteligentes por meio de:
- Suporte ao app WLED - Controle cores, efeitos, brilho e crie animações personalizadas (XIAO ESP32C3 é altamente recomendada)
- Integração com Home Assistant via ESPHome - Habilite controle remoto, automação e cenários de casa inteligente
-
Compatibilidade com o ecossistema Grove
A interface Grove onboard plug-and-play é compatível com mais de 400 módulos Seeed Studio, permitindo aprimorar facilmente a interatividade da iluminação com o ambiente e o movimento para efeitos mais inteligentes e personalizados:
-
For AI Vision Detection -
For Temperature & Humidity DetectionGrove - Temperature & Humidity Sensor (DHT11)
Grove - AHT20 I2C Industrial Grade Temperature&Humidity Sensor
-
For Motion Detection
-
Especificações
| Item | Detalhe |
|---|---|
| Entrada de energia | DC 12V/2A |
| Suporte de alimentação para LED | DC 12V / DC 5V |
| Corrente máxima de operação | 12V/2A 5V/3A |
| Conector de LED | Conector borne de parafuso 4 pinos 3,81mm: 12V | 5V | A0 | GND |
| Conector Grove I²C | D5 | D4 | 5V | GND |
| Botão do usuário | D3 |
| Header de pinos do usuário | SPI x1, Uart x1, Digital x2 |
Visão geral do hardware

Entrada de energia adaptada
- PowerAdapter, 12V/2A/24W, European Standard Plug, DC Output
- PowerAdapter, 12V/2A/24W, American Standard Plug, DC Output
- Outro adaptador de energia DC 12V com plugue 5.5mm x 2.1mm x 10±0.3mm
- Fio DC 12V
Guia de LEDs suportados
| Produto | Nome | Tensão de operação | Conectar via |
|---|---|---|---|
![]() | Grove - RGB LED (WS2813 Mini) | 5V | Grove |
![]() | Grove - RGB LED Stick (10-WS2813 Mini) | 5V | Grove |
![]() | Grove - RGB LED Stick (15-WS2813 Mini) | 5V | Grove |
![]() | Grove - RGB LED Stick (20-WS2813 Mini) | 5V | Grove |
![]() | Grove - Anel RGB LED (16-WS2813 Mini) | 5V | Grove |
![]() | Grove - Anel RGB LED (20-WS2813 Mini) | 5V | Grove |
![]() | Grove - Anel RGB LED (24-WS2813 Mini) | 5V | Grove |
![]() | Grove - Anel RGB LED Ultimate | 5V | Grove |
![]() | Grove - WS2813B RGB LED Flexi-Strip 30 LED/m - 1m | 5V | Terminal Block |
![]() | Grove - WS2813B RGB LED Flexi-Strip 60 LED/m - 1m | 5V | Terminal Block |
![]() | Grove - WS2813 RGB LED Strip à prova d'água - 30 LED/m - 1m | 5V | Grove |
![]() | Grove - WS2813 RGB LED Strip à prova d'água - 60 LED/m - 1m | 5V | Grove |
Primeiros passos
Esta placa de driver de LED é projetada especificamente para a série Seeed Studio XIAO. Sua funcionalidade varia dependendo do microcontrolador XIAO emparelhado. Por exemplo, quando usada com a XIAO nRF52840, ela pode ler os dados da IMU onboard para mudar dinamicamente as cores dos LEDs. Quando emparelhada com placas da série ESP32, pode ser integrada ao Home Assistant para um controle de casa inteligente perfeito. Além disso, com a XIAO ESP32-C3, ela oferece suporte à execução de WLED para efeitos avançados de LED. Siga o tutorial abaixo para explorar essas capacidades em detalhes.
Brincar com Arduino
Você precisa configurar o ambiente Arduino para o XIAO e adicionar o pacote onboard.
Se esta é a sua primeira vez usando o Arduino, recomendamos fortemente que você consulte Primeiros passos com Arduino.
Preparação de software
Passo 1. Inicie o aplicativo Arduino.

Passo 2. Selecione o modelo da sua placa de desenvolvimento e adicione-o ao Arduino IDE.
-
Se você quiser usar Seeed Studio XIAO SAMD21 para as rotinas posteriores, consulte este tutorial para concluir a adição.
-
Se você quiser usar Seeed Studio XIAO RP2040 para as rotinas posteriores, consulte este tutorial para concluir a adição.
-
Se você quiser usar Seeed Studio XIAO RP2350 para as rotinas posteriores, consulte este tutorial para concluir a adição.
-
Se você quiser usar Seeed Studio XIAO nRF52840 para as rotinas posteriores, consulte este tutorial para concluir a adição.
-
Se você quiser usar Seeed Studio XIAO ESP32C3 para as rotinas posteriores, consulte este tutorial para concluir a adição.
-
Se você quiser usar Seeed Studio XIAO ESP32C6 para as rotinas posteriores, consulte este tutorial para concluir a adição.
-
Se você quiser usar Seeed Studio XIAO ESP32S3 para as rotinas posteriores, consulte este tutorial para concluir a adição.
-
Se você quiser usar Seeed Studio XIAO RA4M1 para as rotinas posteriores, consulte este tutorial para concluir a adição.
-
Se você quiser usar Seeed Studio XIAO MG24 para as rotinas posteriores, consulte este tutorial para concluir a adição.
Passo 3. Instale as bibliotecas necessárias.
- Abra o Arduino IDE, navegue até Sketch > Include Library > Manage Libraries... para pesquisar a biblioteca, digite a palavra-chave "Adafruit_NeoPixel" no Arduino Library Manager e instale a versão mais recente.

- Baixe a biblioteca Seeed_Arduino_LSM6DS3 como um arquivo zip, abra o Arduino IDE, navegue até Sketch > Include Library > Add .ZIP Library... e abra o arquivo zip baixado.

Exemplo simples
Passo 1. Preparação de hardware
| Seeed Studio XIAO RP2350 | Placa Controladora de LED para XIAO | Grove - RGB LED Stick (15-WS2813 Mini) |
|---|---|---|
![]() | ![]() | ![]() |
Passo 2. Conecte Seeed Studio XIAO RP2350, a Placa Controladora de LED para XIAO e o Grove - RGB LED Stick (15-WS2813 Mini) como mostrado abaixo:

Passo 3. O seguinte programa de exemplo controla LEDs contendo 3 NeoPixel para que cada um dos três LEDs exiba as cores vermelho, verde e azul
#include <Adafruit_NeoPixel.h>
// Which pin on the Arduino is connected to the NeoPixels?
#define PIN D5
// How many NeoPixels are attached to the Arduino?
#define NUMPIXELS 3
// When setting up the NeoPixel library, we tell it how many pixels,
// and which pin to use to send signals. Note that for older NeoPixel
// strips you might need to change the third parameter -- see the
// strandtest example for more information on possible values.
Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
void setup() {
pixels.begin(); // INITIALIZE NeoPixel strip object
}
void loop() {
pixels.clear(); // Set all pixel colors to 'off'
// pixels.Color() takes RGB values, from 0,0,0 up to 255,255,255
// The first NeoPixel in a strand is #0, second is 1, all the way up
pixels.setPixelColor(0, pixels.Color(255, 0, 0));
pixels.setPixelColor(1, pixels.Color(0, 255, 0));
pixels.setPixelColor(2, pixels.Color(0, 0, 255));
// pixels.setBrightness() takes brightness values, from 0 up to 255
pixels.setBrightness(255);
pixels.show(); // Send the updated pixel colors to the hardware.
}
Envie o programa e alimente a Placa Controladora de LED; se tudo correr bem, você verá algo assim:

LED com sincronização de cor e movimento
Passo 1. Preparação de hardware
| XIAO nRF52840 | Placa Controladora de LED para XIAO | LED WS2812 |
|---|---|---|
![]() | ![]() | ![]() |
Passo 2. Conecte Seeed Studio XIAO nRF52840, a Placa Controladora de LED para XIAO e o LED WS2812 como mostrado abaixo:

Passo 3. O código a seguir funciona lendo os dados do sensor de aceleração LSM6DS3 onboard do XIAO nRF52840 e alterando a cor da tira de LED em tempo real, com a cor mapeada a partir do valor atual de aceleração.
#include <Arduino.h>
#include "LSM6DS3.h"
#include <Adafruit_NeoPixel.h>
#include "Wire.h"
#include "math.h"
// Define the pin connected to the NeoPixel data input
#define PIN A0
// Total number of NeoPixel LEDs
#define NUMPIXELS 300
// Create a NeoPixel strip object
Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
// Variables for accelerometer data
float ax = 0;
float ay = 0;
float az = 0;
// RGB color components
uint8_t r = 0;
uint8_t g = 0;
uint8_t b = 0;
// Packed 24-bit RGB color value
uint32_t packedRGB = 0;
// Create an instance of the LSM6DS3 IMU in I2C mode at address 0x6A
LSM6DS3 myIMU(I2C_MODE, 0x6A);
void setup() {
Serial.begin(9600);
// Initialize the IMU sensor and check for errors
if (myIMU.begin() != 0) {
Serial.println("Device error");
} else {
Serial.println("Device OK!");
}
// Initialize the NeoPixel strip
pixels.begin();
}
void loop() {
// Read acceleration values from the IMU
ax = myIMU.readFloatAccelX();
ay = myIMU.readFloatAccelY();
az = myIMU.readFloatAccelZ();
// Map acceleration (-1g to +1g) to RGB values (0 to 255)
// Centered at 128 to allow both positive and negative variations
r = constrain(ax * 100 + 128, 0, 255);
g = constrain(ay * 100 + 128, 0, 255);
b = constrain(az * 100 + 128, 0, 255);
// Combine RGB components into a single 24-bit color value
packedRGB = (r << 16) | (g << 8) | b;
// Clear all existing pixels
pixels.clear();
// Fill all LEDs with the computed color
pixels.fill(packedRGB, 0, NUMPIXELS);
pixels.setBrightness(255);
pixels.show();
delay(100);
}
Carregue o programa e alimente a LED Driver Board; se tudo correr bem, você verá algo assim:
Quando você sacode o módulo, a cor da tira de luz muda. Quanto mais forte a agitação, mais brilhante a cor.
Brinque com o Home Assistant via ESPHome
Preparação de hardware
| Dispositivos Home Assistant |
|---|
![]() |
Preparação de software

ESPHome é uma ferramenta que tem como objetivo tornar o gerenciamento das suas placas ESP o mais simples possível. Ele lê um arquivo de configuração YAML e cria um firmware personalizado que é instalado no seu dispositivo ESP. Dispositivos ou sensores adicionados na configuração do ESPHome aparecerão automaticamente na interface do Home Assistant. O ESPHome pode ajudar você a conectar e enviar os dados para dispositivos Home Assistant.
Se esta é a sua primeira vez usando Home Assistant e ESPHome, você pode seguir aqui para um guia passo a passo sobre como instalar o Home Assistant.
ESPHome está disponível como um Add-On do Home Assistant e pode ser simplesmente instalado pela loja de add-ons.

- Passo 1. Clique em INSTALL

- Passo 2. Ative todas as opções e clique em START

Você verá a seguinte janela se o ESPHome for carregado com sucesso

LEDs sincronizados com a cor da temperatura
Passo 1. Preparação de hardware
| XIAO ESP32S3 | LED Driver Board for XIAO | Grove - Temperature & Humidity Sensor (DHT11) | WS2812 LED |
|---|---|---|---|
![]() | ![]() | ![]() | ![]() |
Passo 2. Conecte o Seeed Studio XIAO ESP32S3, a LED Driver Board for XIAO e o WS2812 LED como mostrado abaixo:

Passo 3. Abra a página do ESPHome e clique em + NEW DEVICE

Passo 4. Clique em CONTINUE

Passo 5. Digite um Name para o dispositivo e insira as credenciais de Wi-Fi, como Network name e Password. Em seguida, clique em NEXT

Passo 6. Selecione ESP32-S3 e clique

Passo 7. Clique em SKIP porque vamos configurar esta placa manualmente

Passo 8. Clique em EDIT abaixo da placa recém-criada

Passo 9. Copie os seguintes códigos para o final do arquivo .yaml; o XIAO ESP32S3 lê a temperatura de um sensor DHT11 e altera a cor de um LED RGB com base em quão distante a temperatura está de um valor alvo, usando azul para frio, vermelho para quente e verde para normal.
# DHT11 temperature and humidity sensor
sensor:
- platform: dht
pin: GPIO6
model: DHT11 # Change to DHT22 or AM2302 if using a different model
temperature:
name: "Temperature"
id: temp_sensor
humidity:
name: "Humidity"
update_interval: 3s # Read new values every 3 seconds
# RGB LED (WS2812 single LED)
light:
- platform: neopixelbus
variant: ws2813 # ⚠️ Adjust based on your actual LED type (e.g., ws2812, ws2813, sk6812)
type: GRB # Color order (Green-Red-Blue)
pin: GPIO1
num_leds: 50 # Total number of NeoPixel LEDs
name: "Temperature Color LED"
id: rgb_led
restore_mode: ALWAYS_ON
default_transition_length: 0s
# Adjustable center temperature threshold
number:
- platform: template
name: "Target Temperature" # Center temperature value
id: target_temp
optimistic: true
min_value: 0
max_value: 40
step: 0.1
initial_value: 20.0 # Default center temperature (°C)
- platform: template
name: "Temperature Tolerance" # Tolerance around target temperature
id: temp_tolerance
optimistic: true
min_value: 0
max_value: 10
step: 0.1
initial_value: 5.0 # Default tolerance value (°C)
# Every 3 seconds, the LED color is updated:
# - Blue if too cold (below center - tolerance),
# - Red if too hot (above center + tolerance),
# - Green if temperature is close to the center,
# - Gradient between blue–green–red in transitional ranges.
#- If the temperature is not available, the LED blinks purple to indicate a sensor error.
interval:
- interval: 3s
then:
- lambda: |-
float t = id(temp_sensor).state;
float center = id(target_temp).state;
float tolerance = id(temp_tolerance).state;
float r = 0.0, g = 0.0, b = 0.0;
float ratio = 0.0;
if (isnan(t)) {
// Flash purple to indicate missing temperature
static bool blink = false;
blink = !blink;
auto call = id(rgb_led).turn_on();
call.set_rgb(blink ? 0.5 : 0.0, 0.0, blink ? 0.5 : 0.0);
call.perform();
return;
}
// Calculate RGB values based on temperature
if (t <= (center - tolerance)) {
b = 1.0;
g = 0.0;
} else if (t >= (center + tolerance)) {
r = 1.0;
g = 0.0;
} else if (t <= center) {
ratio = (center - t) / tolerance;
b = ratio;
g = 1.0 - ratio;
} else {
ratio = (t - center) / tolerance;
r = ratio;
g = 1.0 - ratio;
}
// Update LED
auto call = id(rgb_led).turn_on();
call.set_rgb(r, g, b);
call.perform();
Passo 10. Clique no botão Install no canto superior direito. Em seguida, selecione o último item Manual download, selecione Modern format

Levará bastante tempo para fazer o download e compilar, portanto, seja paciente. Quando tudo estiver pronto, o firmware será baixado automaticamente para o seu computador.
Passo 11. Usando a ferramenta web ESPhome para enviar o firmware para o XIAO ESP32S3, clique em CONNECT

Selecione a porta serial do XIAO ESP32 na janela popup, clique em INSTALL e depois selecione o arquivo .bin baixado nos passos acima.


Passo 11. Depois que a instalação for concluída com sucesso, você verá algo assim:
Quando o ar frio é soprado para o sensor de temperatura e umidade, a cor da faixa de LED muda gradualmente de vermelho para azul à medida que a temperatura cai.
Passo 12. Adicionar ao Dashboard
Abra Setting >> Devices & Services, você pode encontrar o seu dispositivo ESPhome, clique em ADD e adicione-o ao dashboard, você verá algo assim:





Executar WLED
Preparação de hardware
| XIAO ESP32C3 | LED Driver Board for XIAO | WS2812 LED |
|---|---|---|
![]() | ![]() | ![]() |
Conecte o Seeed Studio XIAO nRF52840, a LED Driver Board for XIAO e o LED WS2812 como mostrado abaixo:

Instalar WLED
Passo 1. Abra WLED install web e conecte o seu XIAO ESP32C3 ao PC, clique em Install e conecte sua porta.

Passo 2. Após a instalação bem-sucedida, será necessário configurar o Wi-Fi do dispositivo; é recomendado manter o seu XIAO ESP32C3 e o seu computador/celular na mesma LAN.
Passo 3. Agora, você pode clicar em VISIT DEVICE para controlar a sua faixa de LED.

Passo 4. Ou você pode instalar o App WLED na loja de aplicativos do seu celular e encontrar o seu dispositivo de LED com o ícone de + no canto superior direito do software.
Se tudo funcionar bem, você verá algo assim:
Recursos
Suporte Técnico & Discussão de Produtos
Obrigado por escolher nossos produtos! Estamos aqui para oferecer diferentes tipos de suporte para garantir que sua experiência com nossos produtos seja a mais tranquila possível. Oferecemos vários canais de comunicação para atender a diferentes preferências e necessidades.



















