Files
slate32/platformio.ini
T
evan 2b0355a148 feat: reclaim the spiffs partition, sync the clock, show it on the launcher
Nothing in this firmware ever mounted internal flash storage: apps, lib, settings and
themes all live on the SD card. The Arduino default table still reserved 1408K for
spiffs, so a custom table hands that to the OTA slots instead, taking each from 1280K
to 1984K. The 64K tail the slots cannot use goes to coredump, which otherwise logs a
missing-partition error on every boot. Changing the table shifts app0, so the next
flash must be a full one.

The ESP32 has no battery-backed clock, so time is 1970 on every power-up. net.cpp
seeds it from the build timestamp -- the device cannot predate its own firmware, and
certificate validity checks need a plausible clock before SNTP can answer -- then
starts SNTP on each join and latches a synced flag from the notification callback.
sntp_get_sync_status() only reports COMPLETED briefly before resetting for the next
cycle, so polling it would make the clock flap.

sys.clockSynced() is the only new binding a clock UI needs; Lua's os.date() already
reads the same system clock. The launcher shows it, in UTC for now.
2026-08-01 16:51:52 -04:00

34 lines
656 B
INI

[env:esp32-32e]
platform = espressif32@6.10.0
board = esp32dev
framework = arduino
monitor_speed = 115200
upload_speed = 921600
board_build.partitions = partitions.csv
build_unflags = -w
build_flags =
-w
-DLUA_32BITS
; ST7796 and touch share HSPI; SD uses the separate VSPI bus
-DUSER_SETUP_LOADED
-DST7796_DRIVER
-DTFT_WIDTH=320
-DTFT_HEIGHT=480
-DUSE_HSPI_PORT
-DTFT_MOSI=13
-DTFT_MISO=12
-DTFT_SCLK=14
-DTFT_CS=15
-DTFT_DC=2
-DTFT_RST=-1
-DTFT_BL=27
-DSPI_FREQUENCY=40000000
-DSPI_TOUCH_FREQUENCY=2500000
-DLOAD_GLCD
lib_deps =
bodmer/TFT_eSPI@^2.5.43
https://github.com/PaulStoffregen/XPT2046_Touchscreen.git