BL Led Controller
The BL Led Controller is an ESP8266 / ESP32 based device that connects to your Bambulab X1,X1C,P1P Or P1S and controls the LED strip based on the state of the printer.
Features
- Connects to Bambulab X1,X1C,P1P Or P1S
- Controls LED strip based on printer state
Development Environment
To contribute to the BL Led Controller project, you'll need the following tools:
Tools & Libraries Used
- Visual Studio Code: A lightweight and powerful source code editor.
- PlatformIO: An open-source ecosystem for IoT development.
- Python: A programming language used for scripting and automation.
- qpdf: A command-line tool and library of compression tools (
gzip
)
Building and Running the Project
- Clone the repository to your local machine.
- Open the project folder in Visual Studio Code.
- Ensure that PlatformIO is installed and configured in your Visual Studio Code environment.
- Connect your BLLED device (ESP8266 or ESP32) to your computer.
- Build the project by clicking on the PlatformIO icon in the sidebar and selecting "Build" from the available options.
- Once the build process is complete, upload the firmware to your device using the "Upload" option in PlatformIO.
- After uploading the firmware, your BL Led Controller device should be ready to use.
Setup Instructions
Once you have uploaded the firmware to your device, please visit the dutchdevelop.com/bl-led-controller website for detailed setup instructions.
Development Notes
Generating .h Files for Compressed HTML
In embedded applications, HTML content is efficiently stored in PROGMEM memory. To achieve this, .h files are generated from compressed HTML files for webpages (i.e., src/www/setuppage.html
) that are run on the device.
- The
compress_html.py
is used to compress HTML files and generate corresponding .h files and is integrated into the build process and executed as a pre-build step in platform.ini
- The generated .h files should not be checked into git (see
.gitignore
)
License
The BL Led Controller is released under Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) license. See the LICENSE file for more details.
Credits
Author
This project was created by DutchDeveloper.