- 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.
28 lines
857 B
INI
28 lines
857 B
INI
; PlatformIO project for CYD ThermoPro bridge
|
|
; Target: ESP32-2432S028R (ESP32 + ILI9341 320x240 TFT + XPT2046 touch)
|
|
|
|
[env:esp32dev]
|
|
platform = espressif32 @ ^6.9.0
|
|
board = esp32dev
|
|
framework = arduino
|
|
monitor_speed = 115200
|
|
monitor_filters = esp32_exception_decoder
|
|
|
|
; The CYD needs a decent amount of RAM/flash for BLE + HTTP + display + JSON.
|
|
; default.csv gives ~1.3MB app / 1.3MB spiffs which is plenty for the MVP.
|
|
board_build.partitions = default.csv
|
|
|
|
; Required libraries
|
|
lib_deps =
|
|
; Lightweight BLE stack (much smaller than Bluedroid)
|
|
h2zero/NimBLE-Arduino @ ^1.4.3
|
|
; JSON serialization
|
|
bblanchon/ArduinoJson @ ^7.3.0
|
|
; Graphics library with broad CYD support and fast SPI
|
|
lovyan03/LovyanGFX @ ^1.2.0
|
|
|
|
; Build flags to set the program name and version
|
|
build_flags =
|
|
-D CYD_THERMOPRO_BRIDGE=1
|
|
-D CORE_DEBUG_LEVEL=3
|