535822198b30bf21cad04530e631e668e46e9b70
LightSabre
LightSabre is a project designed to control WS281x RGB LEDs using the Secondary Memory Interface (SMI) of a Raspberry Pi, tailored for scenographic and lighting applications.
Features
- WS281x LED Control: High-performance driving of addressable RGB LEDs via the Raspberry Pi SMI.
- ArtNet Support: Receives color data over the ArtNet protocol, allowing the Raspberry Pi to function as a DMX controller.
- Standalone Mode: Analyzes audio input from an I2S microphone, performing spectral decomposition to generate dynamic lighting effects.
- Web Interface: Local web server for configuring and tweaking standalone behavior.
- MIDI Integration: Supports real-time control and parameter adjustment via MIDI controllers.
Technology Stack
- Backend: Written in Rust for robust and efficient controller logic. Some low-level operations may be implemented in C or Assembly (to be determined) for optimal performance.
- Frontend: Built with Vue.js, providing a modern and responsive web interface for configuration and control.
Use Cases
- Stage lighting and scenography
- Interactive art installations
- Music-synchronized light shows
Getting Started
- Hardware Requirements
- Raspberry Pi (any model with SMI support)
- WS281x-compatible RGB LED strip
- I2S microphone (for standalone mode)
- Optional: MIDI controller
System install
The project is design for running on top of Raspberry Pi OS Lite 32bits (formerly Raspbian).
Raspberry Pi OS Lite provides device access through file system, networking tools for network interface management, POSIX sockets, native threading, and process control, covering all system features needed by LightSabre.
What about Realtime ?
Network AP / infra
sudo raspi-config
See. nmcli
nmcli c up preconfigured
Rust
After installing Raspberry Pi OS we need to install Rust toolchain:
sudo apt update
sudo apt full upgrade -y
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
For more details : https://rustup.rs/
I2S Microphone
Documentation
License
MIT License
For detailed setup and usage instructions, see the Wiki.
Description
Languages
Rust
63.7%
C
32.7%
Shell
2.1%
CMake
0.8%
Dockerfile
0.7%