#include <Adafruit_NeoPixel.h>
#include <Adafruit_NeoMatrix.h>
#define PIN 13 // Data pin for RGB matrix
#define WIDTH 8
#define HEIGHT 8
Adafruit_NeoMatrix matrix = Adafruit_NeoMatrix(
WIDTH, HEIGHT, PIN,
NEO_MATRIX_TOP + NEO_MATRIX_LEFT +
NEO_MATRIX_ROWS + NEO_MATRIX_PROGRESSIVE,
NEO_GRB + NEO_KHZ800
);
void setup() {
matrix.begin();
matrix.setBrightness(150);
}
void loop() {
rainbowCycle(5); // Rainbow animation
sparkleEffect(100); // Sparkle mode
scrollText("AI Centre Nandurbar", matrix.Color(0, 0, 255)); // Scrolling text
}
// 🌈 Rainbow animation
void rainbowCycle(uint8_t wait) {
for (uint16_t j = 0; j < 256 * 5; j++) {
for (uint16_t i = 0; i < matrix.numPixels(); i++) {
matrix.setPixelColor(i, matrix.ColorHSV((i * 256 / matrix.numPixels() + j) & 255, 255, 255));
}
matrix.show();
delay(wait);
}
}
// ✨ Sparkle effect
void sparkleEffect(uint8_t delayTime) {
for (int i = 0; i < 50; i++) {
int pixel = random(matrix.numPixels());
matrix.setPixelColor(pixel, matrix.Color(random(255), random(255), random(255)));
matrix.show();
delay(delayTime);
matrix.setPixelColor(pixel, 0);
}
}
// 📝 Scrolling bilingual text
void scrollText(const char* msg, uint16_t color) {
for (int x = matrix.width(); x > -strlen(msg) * 6; x--) {
matrix.fillScreen(0);
matrix.setTextColor(color);
matrix.setCursor(x, 1);
matrix.print(msg);
matrix.show();
delay(50);
}
}
Loading
esp32-s2-devkitm-1
esp32-s2-devkitm-1