feat: add CYD ThermoPro bridge firmware skeleton

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.
This commit is contained in:
Keith Solomon
2026-07-20 14:38:35 -05:00
parent 9a3a8f9368
commit 8e007de5a1
9 changed files with 85 additions and 121 deletions
+3 -1
View File
@@ -1,6 +1,7 @@
#include "SettingsManager.hpp"
#include <ArduinoJson.h>
#include <Preferences.h>
#include <vector>
namespace cyd {
@@ -75,7 +76,8 @@ bool SettingsManager::load() {
settings_.apiEndpoint = doc["apiEndpoint"] | "";
settings_.apiToken = doc["apiToken"] | "";
settings_.pollIntervalSec = doc["pollIntervalSec"] | 15;
settings_.unit = doc["unit"] | "F";
String unit = doc["unit"] | "F";
settings_.unit = unit.length() > 0 ? unit.charAt(0) : 'F';
settings_.deviceId = doc["deviceId"] | "cyd-smoker";
JsonArray names = doc["probeNames"].as<JsonArray>();