- Split renderProbeCards into createProbeCards (once) and updateProbeCards
(mutates only the values: name, target, temp, status, dot color).
- Skip refreshing setpoint input values while a field has focus so typing
is not interrupted by the 5s poll.
- Stop calling refreshDashboard after saveSetpoint to avoid clobbering input.
- Add deploy/proxmox-lxc-setup.sh to configure the frontend inside a Debian/Ubuntu LXC.
- Add deploy/thermopro-frontend.service systemd unit.
- Add deploy/README.md with Proxmox CT creation, file transfer, setup, proxy, and update steps.
- Update frontend README.md to point to the deployment guide.
Add a Flask backend + SQLite + HTML/CSS/JS PWA that:
- Polls the CYD /api/latest endpoint
- Stores readings, sessions, and freeform notes in SQLite
- Displays probe cards with target setpoints and preset options
- Renders temperature history with Chart.js
- Serves a PWA manifest and dark-themed dashboard
Also update cyd-bridge/README.md with verified bringup instructions.
- Scan for ThermoPro by advertised service UUID instead of relying only on MAC,
solving resolvable-private-address issues after phone pairing.
- Defer connect until after the scan is fully stopped to avoid NimBLE race.
- Add connect cleanup, state-name diagnostics, and main-loop retry.
- Switch display config to LGFX_AUTODETECT for correct CYD pinout.
- Verified: CYD connects to ThermoPro and receives temperature notifications.
Add PlatformIO project for the ESP32-2432S028R that:
- Reads ThermoPro BLE BBQ thermometers via NimBLE-Arduino
- Exposes /api/health, /api/latest, and /api/settings HTTP endpoints
- Serves a captive-portal setup UI and touch dashboard
- Persists WiFi/BLE/settings in NVS via Preferences
Builds cleanly with pio run.
- Implement ThermoproBLE class for handling BLE communication with ThermoPro BBQ thermometer.
- Create ThermoproReading structure to hold thermometer data.
- Develop Dashboard class for displaying thermometer readings and WiFi status on a TFT display.
- Configure display settings and touch input handling.
- Introduce SettingsManager for managing user settings stored in NVS.
- Implement WiFiManager for handling WiFi connections and captive portal setup.
- Add HTML interface for user to input WiFi credentials and ThermoPro MAC address.
- Ensure proper state management for WiFi and BLE connections in the main application loop.