2026-02-09 11:41:12 -05:00
|
|
|
# FacePlant (v1.0.0)
|
|
|
|
|
|
|
|
|
|
ESP32 + SH1106 OLED + soil moisture buddy with expressions.
|
|
|
|
|
|
|
|
|
|
## Features
|
|
|
|
|
- Happy / Dry (frown + droplet) / Too-wet (bubbles)
|
|
|
|
|
- Random blinks (>= 1/min) + silly faces (more frequent in Kids Mode)
|
|
|
|
|
- 72-hour "RIP" mode when dry (disabled in Kids Mode)
|
|
|
|
|
- Captive-portal setup AP, then joins home Wi-Fi
|
|
|
|
|
- mDNS hostname: http://faceplant.local
|
|
|
|
|
- Web UI at `/` + JSON at `/status`
|
|
|
|
|
- OTA update at `/update`
|
|
|
|
|
- Webhook (optional) posts JSON on events
|
|
|
|
|
|
|
|
|
|
## Wiring
|
|
|
|
|
- OLED (I2C): SDA=GPIO21, SCL=GPIO22, VCC=3.3V, GND=GND
|
|
|
|
|
- Moisture sensor analog out: GPIO34
|
2026-03-03 08:41:49 -05:00
|
|
|
|
|
|
|
|
## OLED Size Build Flag
|
|
|
|
|
FacePlant now supports compile-time OLED profiles via `PB_OLED_SIZE`:
|
|
|
|
|
- `96` for 0.96" OLED
|
|
|
|
|
- `130` for 1.3" OLED
|
|
|
|
|
- `240` for 2.4" OLED
|
|
|
|
|
|
|
|
|
|
Predefined PlatformIO environments:
|
|
|
|
|
- `esp32-s3-oled-096`
|
|
|
|
|
- `esp32-s3-oled-130`
|
|
|
|
|
- `esp32-s3-oled-240`
|
|
|
|
|
|
|
|
|
|
Example:
|
|
|
|
|
```bash
|
|
|
|
|
pio run -e esp32-s3-oled-240 -t upload
|
|
|
|
|
```
|