云端逻辑

更新时间:2024-11-20 08:51:12下载pdf

设备要连接涂鸦开发者平台,实现与 App 和涂鸦云端交互,需要遵循涂鸦设备端到云端的一系列规范,本文主要讲解此部分内容及相关示例。

本文涉及的概念如下表所示:

名称 说明
PID 产品的唯一标识,产品入网的身份证明,App 和云端的配置信息都绑定在 PID 上
DP 产品的数据模型,描述产品的功能
cJSON 设备端与云端通信的数据格式
固件 Key PID 下绑定的固件标识
授权码 也叫做生产凭证,设备与 涂鸦开发者平台 建立连接传输数据的认证信息
配网 设备连接 App 和涂鸦开发者平台的交互过程
OEM 固件 可实现同一固件用于同品类下多个不同 PID 的产品

PID

产品的唯一标识,相当于产品的身份证,涂鸦云端通过设备端上报的 PID 信息识别出产品并进行相关的交互显示,PID 是非常重要的信息,在创建产品时产生,通常需要将此信息填写在固件代码中。

云端逻辑

DP

产品的数据模型,描述产品的功能,用于设备与 App 和云端通信。在配置产品功能时产生,分为以下两种:

  • 标准功能:产品品类的常用的功能,可直接选用

  • 自定义功能:标准功能不能满足产品功能定义时,需要使用自定义功能自行配置

    云端逻辑

cJSON

涂鸦设备端到云端通信的数据格式,一种标准的数据格式。

设备端与 App 或云端通信时,需要将信息组装成标准的 cJSON 格式数据上报到,云端下发的数据也是 标准的 cJSON 格式,设备接收到数据后,按 cJSON 格式解析出相应的命令执行。

固件 Key

固件的标识信息,在开发者平台硬件开发步骤选择 新增自定义固件 时产生,绑定在 PID 下,包含固件标识名、固件版本、芯片平台、固件类型和升级通道等信息。

通常情况下,您不需要关注固件 Key,当存在同一个固件要绑定到多个 PID 的情况时,才需要将此信息填入到代码内,并打开 OEM 设置。

云端逻辑

云端逻辑

固件 Key 数据类型 说明
固件标识名 使用脚本编译时写入的固件名称
固件类型 根据产品类型选择,Wi-Fi 协议选择模组固件
芯片平台 根据选择的模组自动生成
固件版本 使用脚本编译时写入的固件版本,上传生产固件时填写

固件 key 包含的固件标识名、固件类型、芯片平台、版本号等信息要与编译固件时保持完全一致,否则使用涂鸦上位记烧录授权时会出现错误,不能完成烧录授权。

授权码

是设备与涂鸦开发者平台建立连接传输数据的认证信息,需要预先烧录到设备中。

配网时,设备连接到 Wi-Fi 路由器向涂鸦开发者平台注册时,会将此信息上报给云端,云端通过识别此信息,确认是涂鸦认证的设备,将设备连接到涂鸦开发者平台。

根据不同产品的烧录需求,涂鸦提供三种类型的授权码供自由选择,在授权码下单页面获取。

云端逻辑

授权码名称 说明
生产凭证 加密后的授权码信息,使用涂鸦上位机通过授权协议烧录到设备内,常用于固件烧录+授权一体方案,会对固件 key 包含的固件标识名、固件版本等信息进行校验,防止出现固件烧录错误、版本错误等现象,是涂鸦标准模组使用的烧录方式 ,也是涂鸦最推荐的烧录方式,不过需要涂鸦生产系统支持相应芯片的烧录,不适用于非涂鸦标准芯片。
生产凭证-仅授权 加密后的授权码信息,使用涂鸦上位机通过授权协议烧录到设备内,用于固件烧录+授权分立方案,不对固件 key 包含的信息做校验,适用于非涂鸦标准芯片的授权。
授权码清单 授权码明文信息,由开发者自行开发上位机烧录到设备内,通常不建议使用。

配网

设备连接 App 和涂鸦云端的交互过程,由 App 端发起,将 Wi-Fi 路由器的账号和密码等信息传输到设备端,设备连接到 Wi-Fi 路由器后会上报预先烧录好的授权信息向涂鸦云端注册,涂鸦认证通过后,就建立了设备与 App 和涂鸦云端的连接。

涂鸦提供手动配网(包含 Wi-Fi 快连和热点配网方式)、自动配网、扫码配网等多种方式,每种配网方式的逻辑和操作流程都不相同,需要保证设备端使用的配网方式和 App 选择操作完全对应,才能实现将设备连接上涂鸦开发者平台。

关于设备端配网的代码说明,请参考配网 API 及相关文档,关于 App 端配网操作的说明,请参考 App 操作说明

OEM 固件

通常情况下,将产品的 PID 信息填写在固件中,这样编译生成的固件只适用于此 PID。

对于一些应用场景,比如多个 PID 的产品功能相同,固件共用同一个即可,无需针对每个 PID 单独编译固件,就需要使用到 OEM 逻辑。

OEM 固件将固件 key 信息写在固件中,不包含 PID 信息,这样编译生成的固件,适用于同品类下多个不同的 PID。