- Restructure include/ and src/ directories with logical grouping - Move core components to spore/core/ (NodeContext, NetworkManager, TaskManager, ClusterManager, ApiServer) - Move services to spore/services/ (NodeService, NetworkService, ClusterService, TaskService) - Move types to spore/types/ (NodeInfo, ApiTypes, Config) - Move internal components to spore/internal/ (Globals) - Update all #include statements to use new namespace paths - Update platformio.ini build filters for all environments - Update all example files to use new include paths - Maintain backward compatibility for public API - Improve code organization, maintainability, and scalability This reorganization follows modern C++ project structure patterns and provides clear separation between public API, internal implementation, and utilities. All examples compile successfully with the new structure.
140 lines
3.6 KiB
INI
140 lines
3.6 KiB
INI
; PlatformIO Project Configuration File
|
||
;
|
||
; Build options: build flags, source filter
|
||
; Upload options: custom upload port, speed and extra flags
|
||
; Library options: dependencies, extra library storages
|
||
; Advanced options: extra scripting
|
||
;
|
||
; Please visit documentation for the other options and examples
|
||
; https://docs.platformio.org/page/projectconf.html
|
||
|
||
[platformio]
|
||
default_envs = esp01_1m
|
||
src_dir = .
|
||
|
||
[common]
|
||
monitor_speed = 115200
|
||
lib_deps =
|
||
esp32async/ESPAsyncWebServer@^3.8.0
|
||
bblanchon/ArduinoJson@^7.4.2
|
||
|
||
[env:esp01_1m]
|
||
platform = platformio/espressif8266@^4.2.1
|
||
board = esp01_1m
|
||
framework = arduino
|
||
upload_speed = 115200
|
||
monitor_speed = 115200
|
||
board_build.partitions = partitions_ota_1M.csv
|
||
board_build.flash_mode = dout ; ESP‑01S uses DOUT on 1 Mbit flash
|
||
board_build.flash_size = 1M
|
||
lib_deps = ${common.lib_deps}
|
||
build_src_filter =
|
||
+<examples/base/*.cpp>
|
||
+<src/spore/*.cpp>
|
||
+<src/spore/core/*.cpp>
|
||
+<src/spore/services/*.cpp>
|
||
+<src/spore/types/*.cpp>
|
||
+<src/internal/*.cpp>
|
||
|
||
[env:d1_mini]
|
||
platform = platformio/espressif8266@^4.2.1
|
||
board = d1_mini
|
||
framework = arduino
|
||
upload_speed = 115200
|
||
monitor_speed = 115200
|
||
board_build.flash_mode = dio ; D1 Mini uses DIO on 4 Mbit flash
|
||
board_build.flash_size = 4M
|
||
lib_deps = ${common.lib_deps}
|
||
build_src_filter =
|
||
+<examples/base/*.cpp>
|
||
+<src/spore/*.cpp>
|
||
+<src/spore/core/*.cpp>
|
||
+<src/spore/services/*.cpp>
|
||
+<src/spore/types/*.cpp>
|
||
+<src/internal/*.cpp>
|
||
|
||
[env:esp01_1m_relay]
|
||
platform = platformio/espressif8266@^4.2.1
|
||
board = esp01_1m
|
||
framework = arduino
|
||
upload_speed = 115200
|
||
monitor_speed = 115200
|
||
board_build.partitions = partitions_ota_1M.csv
|
||
board_build.flash_mode = dout
|
||
board_build.flash_size = 1M
|
||
lib_deps = ${common.lib_deps}
|
||
build_src_filter =
|
||
+<examples/relay/*.cpp>
|
||
+<src/spore/*.cpp>
|
||
+<src/spore/core/*.cpp>
|
||
+<src/spore/services/*.cpp>
|
||
+<src/spore/types/*.cpp>
|
||
+<src/internal/*.cpp>
|
||
|
||
[env:esp01_1m_neopixel]
|
||
platform = platformio/espressif8266@^4.2.1
|
||
board = esp01_1m
|
||
framework = arduino
|
||
upload_speed = 115200
|
||
monitor_speed = 115200
|
||
board_build.partitions = partitions_ota_1M.csv
|
||
board_build.flash_mode = dout
|
||
board_build.flash_size = 1M
|
||
lib_deps = ${common.lib_deps}
|
||
adafruit/Adafruit NeoPixel@^1.15.1
|
||
build_src_filter =
|
||
+<examples/neopixel/*.cpp>
|
||
+<src/*.c>
|
||
+<src/*.cpp>
|
||
+<src/services/*.cpp>
|
||
|
||
[env:d1_mini_neopixel]
|
||
platform = platformio/espressif8266@^4.2.1
|
||
board = d1_mini
|
||
framework = arduino
|
||
upload_speed = 115200
|
||
monitor_speed = 115200
|
||
board_build.flash_mode = dio
|
||
board_build.flash_size = 4M
|
||
lib_deps = ${common.lib_deps}
|
||
adafruit/Adafruit NeoPixel@^1.15.1
|
||
build_src_filter =
|
||
+<examples/neopixel/*.cpp>
|
||
+<src/*.c>
|
||
+<src/*.cpp>
|
||
+<src/services/*.cpp>
|
||
|
||
[env:esp01_1m_neopattern]
|
||
platform = platformio/espressif8266@^4.2.1
|
||
board = esp01_1m
|
||
framework = arduino
|
||
upload_speed = 115200
|
||
monitor_speed = 115200
|
||
board_build.partitions = partitions_ota_1M.csv
|
||
board_build.flash_mode = dout
|
||
board_build.flash_size = 1M
|
||
lib_deps = ${common.lib_deps}
|
||
adafruit/Adafruit NeoPixel@^1.15.1
|
||
build_flags = -DLED_STRIP_PIN=2
|
||
build_src_filter =
|
||
+<examples/neopattern/*.cpp>
|
||
+<src/*.c>
|
||
+<src/*.cpp>
|
||
+<src/services/*.cpp>
|
||
|
||
[env:d1_mini_neopattern]
|
||
platform = platformio/espressif8266@^4.2.1
|
||
board = d1_mini
|
||
framework = arduino
|
||
upload_speed = 115200
|
||
monitor_speed = 115200
|
||
board_build.flash_mode = dio
|
||
board_build.flash_size = 4M
|
||
lib_deps = ${common.lib_deps}
|
||
adafruit/Adafruit NeoPixel@^1.15.1
|
||
build_src_filter =
|
||
+<examples/neopattern/*.cpp>
|
||
+<src/*.c>
|
||
+<src/*.cpp>
|
||
+<src/services/*.cpp>
|