XIAO ESP32S3 NeoPixel Rainbow Ring — Xiao Esp32S3 Sense simulation

NeoPixel rainbow animation on a 26-LED ring driven by XIAO ESP32S3 Sense via DIN on GPIO1.

An interactive Xiao Esp32S3 Sense circuit simulation you can run free in your browser on Velxio, by rsetyo-widayanto.

Components

Sketch code

// Seeed Studio XIAO ESP32S3 Sense - serial hello
void setup() {
  Serial.begin(115200);
}

void loop() {
  Serial.println("hola XIAO ESP32S3 Sense");
  delay(1000);
}
#include <Adafruit_NeoPixel.h>

#define LED_PIN   6        // Ganti sesuai pin DIN yang dipakai (D0 = GPIO1)
#define LED_COUNT 26       // Jumlah pixel di LED ring

Adafruit_NeoPixel strip(LED_COUNT, LED_PIN, NEO_GRB + NEO_KHZ800);

void setup() {
  strip.begin();
  strip.setBrightness(50);  // 0-255, atur kecerahan
  strip.show();             // Matikan semua pixel
}

void loop() {
  // Efek running rainbow
  for (int j = 0; j < 256; j++) {
    for (int i = 0; i < LED_COUNT; i++) {
      int pos = (i * 256 / LED_COUNT) + j;
      strip.setPixelColor(i, Wheel(pos & 255));
    }
    strip.show();
    delay(20);
  }
}

// Fungsi untuk menghasilkan warna pelangi dari posisi 0-255
uint32_t Wheel(byte pos) {
  pos = 255 - pos;
  if (pos < 85) {
    return strip.Color(255 - pos * 3, 0, pos * 3);
  } else if (pos < 170) {
    pos -= 85;
    return strip.Color(0, pos * 3, 255 - pos * 3);
  } else {
    pos -= 170;
    return strip.Color(pos * 3, 255 - pos * 3, 0);
  }
}

More projects by rsetyo-widayanto