本文以TG7100C芯片为例,介绍在开发自有品牌项目智能插座产品时,使用开发板调试配网连云的过程,以及开发出海产品、量产设备证书的注意事项。
创建与配置产品
创建一个自有品牌项目。详细操作,请参见创建项目。
创建一个品类为插座的产品。详细操作,请参见创建产品。
定义产品功能。
在smart_outlet示例代码里面提供了一份导出的完整的物模型文件Products/example/smart_outlet/smart_outlet.json,建议您在创建产品后通过导入物模型复制到新建产品中。
新产品导入物模型有两种方式,即从已有产品拷贝一份物模型,或者导入一份JSON文件。
拷贝新建产品的ProductKey
编辑文件Products/example/smart_outlet/smart_outlet.json,将productKey字段替换成新的,并保存。
导入一份JSON文件
导入物模型时,建议您选择Products/example/smart_outlet/smart_outlet.json路径下的JSON文件。导入物模型的具体操作,请参见导入物模型。
导入物模型时,您还需要注意以下内容。
建议您选择Products/example/smart_outlet路径下的smart_outlet.json文件。
当您的产品售往中国内地以外地区时,请确定本地定时属性的JSON对象定义内包括时差(TimezoneOffset),该参数会影响不同时区下的本地定时功能能否正常工作。
配置人机交互。
如需使用云智能公版App,请打开使用云智能公版App的开关。
注意完成所有必填配置项,详细说明,请参见配置App。
生成测试的设备证书。
新蓝牙辅助配网要求Wi-Fi的MAC地址与设备证书中的Device Name保持一致。在TG7100C开发板上,可以在固件运行后通过串口输入mac指令,查询芯片当前的Wi-Fi MAC地址,并用此MAC地址作为Device Name在设备调试页面申请测试设备证书。注意MAC地址中的字母全部为小写格式。
查询Wi-Fi MAC地址示例
#mac MAC address: 18-b9-05-c0-6e-d5
输入小写格式的MAC地址,如示例中的18b905c06ed5作为DeviceName生成测试设备
拷贝测试设备证书,请注意一定要依次完整拷贝ProductKey,DeviceName,DeviceSecret,ProductSecret,ProductID。
批量投产,发布设备。
对于在批量投产页面,确认产品基本信息,确认并勾选《开发者须知》、《授权协议》,确认产品发布,待产品发布完成后可以在云智能App“自动发现”页面搜索到待配网状态的设备。
设备配网连云
设置设备证书
将设备固件烧录到开发板之后,可以通过linkkey命令设置设备证书,然后通过reset命令重置设备。
设置设备证书信息,在设备上电后将完整的设备证书信息写入开发板。
linkkey ProductKey DeviceName DeviceSecret ProductSecret ProductID
设备重置,清除设备配网信息。
reset
云智能App配网(V3.5.5以上版本)
在开发板上设置自有品牌产品的设备证书,并重置设备后,设备会处于待配网状态,会通过BLE广播自己的蓝牙辅助配网相关的设备信息。
在批量投产页面确认“开发完成”的产品,可以在云智能App自动发现页面,发现处于待配网状态的设备。如果产品未确认“开发完成”,可以单击手动添加进入手动添加页面,选择对应品类的“蓝牙+Wi-Fi”连接方式进入配网。
App配网过程如下图所示。
配网连云设备端关键日志示例
蓝牙辅助配网
配网状态
命令/动作
预期日志
设备重置
reset
start-----------hal
开启蓝牙辅助配网
ble_awss
ble_awss_open
Parse SSID/PWD
设备解析出热点信息
IOTX_AWSS_GOT_SSID_PASSWD
AP Connect
设备连接AP
IOTX_AWSS_CONNECT_ROUTER
DHCP Get IP
设备获取IP地址
IOTX_AWSS_GOT_IP
Cloud Connect
连云成功
Cloud Connected
零配
配网状态
命令/动作
预期日志
设备重置
reset
start-----------hal
Dev Scan
awss
IOTX_AWSS_START
Awss Process
active_awss
IOTX_AWSS_ENABLE
Parse SSID/PWD
设备解析出热点信息
IOTX_AWSS_GOT_SSID_PASSWD
AP Connect
设备连接AP
IOTX_AWSS_CONNECT_ROUTER
DHCP Get IP
设备获取IP地址
IOTX_AWSS_GOT_IP
Cloud Connect
连云成功
Cloud Connected
一键配网
配网状态
命令/动作
预期日志
设备重置
reset
start-----------hal
Dev Scan
awss
IOTX_AWSS_START
Awss Process
active_awss
IOTX_AWSS_ENABLE
Parse SSID/PWD
设备解析出热点信息
IOTX_AWSS_GOT_SSID_PASSWD
AP Connect
设备连接AP
IOTX_AWSS_CONNECT_ROUTER
DHCP Get IP
设备获取IP地址
IOTX_AWSS_GOT_IP
Cloud Connect
连云成功
Cloud Connected
设备热点配网
配网状态
命令/动作
预期日志
设备重置
reset
start-----------hal
起设备热点
dev_ap
ssid:adh_[pk]_[mac suffix]
Parse SSID/PWD
设备解析出热点信息
IOTX_AWSS_GOT_SSID_PASSWD
AP Connect
设备连接AP
switch to ap:[ap ssid]
IOTX_AWSS_CONNECT_ROUTER
DHCP Get IP
设备获取IP地址
Let's post GOT_IP event
Cloud Connect
连云成功
Cloud Connected
本地定时功能
本地倒计时功能的详细介绍,请参见开发设备端本地定时功能。
开发过程中,您需要注意以下内容。
注意在产品功能定义页面里添加设备端上定时(DeviceTimer)属性。
说明在配置人机交互-自动化与定时中勾选本地定时后,平台会自动在功能定义中添加设备端上定时(DeivceTimer)属性。
在人机交互页面的自动化与定时中,选中本地定时功能复选框。
在人机交互页面的设备面板中,注意区别本地定时与云端定时。如果产品需要使用本地定时,则明确指定本地定时的组件。
本地倒计时功能
本地倒计时功能的详细介绍,请参见本地倒计时功能开发实践。
开发过程中,您需要注意以下内容。
在产品功能定义页面里添加设备端上定时(DeviceTimer)属性。
说明在配置人机交互-自动化与定时中勾选本地定时后,平台会自动在功能定义中添加设备端上定时(DeivceTimer)属性。
在人机交互页面的自动化与定时中,选中本地倒计时功能复选框。
在人机交互页面的设备面板中,选择的面板中使用了倒计时列表的组件。
三方语音平台
三方语音平台Amazon Alexa和Google Home的对接,请参见以下文档。
固件OTA
自有品牌项目的产品除了云智能App与天猫精灵App操作界面上有区别,OTA过程是一致的。详细介绍,请参见固件OTA。
量产设备
前文介绍了新蓝牙辅助配网方案需要在设备中写入设备证书,并且Device Name与Wi-Fi的MAC地址保持一致。测试设备证书可以通过读取开发板的Wi-Fi地址后在设备调试页面生成,本节介绍自有品牌项目量产阶段如何生成和获取设备证书。生活物联网平台设备量产介绍,请参见量产流程介绍与量产设备。
上传MAC地址、生成设备证书。
对于自有品牌项目的产品,智能生活物联网平台没有MAC地址段提供,需要厂商自己上传MAC地址,作为Device Name来生成设备证书。注意MAC地址中的字母全部为小写格式。
烧录时通过量产烧录工具写入Device Name同时覆盖芯片Wi-Fi MAC即可实现Device Name与Wi-Fi MAC地址保持一致的要求。
自有品牌项目产品在量产设备时,需要准备好符合模版要求的MAC地址段,并选择批量上传。
下载生成的设备证书清单(csv格式文件)。
在设备证书(默认包括ProductKey,DeviceName, DeviceSecret)中补充 ProductSecret与ProductID。
下载的csv格式的设备证书清单,需要通过文本处理才能生成符合TG7100C批量烧录工具需要的设备证书清单的格式。
在设备证书清单中,增加ProductSecret、ProductID的内容。其中第一行的
ProductSecret,ProductID
拼写(含大小写)严格保持一致。可以通过文本编辑器或者编写一个文本处理程序来处理。注意不要通过Excel编辑,这可能将csv文件转为Excel的格式。
烧录设备证书。
在平头哥芯片开放社区的资源下载页面中,下载五元组量产工具使用说明,按文档将包含设备证书的CSV文件,导入到数据库后进行烧录。