-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathplatformio.ini
More file actions
156 lines (137 loc) · 3.97 KB
/
platformio.ini
File metadata and controls
156 lines (137 loc) · 3.97 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
; PlatformIO Project Configuration File
; https://docs.platformio.org/page/projectconf.html
; ============================================
; 全局 ESP32 共享配置
; ============================================
[env]
platform = espressif32
framework = arduino
; 自定义脚本:LittleFS 文件过滤(只上传 .gz 文件)
extra_scripts = pre:scripts/filter_littlefs.py
; 文件系统 & 分区
board_build.filesystem = littlefs
board_build.partitions = fastbee.csv
; 库依赖
lib_deps =
bblanchon/ArduinoJson @ 7.4.2
knolleary/PubSubClient@^2.8
h2zero/NimBLE-Arduino@^1.4.1
olikraus/U8g2@^2.35.9
build_flags =
-Wno-deprecated-declarations
-DFASTBEE_USE_PSRAM=0
-DFASTBEE_ENABLE_MQTT=1
-DFASTBEE_ENABLE_MODBUS=1
-DFASTBEE_ENABLE_TCP=1
-DFASTBEE_ENABLE_HTTP=1
-DFASTBEE_ENABLE_COAP=0
-DFASTBEE_ENABLE_MDNS=1
-DFASTBEE_ENABLE_DNS=1
-DFASTBEE_ENABLE_AP_MODE=1
-DFASTBEE_ENABLE_WEB_SERVER=1
-DFASTBEE_ENABLE_WEB_STATIC=1
-DFASTBEE_ENABLE_WEB_API=1
-DFASTBEE_ENABLE_AUTH=1
-DFASTBEE_ENABLE_SESSION=1
-DFASTBEE_ENABLE_OTA=1
-DFASTBEE_ENABLE_OTA_FS=1
-DFASTBEE_ENABLE_TASK_MANAGER=1
-DFASTBEE_ENABLE_HEALTH_MONITOR=1
-DFASTBEE_ENABLE_LOGGER=1
-DFASTBEE_ENABLE_GPIO=1
-DFASTBEE_LOG_BUFFER_SIZE=256
-DFASTBEE_JSON_DOC_SIZE=8192
-DASYNCWEBSERVER_REGEX=1
; AsyncTCP 连接参数在各 [env:xxx] 中单独设置
; 生产版本:禁用调试输出以减少Flash占用
; -DDEBUG
; -DFASTBEE_DEBUG_LOG=1
; -DFASTBEE_VERBOSE_ERROR=1
-DCORE_DEBUG_LEVEL=1 ; 只输出ERROR级别
; ============================================
; ESP32 经典版 (ESP32-WROOM/ESP32-WROVER)
; ============================================
[env:esp32dev]
board = esp32dev
; ESP32 经典版连接参数
build_flags =
${env.build_flags}
-DCONFIG_ASYNC_TCP_MAX_CONNECTIONS=8
-DCONFIG_ASYNC_TCP_QUEUE_SIZE=32
; 串口
upload_port = COM6
monitor_port = COM6
upload_speed = 921600
monitor_speed = 115200
monitor_filters = direct
; ============================================
; ESP32-S3 (支持 USB-CDC)
; ============================================
[env:esp32s3]
board = esp32-s3-devkitc-1
; 串口(请连接设备后取消注释并修改)
;upload_port = COM7
;monitor_port = COM7
upload_speed = 921600
monitor_speed = 115200
monitor_filters = direct
; ESP32-S3 额外构建标志
build_flags =
${env.build_flags}
-DARDUINO_USB_CDC_ON_BOOT=1
; ============================================
; ESP32-C3 (单核低成本)
; ============================================
[env:esp32c3]
board = esp32-c3-devkitm-1
; 串口(请连接设备后取消注释并修改)
;upload_port = COM8
;monitor_port = COM8
upload_speed = 921600
monitor_speed = 115200
monitor_filters = direct
; ESP32-C3 资源受限专用构建标志
build_flags =
${env.build_flags}
-DCONFIG_ASYNC_TCP_MAX_CONNECTIONS=4
-DCONFIG_ASYNC_TCP_QUEUE_SIZE=16
-DMAX_ASYNC_TASKS=2
-DSCRIPT_TASK_STACK=10240
-DSIMPLE_TASK_STACK=4096
-DMIN_HEAP_FOR_ASYNC=20000
-DFASTBEE_MODBUS_SLAVE_ENABLE=0
; ============================================
; 测试环境配置 (Native)
; ============================================
[env:native]
platform = native
test_framework = unity
; 测试构建标志
build_flags =
-std=c++17
-DUNIT_TEST
-DARDUINOJSON_ENABLE_STD_STRING=1
-DARDUINOJSON_ENABLE_ARDUINO_STRING=0
-DFASTBEE_ENABLE_MQTT=1
-DFASTBEE_ENABLE_MODBUS=1
-DFASTBEE_ENABLE_TCP=1
-DFASTBEE_ENABLE_HTTP=1
-DFASTBEE_ENABLE_COAP=0
-DFASTBEE_ENABLE_MDNS=0
-DFASTBEE_ENABLE_DNS=0
-DFACILITY="user"
-DLEVEL="info"
; 使用标准库替代 Arduino 特定功能
-DUSE_NATIVE_STDLIB=1
; 测试依赖库
lib_deps =
bblanchon/ArduinoJson @ 7.4.2
throwtheswitch/Unity @ ^2.6.0
; 测试目录配置
test_build_src = yes
test_ignore = test_embedded
; 包含路径
build_src_flags =
-I include
-I test/mocks
-I test/helpers