• 涂鸦云平台设备授权介绍


    涂鸦云平台设备授权介绍

    想要使用涂鸦云 IoT 平台,需要对设备进行授权,本文便是对使用涂鸦云常见的几种授权方式进行一个介绍。

    1. 授权方式介绍

    对于嵌入式开发来说,在使用涂鸦云时常见的授权方式有两种,一种是使用上位机进行烧录授权,另一种则是使用 UUID 和 AuthKey 的方式进行授权。

    在进行授权时,主要有下图中三种方式:生产凭证,授权码清单,生产凭证-仅授权。

    在这里插入图片描述

    • 生产凭证:要使用涂鸦提供的上位机进行烧录授权。

    • 授权码清单:提供 UUID 和 AuthKey ,开发者通过代码的方式将提供的 UUID 和 AuthKey 写入到加密 flash 中(也就是本文要详细介绍的方式)。

    • 生产凭证-仅授权:要使用涂鸦提供的上位机仅进行授权操作,不烧录固件。

    在使用上述几种方式进行授权,其原理都是一样,都是将 UUID 和 AuthKey 写入到指定的 flash 中。只不过使用生产凭证进行授权时,是通过上位机将 UUID 和 AuthKey 写入到加密 flash 中。

    2. 使用授权码清单进行授权

    通过使用授权码清单进行授权,就不用再通过使用使用上位机进行授权了,方便开发。

    具体操作代码如下:

    #include "tuya_iot_wifi_api.h"
    
    #define UUID "tuyaxxxxxxxxxxxxa4c6"
    #define AUTHKEY "GPwIxxxxxxxxxxxxxxxxxxxxxxxx1maj" // 这里的 UUID, Authkey 是无效的!!!
    
    WF_GW_PROD_INFO_S prod_info = {UUID, AUTHKEY};
    ws_db_init_mf();
    op_ret = tuya_iot_set_wf_gw_prod_info(&prod_info);
    if (OPRT_OK != op_ret) {
        PR_ERR("tuya_iot_set_gw_prod_info err:%d", op_ret);
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    这里的是通过 tuya_iot_set_wf_gw_prod_info() 函数将 UUID 和 AuthKey 写入到加密 flash 中的。ws_db_init_mf() 是用来初始化加密 flash 的。

    还有一点需要的注意的是,该函数的调用应该在 tuya_iot_wf_soc_dev_init() 函数之前,这是因为tuya_iot_wf_soc_dev_init() 执行之后设备就进入了配网模式,如果之前连过网那么设备就会直接去连接云。如果在此之后进行初始化的话,就有可能会出现设备连云的时候 UUID 和 AuthKey 还没写入。

    还有最为重要的一点,一个 UUID 和 AuthKey 代表一台设备,不能多个设备同时使用一个 UUID 和 AuthKey 。如果多个设备同时使用一个 UUID 和 AuthKey 这样会导致设备频繁掉线的,这就有点类似于你使用多台手机同时登录一个 QQ 一样。

    3. 应用示例

    这里提供了一个简单的应用示例,基于 TuyaOS 3.3.0,也就是通过 VS code 中的 Wind IDE 插件下载的。

    关于 TuyaOS 3.3.0,可以点击查看更多详情。

  • 相关阅读:
    《Mycat分布式数据库架构》之高可用集群
    有人问你MySQL是如何查询数据的,请把这篇文章甩给他!(荣耀典藏版)
    Unreal引擎自带的有用的工具函数,持续更新中
    Java爬虫框架下代理使用中的TCP连接池问题及解决方案
    vue2时间处理插件——dayjs
    resnet解释--突破层数理论限制
    家庭燃气表微信抄表识别系统
    如何学习运放实战设计?学这些精髓
    亚信科技AntDB数据库 高并发、低延迟、无死锁,深入了解AntDB-M元数据锁的实现
    数据结构之顺序表
  • 原文地址:https://blog.csdn.net/sandwich_iot/article/details/126765926