2.1 KiB
2.1 KiB
This project is a PlatformIO/Arduino sketch for an ESP8266 (Wemos D1 mini) that implements a captive-portal Wi‑Fi configurator, filesystem manager, and NeoPixel handler. The code is organised into multiple `.ino` tabs under `src/` and uses several libraries (LittleFS, ESP8266WebServer, DNSServer, Adafruit NeoPixel, PCF8575, etc.).
.ino tabs under src/ and uses
several libraries (LittleFS, ESP8266WebServer, DNSServer, Adafruit NeoPixel, PCF8575,
etc.).
## Building and flashing
- Build with PlatformIO via the task or from the command line:
powershell & "C:\Users\User\.platformio\penv\Scripts\platformio.exe" run
or pio run/platformio run from a shell that has the platformio command.
- Upload to the board using platformio run -t upload or through the built-in VS Code task.
- If you see exit code 1 from the upload task, the problem is generally a connection issue to the
device, not a compilation error; the project compiles cleanly with the current sources.
## Code conventions
- All Arduino headers are included in the main tab (KeyPatch.ino). Helper tabs
such as Connect.ino, LittleFS.ino, etc. depend on those includes being present.
- setup() must call connectWifi() and setupFS() as indicated in the comments.
- Serial debugging is used heavily; the baud rate is 115200 by default.
- When the soft‑AP named EspConfig is started, the IP address is printed to the
serial monitor (e.g. AP-IP-Adresse: 172.217.28.1).
## Common tasks
1. Change Wi‑Fi parameters in Connect.ino or use the captive portal.
2. Upload fs.html via the web interface to manage LittleFS content.
3. Edit hardware configurations under hardware/ (FreeCAD files).
## Troubleshooting
- Compilation errors are rare; if you encounter them, run the verbose build
(platformio run -v) and inspect compile.log for error: messages.
- LittleFS operations require LittleFS.begin() to succeed; the helper tab
LittleFS.ino includes debug prints.
## Personalisation
This file is intended to help any contributor or future self understand the
project layout, build commands, and where to look for the various features.
Feel free to update it with new instructions as the sketch evolves.