完成后的状态
你的开发板已运行刚编译的固件,并能在终端实时看到串口日志 —— 这是启动成功的证明,也是下一步配网的基础。
tos.py flash将.build/bin/中的 bin 通过你选择的串口写入设备。tos.py monitor实时输出设备日志;启动后手动复位开发板可捕获完整启动日志。- 两者底层都调用
tyutool_cli,首次使用时tos.py会自动下载。
烧录前
用 USB 将开发板连接到电脑,然后处理一个系统相关的前置条件:
- Linux 下需先授予串口访问权限并重启:
sudo usermod -aG dialout $USER。 - 若使用虚拟机,烧录前需将串口映射进虚拟机。
烧录固件
在项目目录(即运行 tos.py build 的位置)运行 tos.py flash。它会列出可见的串口,按编号选择即可。
❯ tos.py flash
[INFO]: Run Tuya Uart Tool.
[INFO]: Use default baudrate: [921600]
[INFO]: Use default start address: [0x00]
--------------------
1. /dev/ttyACM1
2. /dev/ttyACM0
--------------------
Select serial port: 2
...
[INFO]: Write flash success
[INFO]: CRC check success
[INFO]: Reboot done
[INFO]: Flash write success.常用参数
必须在应用项目目录中执行,且项目已成功编译。
监听日志
运行 tos.py monitor 并选择日志串口。启动后手动复位开发板以捕获完整启动日志。按 Ctrl+C 退出,再按回车。
❯ tos.py monitor
[INFO]: Run Tuya Uart Tool.
--------------------
1. /dev/ttyACM1
2. /dev/ttyACM0
--------------------
Select serial port: 1
[INFO]: Open Monitor. (Quit: Ctrl+c)
[01-01 00:03:25 ty D][tuya_health.c:75] feed watchdog
[01-01 00:03:35 ty D][tuya_health.c:75] feed watchdog- Linux/Mac 下编号较小的通常是烧录口,较大的为日志口;Windows 下请查看设备管理器。
- 也可通过
monitor写入授权码,详见文档中的设备授权。 - 退出方式:按 Ctrl+C,再按回车。
T5 系列开发板的双串口
T5 系列开发板提供两个串口 —— 一个用于烧录,一个用于日志。若无法区分,烧录时逐一尝试即可。
- Windows:在设备管理器中,带 A 编号的为下载口,带 B 编号的为日志口。
- Linux/Mac:通常编号较小的用于烧录,较大的用于日志。
- 虚拟机映射 T5 串口后约需一分钟稳定,刚映射时出现
device busy属正常。
故障排查
烧录在 write 阶段卡住或反复失败
通常是缺少串口驱动,参见 tyutool 文档中的“安装驱动”。Mac 下无法识别串口也是同一原因。
提示 Port [xxx] may be busy
等待约一分钟后重试。虚拟机映射耗时因虚拟机与串口芯片而异,并确认没有其他监视器占用该串口。
T5 板能看到串口但烧录报 device busy
虚拟机映射有约一分钟的稳定延迟,映射后等待片刻再重试,无需重新映射。
Windows Defender 误报 GUI 烧录工具
将 tyutool_gui 放到非系统盘(如 D 盘),并在 Windows 安全中心 → 病毒和威胁防护中添加排除。tos.py flash 使用的 CLI 不受影响。