BLE‑контроллер для адресной светодиодной ленты. Код прошивки: drum_led.ino.
- Переключение режимов с телефона по BLE
- Управление яркостью и скоростью
- Выбор цвета или диапазона цветов (в т.ч. для BPM)
- Переключение режимов кнопкой на устройстве
Контроллер: ESP32-C3 MINI (AliExpress).
Лента: адресная типа WS2812B / WS2813 / SK6812 (NeoPixel‑совместимая), 5V, GRB, 800kHz.
Рекомендуемая: WS2813, White PCB, 5M 60 IP65 (AliExpress).
Дополнительно:
- Блок питания 5V с запасом по току
- Кнопка (momentary) для переключения режимов
- Опционально: цифровой микрофон/датчик удара (пин
MIC_DIGITAL_PIN)
Рекомендации по монтажу:
- Конденсатор 1000µF 6.3V+ между 5V и GND рядом с лентой
- Резистор 330–470Ω в разрыв линии DATA
- При длинных линиях — level shifter (например 74AHCT125)
В худшем случае 1 LED ≈ 60mA на белом. Пример: 82 LED → ~5A. Блок питания берите с запасом.
В начале drum_led.ino:
LED_PIN_1,LED_PIN_2— DATA двух лентBUTTON_PIN— кнопкаMIC_DIGITAL_PIN— цифровой вход от микрофона/датчика удара
На части плат ESP32 GPIO1 — UART TX (Serial); при использовании его под DATA логи по Serial недоступны.
- Device name:
LED Strip Controller - Service UUID:
4fafc201-1fb5-459e-8fcc-c5c9c331914b - Characteristics: MODE, COLOR, SPEED, BRIGHTNESS — см.
FIRMWARE.md.
- Arduino IDE: установить ESP32 core и библиотеку Adafruit NeoPixel.
- Открыть
drum_led.ino, выбрать плату ESP32C3 Dev Module (или аналог для ESP32-C3 MINI), порт. - Проверить пины и количество LED в коде.
- Загрузить прошивку.
Приложение для управления — в отдельном репозитории, использует те же BLE UUID.
- FIRMWARE.md — пины, UUID, прошивка
- SECURITY.md — сообщение об уязвимостях
- CONTRIBUTING.md — как участвовать
MIT, см. LICENSE.
BLE controller for addressable LED strip. Firmware: drum_led.ino.
- Switch modes from phone via BLE
- Brightness and speed control
- Single color or color range (e.g. for BPM)
- Mode switch via onboard button
Controller: ESP32-C3 MINI (AliExpress).
Strip: addressable WS2812B / WS2813 / SK6812 (NeoPixel‑compatible), 5V, GRB, 800kHz.
Recommended: WS2813, White PCB, 5M 60 IP65 (AliExpress).
Also: 5V PSU with headroom, momentary button for mode switch, optional digital mic/kick sensor (pin MIC_DIGITAL_PIN).
Mounting: 1000µF 6.3V+ cap between 5V and GND near strip; 330–470Ω resistor in DATA line; level shifter (e.g. 74AHCT125) for long lines.
Worst case ~60mA per LED on white. Example: 82 LEDs → ~5A. Use a PSU with headroom.
In drum_led.ino: LED_PIN_1, LED_PIN_2 (strip DATA), BUTTON_PIN, MIC_DIGITAL_PIN. On some ESP32 boards GPIO1 is UART TX; using it for DATA disables Serial logs.
Device name: LED Strip Controller. Service UUID: 4fafc201-1fb5-459e-8fcc-c5c9c331914b. Characteristics: MODE, COLOR, SPEED, BRIGHTNESS — see FIRMWARE.md.
- Arduino IDE: install ESP32 core and Adafruit NeoPixel.
- Open
drum_led.ino, select ESP32C3 Dev Module (or equivalent for ESP32-C3 MINI), port. - Check pins and LED count in code. Upload.
The control app lives in a separate repo and uses the same BLE UUIDs.
- FIRMWARE.md — pins, UUIDs, flashing
- SECURITY.md — reporting vulnerabilities
- CONTRIBUTING.md — how to contribute
License: MIT, see LICENSE.