概述
Ethernet 设备开发包是基于 TuyaOS 系统裁剪得到的适用于 Ethernet 协议产品开发的开发包。开发包包含了设备配网、激活、安全、连接云端、设备控制、OTA 等核心能力,并提供相关函数。您无需关心各 Ethernet 芯片平台的设备功能的具体实现方式,只需要按照开发包提供的标准 API 进行适配,即可实现接入涂鸦开发者平台,完成设备智能化。
开发包特性
Ethernet 设备开发包也能用于具备额外的联网能力的产品,比如有屏幕可以配置 Wi-Fi 路由器连接的产品。同时也适用于仅连接云端,不需要 TuyaOS 能力的产品的开发。
资源需求
Ethernet 设备开发包代码体积约占 150K 的 ROM 空间,正常运行需要约 50K RAM 空间。开发包根据不同芯片平台的占用情况不同,内存占用情况也差异较大。
能力地图
设备管理
| 能力 | 说明 | 
| 初始化 | 初始化是指设备上电、启动之后,调用一系列接口,完成设备硬件环境的初始化、TuyaOS 软件的初始化、应用功能初始化等工作。应用初始化的时候,开发者需要根据自己的产品形态,提供一些回调函数,用于处理 TuyaOS 内部的状态变化、控制操作、升级等工作。 | 
| 重置 | 设备重置是把设备恢复到配网、激活之前状态的操作。根据触发源不同,可以分为本地重置和 App 重置;根据重置后设备所处的状态,又可细分为普通重置(解除绑定)和恢复出厂重置(解绑并清除数据)。 | 
| 授权 | 授权是通过将涂鸦产生的设备标识信息写入到设备的不易失存储期间之中,用于后续设备正常运行时的设备认证。授权方式有通过代码的方式授权和通过工具的方式授权,前者主要在调试阶段使用,后者主要在量产生成时使用。 | 
配网和激活
| 能力 | 说明 | 
| 局域网绑定 | 设备在连接到路由器之后,通过在局域网内定期发送 UDP 广播包。App 在同一局域网搜索、内接收到广播包之后,根据广播包内携带的信息,协商交互密钥,并将激活 Token 发送给设备,设备在获取到激活 Token 之后,使用授权信息和 Token,向云端进行设备认证、激活操作。 | 
| 扫码绑定 | 设备在连接到路由器之后,App 通过扫码设备上粘贴的二维码或者屏幕上显示的二维码,获取设备相关的信息,并通过云端向已经连接到云端端激活服务器的设备推送激活 Token。设备在获取到激活 Token 之后,使用授权信息和 Token,向云端进行设备认证、激活操作。 | 
设备控制
| 能力 | 说明 | 
| DP 模型 & 控制协议 | TuyaOS 设备模型描述,通过设备模型可以对设备进行控制。 | 
| 局域网控制 | 当 App 和设备位于同一个局域网内,可以通过局域网协议对设备进行控制。 | 
基础服务
| 能力 | 说明 | 
| 安全存储 | TuyaOS 提供的,使用 Key-Value 形式的,加密的数据存储功能,以及文件形式的,明文的数据存储功能。 | 
| 健康检测 | TuyaOS 提供的,定期执行对设备内存、无线信号、任务状态进行检测的功能,并支持应用自定义的检测指标。 | 
| 日志服务 | TuyaOS 提供的,用于记录设备运行过程的本地日志、记录异常并编码上报的日志序功能。 | 
| 事件服务 | TuyaOS 提供的,事件发布、订阅功能,通过订阅事件,可以感知内部变化的发送,并做相应的处理。 | 
| 时间服务(时区、夏令时) | TuyaOS 提供的,时间管理和维护功能,支持 UTC 时间和本地时间,本地时间由 UTC 时间、时区、夏令时等因素综合得来。 | 
| 定时队器 | TuyaOS 提供的,软件定时功能。 | 
| 工作队列 | TuyaOS 提供的,一种工作队列功能,用于处理低优先级的,可能存在阻塞的异步任务。 | 
| 连接管理 | TuyaOS 提供的,管理设备上各种连接方式的功能,如 Wi-Fi、Ethernet、蓝牙之类的。维护设备和网络直接的连接状态。 | 
| 线程管理 | TuyaOS 提供的,线程管理功能。 | 
设备驱动
连接驱动
| 能力 | 说明 | 
| Ethernet | Ethernet 驱动 | 
外设驱动
| 能力 | 说明 | 
| GPIO | GPIO 驱动 | 
| ADC | ADC 驱动 | 
| PWM | PWM 驱动 | 
| I2C | I2C 驱动 | 
| I2S | I2S 驱动 | 
| UART | UART 驱动 | 
| DAC | DAC 驱动 | 
| SPI | SPI 驱动 | 
定时服务
| 能力 | 说明 | 
| 本地定时 | 将定时任务规则下载到设备,本地计时并到期执行任务。 | 
| 天文定时 | 本地定时的一种,通过设备所处区域日出日落时间规则设置定时任务。 | 
| 日历定时 | 本地定时的一种,更加丰富的定时规则选择,可以使用周循环、奇偶日、隔天、隔小时等规则设置定时任务。 | 
升级服务
| 能力 | 说明 | 
| 静默升级 | 设备自动扫描云端升级配置,在不需要 App 感知的情况下对设备固件进行升级。 | 
| 提醒升级/强制升级 | 云端配置升级,在 App 通过之后,通知设备对固件进行升级。 | 
| 附属固件升级 | 对设备上的各种固件、文件进行升级。 | 
设备安全
| 能力 | 说明 | 
| 安全体系(安全级别,安全能力) | 设备身份认证、安全存储、安全通信、隐私数据合规。 | 
网络
| 能力 | 说明 | 
| iot-dns | 服务域名配置、证书管理服务、域名解析服务 | 
| https | HTTPS 库 | 
| mqtt over tls | MQTT 库 | 
| mbedTLS | mbedTLS 库 | 
支持与帮助
在开发过程遇到问题,您可以登录 TuyaOS 开发者论坛 联网单品开发版块 进行沟通咨询。