更新时间:2024-06-06 06:28:05下载pdf
本文详细介绍 TuyaOS 网关开发包的目录结构,以及 THP23-X-D 开发包的编译、配置文件和终端登录过程。
TuyaOS 网关开发包的目录结构如下:
├── hardware # 硬件手册,存放涂鸦自研硬件资料
├── pc
│ └── tools # 工具类目录,存放各种开发相关工具
├── software
│ ├── packages # SDK 压缩包
│ ├── SDKInformation.json # SDK 信息文件
│ └── TuyaOS # SDK 开发包目录
│ ├── apps # 应用示例代码目录,您可以根据需求修改
│ ├── build
│ ├── docs # API 文档
│ ├── include # SDK 头文件
│ ├── libs # SDK 库文件,您可以按需链接
│ ├── scripts
│ ├── build_app.sh # 编译脚本
│ ├── CHANGELOG.md
│ ├── LICENSE # Tuya MIT License
│ ├── Makefile
│ ├── output # 产物输出目录
│ ├── README.md
│ └── vendor # 工具链,编译时会自动把工具链下载到该目录下
└── tuya.json
THP23-X-D 开发包的目录结构如下:
├── application_components # 开源组件
├── application_drivers
├── build # 打包到固件的文件
├── build.conf
├── build.sh
├── include # 应用头文件
├── libs # 应用库文件
├── local.mk
├── Makefile
├── output # 输出目录
├── package.json
├── README.md
└── src # 应用源文件
编译固件的过程如下:
确保 THP23-X-D 开发包已下载至 TuyaOS/apps
目录。更多信息,参考 获取资料。
在 Visual Studio Code 里,选中开发包目录,右击选择 Build Project。
输入版本号(格式为 x.x.x
,x
表示任意数字),按回车键开始编译。
编译过程的输出将在 Visual Studio Code 的 终端 窗口中显示。编译成功后,固件文件将位于 TuyaOS/output/tuyaos_core_board-tuyaos_gw_ssd202d/pack
目录。
编译生成的固件文件说明:
文件名 | 说明 |
---|---|
gateway.tar.gz | 应用的压缩包,用于开发调试 |
tuyaos_core_board-tuyaos_gw_ssd202d_*_debug | 带符号表的应用,用于 GDB 调试 |
tuyaos_core_board-tuyaos_gw_ssd202d_fw_PROD_*.tar.gz | 全量固件,用于生产。该压缩包里包含三种烧录方式的固件:
|
tuyaos_core_board-tuyaos_gw_ssd202d_fw_UG_*.bin | OTA 固件,用于 OTA 升级 |
THP23-X-D 应用程序使用的配置文件位于开发包目录下的 build > image > tuya_user1 > config.json。您可以根据实际需求调整配置,例如,修改默认产品 ID。
配置文件字段详细说明如下:
字段 | 是否必需 | 说明 |
---|---|---|
pid | 是 | 设备的产品 ID |
user_cfg_file | 是 | 本配置文件的完整路径,启动脚本会使用该字段 |
uuid | 否 | 授权信息,默认从 Flash 读取,在产测阶段写入,读取失败才会使用该字段 |
authkey | 否 | 授权信息,默认从 Flash 读取,在产测阶段写入,读取失败才会使用该字段 |
storage_path | 是 | 数据的存储路径,需要有读写权限,路径结尾要带 / |
log_path | 是 | 日志的存储路径,需要有读写权限,路径结尾要带 / |
cache_path | 是 | 缓存的存储路径,需要有读写权限,路径结尾要带 / |
bin_path | 是 | 可执行文件的路径 |
backup_path | 是 | 备份的存储路径,不设置时与 storage_path 一致 |
sync_systime | 否 | 是否同步系统时间 |
log_level | 是 | 设置日志打印等级 |
tuya | 否 | 服务相关配置 |
tuya.zigbee | 否 | Zigbee 服务 |
tuya.zigbee.dev_name | 否 | 串口号 |
tuya.zigbee.cts | 否 | 是否开启硬件流控。
说明:Zigbee 模组均要求开启硬件流控 |
tuya.zigbee.thread_mode | 否 | Zigbee Host 的启动方式。
|
tuya.bt | 否 | 蓝牙服务 |
tuya.bt.dev_name | 否 | 串口号 |
tuya.bt.enable_hb | 否 | 是否开启 Bluetooth LE 心跳查询。
|
tuya.bt.scan_timeout | 否 | Bluetooth LE 的扫描周期,单位是秒 |
tuya.bt.subdev_type | 否 | 设置蓝牙支持的子设备类型,支持的类型请参考 BLE_SUBDEV_TYPE_E |
tuya.dp_engine | 否 | DP 引擎服务 |
tuya.dp_engine.storage_path | 否 | DP 转换文件的存储路径,需要有读写权限,路径结尾要带 / |
tuya.dp_engine.file_max_count | 否 | DP 转换文件的最大数量 |
tuya.dp_engine.pidTable_max_count | 否 | DP 转换文件 pid_table 元素的最大数量 |
tuya.dp_engine.enable_zigbee_trans | 否 | DP 引擎是否支持 Zigbee 协议。
|
tuya.dp_engine.enable_matter_trans | 否 | DP 引擎是否支持 Matter 协议。
|
THP23-X-D 开发板使用一机一密的加密方案。在登录之前,您需要先获取登录密码。提交工单 来联系涂鸦客户支撑团队,并提供 THP23-X-D 开发板的 SN 来获取登录密码。
root
。tygw@SSD20x
,全量固件的默认密码也是 tygw@SSD20x
,出厂密码通过工单获取。使用 USB 转 UART 配件,连接 THP23-X-D 开发板的调试串口,确保硬件连接正确,如下表所示:
USB 转 UART 配件 | THP23-X-D 开发板 |
---|---|
TX | RX |
RX | TX |
GND | GND |
THP23-X-D 开发板的调试串口:
使用串口调试工具(例如 PuTTY、SecureCRT 等)连接至开发板,串口波特率是 115200
。
SSH 监听的端口是 2333
,但是 SSH 默认是关闭的。可以先通过串口登录,然后打开 SSH 功能。
执行以下命令,开启 SSH 功能:
root@SmartGateway:~# nvram set enable_ssh true
root@SmartGateway:~# nvram commit
root@SmartGateway:~# reboot
网关的相关进程如下:
1100 root 2932 S /bin/sh ./app_detect.sh ./tyZ3Gw /tmp/tuya /tmp/tuya/config.json
1106 root 2932 S /bin/sh ./log_detect.sh /tmp/tuya.log 3
1114 root 2932 S /bin/sh ./process_monitor.sh /tmp/tuya /tmp/tuya/config.json
1121 root 324m S ./tyZ3Gw /tmp/tuya/tuya_user1 /tmp/tuya/config.json
进程 | 说明 |
---|---|
app_detect.sh | 检测主进程的运行状态,主进程异常退出时重新拉起 |
log_detect.sh | 日志备份脚本,当前日志超过 3MB 时压缩备份 |
process_monitor.sh | 主进程软件看门狗 |
tyZ3Gw | 主进程 |
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈