generated from CubeCraft-Creations/Tracehound
Dev #26
+11
-6
@@ -27,20 +27,25 @@ lib_deps =
|
||||
build_flags =
|
||||
-D CORE_DEBUG_LEVEL=0
|
||||
|
||||
; ── ESP8266: Camera Bridge ──────────────────────────────────
|
||||
; Flashed onto D1 Mini. Talks to GoPro over Wi-Fi, relays to
|
||||
; ESP32 over UART (TX/RX pins). No MQTT, no router connection.
|
||||
; ── ESP-01S: Camera Bridge ──────────────────────────────────
|
||||
; Flashed onto an ESP-01S (ESP8266, 1MB flash). Talks to the GoPro
|
||||
; over Wi-Fi, relays to the XIAO over the hardware UART (GPIO1/3).
|
||||
; No MQTT, no router connection.
|
||||
;
|
||||
; Flash with a 3.3V USB-UART adapter: tie GPIO0 → GND, power up /
|
||||
; reset into bootloader, then upload. ESP-01S flash is qio/dout;
|
||||
; keep upload_speed modest for adapter reliability.
|
||||
|
||||
[env:esp8266-camera]
|
||||
platform = espressif8266
|
||||
board = d1_mini
|
||||
board = esp01_1m
|
||||
framework = arduino
|
||||
monitor_speed = 115200
|
||||
upload_speed = 921600
|
||||
upload_speed = 115200
|
||||
lib_deps = ${common.lib_deps}
|
||||
build_flags = ${common.build_flags}
|
||||
-D PIO_FRAMEWORK_ARDUINO_MMU_CACHE16_IRAM48_SECHEAP_SHARED
|
||||
board_build.flash_mode = dio
|
||||
board_build.flash_mode = dout
|
||||
board_build.f_cpu = 160000000L
|
||||
build_src_filter =
|
||||
-<*.cpp>
|
||||
|
||||
@@ -30,12 +30,12 @@
|
||||
#include <WiFiClient.h>
|
||||
#include <PubSubClient.h>
|
||||
#include <ArduinoJson.h>
|
||||
#include <SPIFFS.h>
|
||||
#include <LittleFS.h>
|
||||
#include <Wire.h>
|
||||
#include <U8g2lib.h>
|
||||
|
||||
// ────────────────────────────────────────────
|
||||
// Configuration (SPIFFS)
|
||||
// Configuration (LittleFS)
|
||||
// ────────────────────────────────────────────
|
||||
|
||||
struct Config {
|
||||
@@ -54,8 +54,8 @@ struct Config {
|
||||
} cfg;
|
||||
|
||||
bool loadConfig() {
|
||||
if (!SPIFFS.begin(true)) { Serial.println("[CFG] SPIFFS mount failed"); return false; }
|
||||
File f = SPIFFS.open("/config.json", "r");
|
||||
if (!LittleFS.begin(true)) { Serial.println("[CFG] LittleFS mount failed"); return false; }
|
||||
File f = LittleFS.open("/config.json", "r");
|
||||
if (!f) { Serial.println("[CFG] No config — using defaults"); return false; }
|
||||
|
||||
JsonDocument doc;
|
||||
@@ -71,11 +71,14 @@ bool loadConfig() {
|
||||
cfg.heartbeat_sec = doc["heartbeat_interval_sec"] | cfg.heartbeat_sec;
|
||||
cfg.bat_raw_min = doc["bat_raw_min"] | cfg.bat_raw_min;
|
||||
cfg.bat_raw_max = doc["bat_raw_max"] | cfg.bat_raw_max;
|
||||
Serial.printf("[CFG] Loaded: ssid=%s broker=%s:%d cam=%s\n",
|
||||
cfg.wifi_ssid.c_str(), cfg.mqtt_broker.c_str(), cfg.mqtt_port,
|
||||
cfg.camera_id.length() ? cfg.camera_id.c_str() : "-");
|
||||
return true;
|
||||
}
|
||||
|
||||
bool saveConfig() {
|
||||
File f = SPIFFS.open("/config.json", "w");
|
||||
File f = LittleFS.open("/config.json", "w");
|
||||
if (!f) return false;
|
||||
JsonDocument doc;
|
||||
doc["wifi_ssid"] = cfg.wifi_ssid;
|
||||
|
||||
Reference in New Issue
Block a user