From 7b23ffe11952523bbd7a62b06bf29ba6cfeaac02 Mon Sep 17 00:00:00 2001 From: C F Date: Fri, 24 Apr 2026 19:08:46 -0700 Subject: [PATCH] Initialize PlatformIO project and VS Code setup --- .gitignore | 5 +++++ .vscode/extensions.json | 10 ++++++++++ platformio.ini | 42 +++++++++++++++++++++++++++++++++++++++++ 3 files changed, 57 insertions(+) create mode 100644 .gitignore create mode 100644 .vscode/extensions.json create mode 100644 platformio.ini diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..69107a2 --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +.pio +.vscode/.browse.c_cpp.db* +.vscode/c_cpp_properties.json +.vscode/launch.json +.vscode/ipch \ No newline at end of file diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..080e70d --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,10 @@ +{ + // See http://go.microsoft.com/fwlink/?LinkId=827846 + // for the documentation about the extensions.json format + "recommendations": [ + "platformio.platformio-ide" + ], + "unwantedRecommendations": [ + "ms-vscode.cpptools-extension-pack" + ] +} diff --git a/platformio.ini b/platformio.ini new file mode 100644 index 0000000..fd033fa --- /dev/null +++ b/platformio.ini @@ -0,0 +1,42 @@ +[env:m5stack-papers3] +platform = espressif32 +board = esp32s3box +framework = arduino +src_dir = src + +; Exclude the built-in Arduino WebServer framework library — it depends on +; WiFiServer.h which was moved in ESP32 Arduino 3.x. We use ESPAsyncWebServer +; instead, so the built-in WebServer is never needed. +lib_ignore = WebServer + +; M5Stack PaperS3: ESP32-S3FN16R8 (16MB Flash, 8MB OPI PSRAM) +board_build.flash_size = 16MB +board_build.partitions = default_16MB.csv +board_build.arduino.memory_type = qio_opi +board_build.f_cpu = 240000000L + +build_flags = + -DARDUINO_USB_MODE=1 + -DARDUINO_USB_CDC_ON_BOOT=1 + -DCORE_DEBUG_LEVEL=0 + ; NimBLE config - minimise memory footprint per CLAUDE.md + -DCONFIG_BT_NIMBLE_ROLE_BROADCASTER=0 + -DCONFIG_BT_NIMBLE_ROLE_PERIPHERAL=0 + -DCONFIG_BT_NIMBLE_MAX_CONNECTIONS=1 + +lib_deps = + ; Display & Core System + m5stack/M5Unified + m5stack/M5GFX + ; Bluetooth (low-memory NimBLE) + h2zero/NimBLE-Arduino + ; GPS Parsing + mikalhart/TinyGPSPlus + ; Web Server (ESP32-S3 compatible fork + async TCP) + mathieucarbou/ESPAsyncWebServer + mathieucarbou/AsyncTCP + ; FTP server for management AP file access + xreef/SimpleFTPServer + +monitor_speed = 115200 +monitor_filters = esp32_exception_decoder