开发自有品牌项目插座产品

本文以TG7100C芯片为例,介绍在开发自有品牌项目智能插座产品时,使用开发板调试配网连云的过程,以及开发出海产品、量产设备证书的注意事项。

创建与配置产品

  1. 创建一个自有品牌项目。详细操作,请参见创建项目

  2. 创建一个品类为插座的产品。详细操作,请参见创建产品

  3. 定义产品功能。

    在smart_outlet示例代码里面提供了一份导出的完整的物模型文件Products/example/smart_outlet/smart_outlet.json,建议您在创建产品后通过导入物模型复制到新建产品中。

    新产品导入物模型有两种方式,即从已有产品拷贝一份物模型,或者导入一份JSON文件。

    • 拷贝新建产品的ProductKey

      编辑文件Products/example/smart_outlet/smart_outlet.json,将productKey字段替换成新的,并保存。

      物模型替换PK

    • 导入一份JSON文件

      导入物模型时,建议您选择Products/example/smart_outlet/smart_outlet.json路径下的JSON文件。导入物模型的具体操作,请参见导入物模型

      导入物模型时,您还需要注意以下内容。

      • 建议您选择Products/example/smart_outlet路径下的smart_outlet.json文件。选择json

      • 当您的产品售往中国内地以外地区时,请确定本地定时属性的JSON对象定义内包括时差(TimezoneOffset),该参数会影响不同时区下的本地定时功能能否正常工作。timerzoneoffset

  4. 配置人机交互。

    如需使用云智能公版App,请打开使用云智能公版App的开关。

    人机交互.png

    注意完成所有必填配置项,详细说明,请参见配置App

    人机交互基础配置.png

  5. 生成测试的设备证书。

    新蓝牙辅助配网要求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生成测试设备7100c生成dn

    • 拷贝测试设备证书,请注意一定要依次完整拷贝ProductKey,DeviceName,DeviceSecret,ProductSecret,ProductID。7100C拷贝5元组

  6. 批量投产,发布设备。

    对于在批量投产页面,确认产品基本信息,确认并勾选《开发者须知》《授权协议》,确认产品发布,待产品发布完成后可以在云智能App“自动发现”页面搜索到待配网状态的设备。批量投产.png

设备配网连云

  • 设置设备证书

    • 将设备固件烧录到开发板之后,可以通过linkkey命令设置设备证书,然后通过reset命令重置设备。

    • 设置设备证书信息,在设备上电后将完整的设备证书信息写入开发板。

      linkkey ProductKey DeviceName DeviceSecret ProductSecret ProductID
    • 设备重置,清除设备配网信息。

      reset
  • 云智能App配网(V3.5.5以上版本)

    • 在开发板上设置自有品牌产品的设备证书,并重置设备后,设备会处于待配网状态,会通过BLE广播自己的蓝牙辅助配网相关的设备信息。

    • 批量投产页面确认“开发完成”的产品,可以在云智能App自动发现页面,发现处于待配网状态的设备。如果产品未确认“开发完成”,可以单击手动添加进入手动添加页面,选择对应品类的“蓝牙+Wi-Fi”连接方式进入配网。App添加设备

    • App配网过程如下图所示。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地址后在设备调试页面生成,本节介绍自有品牌项目量产阶段如何生成和获取设备证书。生活物联网平台设备量产介绍,请参见量产流程介绍量产设备

  1. 上传MAC地址、生成设备证书。

    1. 对于自有品牌项目的产品,智能生活物联网平台没有MAC地址段提供,需要厂商自己上传MAC地址,作为Device Name来生成设备证书。注意MAC地址中的字母全部为小写格式

    2. 烧录时通过量产烧录工具写入Device Name同时覆盖芯片Wi-Fi MAC即可实现Device Name与Wi-Fi MAC地址保持一致的要求。

    3. 自有品牌项目产品在量产设备时,需要准备好符合模版要求的MAC地址段,并选择批量上传。mac批量上传

    4. 下载生成的设备证书清单(csv格式文件)。

  2. 在设备证书(默认包括ProductKey,DeviceName, DeviceSecret)中补充 ProductSecret与ProductID。

    • 下载的csv格式的设备证书清单,需要通过文本处理才能生成符合TG7100C批量烧录工具需要的设备证书清单的格式。三元组csv示例

    • 在设备证书清单中,增加ProductSecret、ProductID的内容。其中第一行的ProductSecret,ProductID拼写(含大小写)严格保持一致。可以通过文本编辑器或者编写一个文本处理程序来处理。注意不要通过Excel编辑,这可能将csv文件转为Excel的格式。五元组清单示例

  3. 烧录设备证书。

    在平头哥芯片开放社区的资源下载页面中,下载五元组量产工具使用说明,按文档将包含设备证书的CSV文件,导入到数据库后进行烧录。