; Self-contained PlatformIO project for the AutoProvision example. ; ; Host boards are provided — pick one with -e: ; pio run -e esp32-s3-devkitc-1 -t upload # generic ESP32-S3 dev board ; pio run -e xiao-esp32s3 -t upload # Seeed XIAO ESP32-S3 ; pio run -e xiao-esp32c3 -t upload # Seeed XIAO ESP32-C3 ; pio device monitor ; ; The radio region is set via build flags — the same LORA_* defines you'd use ; when compiling MeshCore firmware. The host UART pins differ per board because ; the XIAO does not break out GPIO17/18. ; ; The library is pulled from the repo root (two levels up) via a relative ; symlink dependency, so there's no copy of the source. [platformio] default_envs = esp32-s3-devkitc-1 [common] platform = espressif32 framework = arduino monitor_speed = 115200 lib_deps = symlink://../.. build_flags = -D UART_BAUD=115200 ; AU narrow band radio region -D LORA_FREQ=916.575 -D LORA_BW=62.5 -D LORA_SF=7 -D LORA_CR=8 -D LORA_TX_POWER=20 [env:esp32-s3-devkitc-1] extends = common board = esp32-s3-devkitc-1 build_flags = ${common.build_flags} ; host UART pins to the companion -D UART_RX_PIN=17 -D UART_TX_PIN=18 [env:xiao-esp32s3] extends = common board = seeed_xiao_esp32s3 build_flags = ${common.build_flags} ; host UART pins to the companion (XIAO pads D7=GPIO44 RX, D6=GPIO43 TX) -D UART_RX_PIN=44 -D UART_TX_PIN=43 ; the XIAO has only native USB (no UART bridge) — route Serial to USB-CDC so ; the monitor sees output. (The devkit doesn't need this; it has a CP2102.) -D ARDUINO_USB_MODE=1 -D ARDUINO_USB_CDC_ON_BOOT=1 [env:xiao-esp32c3] extends = common board = seeed_xiao_esp32c3 build_flags = ${common.build_flags} ; host UART pins to the companion (XIAO C3 pads D7=GPIO20 RX, D6=GPIO21 TX) -D UART_RX_PIN=20 -D UART_TX_PIN=21 ; native USB only (USB-Serial/JTAG) — route Serial to USB-CDC for the monitor -D ARDUINO_USB_CDC_ON_BOOT=1