You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ESP32 T8-S3(LilyGo)无法通过Arduino框架上传代码求助

问题描述

持有LilyGo ESP32 T8-S3开发板,可通过Thonny、VS Code搭配PyMakr正常上传MicroPython程序,但在Arduino IDE或VS Code PlatformIO中上传代码时,只要进入上传环节就提示无法打开端口,PlatformIO内的错误信息为:

A fatal error occurred: Could not open COMx, the port doesn't exist

已尝试通过设备管理器修改端口号、用Thonny/命令行esptool重刷固件、重装驱动、更换同型号开发板,Windows设备管理器能正常识别设备,但问题仍未解决。当前在Windows系统的VS Code PlatformIO中排查,platformio.ini配置如下:

[platformio]
default_envs = dfrobot_firebeetle2_esp32s3

[env:dfrobot_firebeetle2_esp32s3]
platform = espressif32
board = dfrobot_firebeetle2_esp32s3
framework = arduino

upload_port = COM15
upload_speed = 921600
monitor_speed = 115200
build_flags =
    -DARDUINO_USB_CDC_ON_BOOT=1
排查与解决步骤
  • 修正Board型号配置
    当前配置的board = dfrobot_firebeetle2_esp32s3是DFRobot开发板的型号,和LilyGo T8-S3的硬件定义、烧录时序不匹配,会导致无法正确触发烧录模式。将配置修改为对应型号:

    [platformio]
    default_envs = lilygo_t8_s3
    
    [env:lilygo_t8_s3]
    platform = espressif32
    board = lilygo_t8_s3
    framework = arduino
    
    upload_port = COM15
    upload_speed = 921600
    monitor_speed = 115200
    build_flags =
        -DARDUINO_USB_CDC_ON_BOOT=1
    
  • 手动触发烧录模式
    部分ESP32-S3开发板无法自动进入烧录模式,上传前需手动操作:

    1. 按住开发板上的BOOT按键不松开
    2. 短按一下RESET按键
    3. 松开BOOT按键,立刻启动PlatformIO的上传流程
  • 调整USB CDC编译参数
    若开发板使用USB虚拟串口上传,ARDUINO_USB_CDC_ON_BOOT=1可能导致烧录阶段串口无法被识别,可尝试切换为硬件UART作为默认串口:

    build_flags =
        -DARDUINO_USB_CDC_ON_BOOT=0
        -DARDUINO_USB_MODE=1
    
  • 关闭端口占用程序
    确保Thonny、串口监视器等所有可能占用COM15的程序已完全关闭,再执行上传操作。

  • 明确上传协议与复位参数
    在platformio.ini中添加上传协议和复位时序参数,确保烧录工具能正确控制开发板:

    upload_protocol = esptool
    upload_flags =
        --before default_reset
        --after hard_reset
    

内容的提问来源于stack exchange,提问作者user23992507

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 10:20:29