Looking for support? Find help on discord ☝️
Firmware for the modular Split Flap Display created by Morgan Manly
- Instructables ( Original )
- Print Files ( Original, 37 characters version )
- Print Files ( Extended, 48 characters version )
- Original firmware
- Fully 3D Printed Modular Split Flap Display with 37 or 48 Characters Per Module
- Small Size, 8 Modules are 320mm, 3 Modules are 130mm Wide. 80mm tall (original version) or 94mm (extended version) tall
- Fully configurable and controllable via Web Interface
- Switch Between Operation Modes, modes include custom input, date mode, and time mode
- Configure WiFi, Timezone, and hardware settings
- MQTT Support
- OTA Firmware / Filesystem updating
| Environment | Processor | Tested Boards |
|---|---|---|
esp32_c3 (default) |
ESP32-C3FN4 | Teyleten Robot ESP32-C3-SuperMini Waveshare ESP32-C3-Zero |
esp32_s3 |
ESP32-S3FH4R2 | Waveshare ESP32-S3-Zero* ESP32-S3 Super Mini* |
* Requires manually resetting the board into firmware upload mode by holding BOOT, pressing & releasing RESET, then releasing BOOT prior to upload. After uploading is successful, either press & release RESET or power cycle the board to put it in normal operation mode.
- Install dependencies
- PlatformIO Core CLI
- Node Version Mananger
- ClangFormat (Only required if contributing code)
- Download or clone this git repository.
- Open a terminal and
cdto the project root - Install required version of npm for the project -
nvm install - Install build dependencies -
npm install - Connect the ESP32 to your computer using a USB cable.
- Build everything and upload to the board -
npm run build
- Automatically formats all source code (
npm run format- if needed ) - Compiles and minifies all frontend assets (
npm run assets) - Downloads all required arduino / esp32 libraries
- Compiles and uploads the esp32 firmware (
npm run pio:firmwareorpio run -t upload -e <environment>) - Compiles and uploads the littlefs filesystem (
npm run pio:filesystemorpio run -t uploadfs -e <environment>)
- Enjoy!
On the settings page set an OTA password to enable OTA updatable firmware. Use this same password for your auth flag in platformio.ini, and then use a device environment with *_ota appended (ie esp32_s3_ota) to upload a new firmware and/or filesystem
- Create a GitHub account if necessary and login.
- Fork this repository.
- Clone your forked repository to your local machine.
git clone https://github.com/your-username/Split-Flap-Display.git
- Install the dependencies listed in Setup Instructions
- Skip step 2, complete the setup and use
npm run buildto test and upload your changes.
- Start a new branch with a descriptive name.
- Compile and upload your changes
npm run pio:firmwareorpio run -t upload -e <environment>to compile firmware and uploadnpm run pio:filesystemorpio run -t uploadfs -e <environment>to compile the filesystem fromsrc/weband upload- You can do both together using
npm run pioorpio run -t upload -t uploadfs -e <environment>
- When ready, commit and push your changes to your forked repository.
- Open a pull request to this repository.