Page 1 of 1

【分享】TuyaOS中控二维码激活介绍

Posted: 2023年 Jun 29日 16:12
by pushu

TuyaOS中控SDK使用二维码扫码的方式进行激活,接入涂鸦云,详细流程如下。

准备工作

配置文件实例

后续的激活相关配置信息都可以从示例config.json中找到,如下所示:

Code: Select all

{
    "pid": "xxxx",
    "uuid": "xxxx",
    "authkey": "xxxxx",
    "storage_path": "/tuya/data/",
    "log_level": 4,
    "sw_ver": "1.0.0",
    "oem": true,
    "tuya": {
        "zigbee": {
            "storage_path": "/tuya/data/",
            "cache_path": "/tmp/",
            "dev_name": "/dev/ttyS0", 
            "cts": 1,
            "thread_mode": 1
        }
    }
}

授权信息介绍

在涂鸦开发者平台创建产品,获取到授权信息,包括:pid,uuid,authkey。

● 产品 pid:每一个产品在涂鸦IOT前台创建后,都会生成唯一的ID(product id),此ID可标识产品;
● 固件 key:IOT前台硬件开发新增硬件后,都会生成一个固件key,代表这个固件的唯一标识;
● oem:表示客户开发的固件是否支持oem。打个比方,开发者开发的同一个中控程序,可以适配不同型号的中控,虽然pid不相同,但是固件key可以相同,便于后续统一ota升级等。

因此,config.json文件配置可以如下:
1、不需要oem,pid字段填写pid信息,oem设置为false

Code: Select all

{
    "pid": "pidxxxxxx",
    "uuid": "xxxxxx",
    "authkey": "xxxxxx",
    "oem": false,
}

2、需要oem,pid字段填写固件key信息,oem设置为true

Code: Select all

{
    "pid": "keyxxxxxx",
    "uuid": "xxxxxx",
    "authkey": "xxxxxx",
    "oem": true,
}

开发者可以根据需要灵活使用。

其他配置信息介绍

storage_path:存储目录,TuyaOS中控SDK运行中需要存储数据,请分配一个独立的存储路径,避免SDK内部数据与开发者自己的数据有冲突
log_level:日志等级,最好设置成4,偏于问题排查,不设置的话默认为4
sw_ver:固件版本号,该版本号用于管理固件的升级,适配ota相关接口既可使用涂鸦IOT平台进行固件升级。
zigbee字段:如果需要开发中控的网关功能需要关注,配置zigbee模组的相关信息。

以上相关信息填写正确后,就可以进入中控激活阶段的流程了。

中控激活流程

接口说明

SDK提供了shortURL用于激活设备,您可以将其转换成二维码,用户通过App扫码激活设备。
用法示例:

Code: Select all

static void active_shourturl_cb(char *shorturl)
{
    if (NULL == shorturl) {
        return;
    }

    PR_DEBUG("shorturl : %s", shorturl);

    return;
}

TY_GW_INFRA_CBS_S gw_cbs = {
    .gw_reset_cb       = __gw_reset_cb,
    .gw_upgrade_cb     = __gw_upgrade_cb,
    .gw_active_stat_cb = __gw_active_stat_cb,
    .gw_reboot_cb      = __gw_reboot_cb,
    .gw_active_url_cb  = active_shourturl_cb,
};

op_ret = user_svc_init(&gw_cbs);
if (op_ret != OPRT_OK) {
    PR_ERR("user_svc_init err: %d", op_ret);
    return op_ret;
}

二维码生成

在开发阶段,如果没有开发好二维码功能的话,可以使用在线二维码平台,如下:
输入上面日志中的shorturl,生成二维码,然后使用涂鸦智能APP扫码激活。

中控扫码激活.png