The ledStripButton
project is designed for ESP-IDF framework, utilizing WS2812 LED strips. It showcases how to control LED strips with custom lighting patterns and integrate command-line controls for dynamic lighting adjustments.
To use this project, clone the repository and navigate into the project directory:
git clone https://github.com/EECS-SupportingGroup/ledStripButton.git
cd ledStripButton
Ensure you have ESP-IDF environment set up according to ESP-IDF Programming Guide.
- Description: Provides a command-line interface (CLI) for controlling an LED indicator. It supports starting and stopping the LED blinking, along with preemptive control commands.
- Files:
cmd_led_indicator.c
: Implements the CLI commands.cmd_led_indicator.h
: Header file with function declarations for CLI commands.
- Description: A custom component for controlling WS2812 LED strips. It offers an API for setting the color of individual LEDs, enhancing flexibility in creating various lighting effects.
- Files:
led_strip_ws2812_custom.c
: Contains the API function implementations for controlling the LED strip.led_strip_ws2812_custom.h
: Header file with API function declarations and LED strip structure.Kconfig.projbuild
: Specifies GPIO pin configuration for the LED strip.
The main application (main/main.c
) initializes the LED strip and creates a task to control the LED patterns. It demonstrates various lighting effects, including blinking, breathing, and color gradients.
To build and flash the project to an ESP32 device, use:
idf.py build
idf.py -p (PORT) flash
Replace (PORT)
with the COM port your ESP32 device is connected to.
This project is licensed under the Apache 2.0 License - see the LICENSE file for details.