The BLSmartflow is an ESP32 based device that connects to your Bambulab X1,X1C,P1P Or P1S and controls fans based on the temperature of the printer.
- Connects to Bambulab H2D,X1,X1C,P1P Or P1S
- Controls Fans based on printer temperature
To contribute to the Smartflow project, you'll need the following tools:
- 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)
- 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 Smartflow device 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 BLSmartflow device should be ready to use.
Once you have uploaded the firmware to your device, please visit the dutchdevelop.com/blsmartflow website for detailed setup instructions.
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.pyis used to compress HTML files and generate corresponding .h files and is integrated into the build process and executed as a pre-build step inplatform.ini - The generated .h files should not be checked into git (see
.gitignore)
The BLSmartflow 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.
- DutchDeveloper: Lead programmer
- xps3riments: Inspiration for the foundation of the code
- longrackslabs: Build process, documentation, developer & community support
This project was created by DutchDeveloper.