蓝牙授权产测

更新时间:2024-07-30 03:09:33下载pdf

本文描述 授权产测基本原理 以及 授权产测一般流程,仅供研发、FAE 和开发者在 产品开发阶段 参考使用。

实际的生产流程,参考工艺人员提供的 授权产测 指导文档。也可以详询工艺人员和联系相应的涂鸦产品经理。

授权流程

授权的目的是将涂鸦的授权信息写入芯片的 Flash 中。授权信息是涂鸦设备进行配网的依据,只有成功授权的设备才能与涂鸦智能 App 进行配网。

临时授权

在 Demo 体验阶段,可以在 app_config.h 文件中直接开启宏 TUYA_SDK_DEBUG_MODE,就可以进行临时授权。

正式授权

在开发阶段,使用以下方式进行正式授权。

  1. 下载并安装 涂鸦生产解决方案 中的 云模组,安装过程参考 附录 1

  2. 打开 云模组,进行如下配置。

    蓝牙授权产测
    1. 输入生产凭证后回车,会自动加载出其他信息。关于如何获取生产凭证,咨询工艺人员或产品经理。
    2. 测试工序 处,选择 烧录授权
    3. 单击 确定
  3. 硬件上,将待测设备通过 USB 转串口工具和电脑连接。

    关于待测设备的串口引脚,详见 开发平台硬件外设 章节。待测设备的默认波特率是 9600bps。

  4. 配置参数和选择串口。

    蓝牙授权产测
    1. 单击左上角的 参数设置
    2. 勾选 单独授权,并单击 确定 按钮。
    3. 选择端口,即待测设备对应的串口。
    4. 单击 运行
  5. 等待所有测试项运行完成,即授权成功,单击左下角的 测试详情,可以看到具体的测试项。

    蓝牙授权产测

产测流程

产测的目的是检测硬件模组、PCBA 或者成品在生产过程中可能出现的硬件问题,是对硬件产品的保障性测试。

涂鸦的产测方案根据蓝牙通信方式的不同,分为 3 种类型:

  • 基于待测设备广播的 Dongle 测试模式 1

  • 基于待测设备连接的 Dongle 测试模式 2

  • 基于待测设备扫描的 信标测试模式

不同类型的区别详见 附录 5

Dongle 测试模式 1

说明:Dongle 测试模式 1 涵盖正式授权过程以及 RSSI 测试。

  1. 下载并安装 涂鸦生产解决方案 中的 云模组,安装过程参考 附录 1

  2. 打开 云模组,进行如下配置。

    蓝牙授权产测
    1. 输入生产凭证后回车,会自动加载出其他信息。关于如何获取生产凭证,咨询工艺人员或产品经理。
    2. 测试工序 处,选择 烧录授权
    3. 单击 确定
  3. 硬件上,将待测设备和 Dongle 通过 USB 转串口工具和电脑连接。

    关于待测设备的串口引脚,详见 开发平台硬件外设 章节。待测设备和 Dongle 的默认波特率都是 9600bps。

    Dongle 调整到 M1 模式(UART_CONTROL),调整方法参考 涂鸦蓝牙 Dongle 使用指南

  4. 配置参数和选择串口。

    蓝牙授权产测
    1. 单击左上角的 参数设置
    2. 勾选 单独授权RSSI 测试,并单击 确定 按钮。
    3. 选择端口,即待测设备对应的串口。选择 BleD,即 Dongle 对应的串口。
    4. 单击 运行
  5. 等待所有测试项运行完成,即授权成功,单击左下角的 测试详情,可以看到具体的测试项。

    蓝牙授权产测

    如上图所示,仅测试项 Ble RSSI 测试 是由上位机发送指令给 Dongle 用于测试 RSSI 的,其他测试项均为上位机发送指令给待测设备(同正式授权)。

Dongle 测试模式 2

Dongle 测试模式 2 主要用于测试多外设的场景,也被称作 整机产测模式。上位机通过 Dongle 与待测设备进行命令交互,适用于任何测试场景。

该测试模式下,由于测试的外设不可预知,SDK 默认仅支持 进入测试模式退出测试模式 两条指令。其余外设测试指令可由用户根据测试需要,在这两条指令间自主添加。同时,可通过修改 JSON 配置文件,间接修改上位机支持的测试项目。关于外设测试协议和 JSON 文件修改方式,详询工艺人员或产品经理。

增加自定义测试项

如需在固件中增加自定义测试项,可在 tuya_ble_custom_app_production_test_process 接口中增加相应 case 即可,接口默认如下:

TUYA_WEAK_ATTRIBUTE VOID_T tuya_ble_custom_app_production_test_process(UINT8_T channel, UINT8_T* p_in_data, UINT16_T in_len)
{
    ty_product_test_cmd_t* cmd = (VOID_T*)p_in_data;
    tal_util_reverse_byte((VOID_T*)&cmd->len, SIZEOF(UINT16_T));
    tal_util_reverse_byte((VOID_T*)&cmd->sub_id, SIZEOF(UINT16_T));

    if ((cmd->type != 3) || (cmd->len < 3)) {
        return;
    }

    UINT16_T data_len = cmd->len - 3;

    switch (cmd->sub_id) {
        case PRODUCT_TEST_CMD_ENTER: {
            UINT8_T tmp_buf[] = "{\"ret\":true}";
            tuya_ble_product_test_rsp(channel, cmd->sub_id, tmp_buf, strlen((VOID_T*)tmp_buf));
        } break;

        case PRODUCT_TEST_CMD_EXIT: {
            UINT8_T tmp_buf[] = "{\"ret\":true}";
            tuya_ble_product_test_rsp(channel, cmd->sub_id, tmp_buf, strlen((VOID_T*)tmp_buf));
        } break;

        default: {
        } break;
    }
}

测试流程

  1. 下载并安装 涂鸦生产解决方案 中的 安防传感,安装过程参考 附录 1

  2. 打开 安防传感,配置如下参数。

    蓝牙授权产测
    1. 选择 本地测试 模式。
    2. 输入生产凭证后回车,会自动加载出其他信息。关于如何获取生产凭证,咨询工艺人员或产品经理。
    3. 导入测试序列 JSON 文件,带 SN。
    4. 单击 启动测试
  3. 硬件上,将待测设备和 Dongle 通过 USB 转串口工具和电脑连接。

    关于待测设备的串口引脚,详见 开发平台硬件外设 章节。待测设备和 Dongle 的默认波特率都是 9600bps。

    Dongle 调整到 M1 模式(UART_CONTROL),调整方法参考 涂鸦蓝牙 Dongle 使用指南

  4. 配置参数和选择串口。

    蓝牙授权产测
    1. 输入 SN 号:Test12345。此处 SN 仅为研发测试用,工厂使用 SN 生成工具。详询工艺人员或产品经理。
    2. 单击 测试项配置
    3. 单击左侧的配置图标,弹出 串口连接配置
    4. 串口号选择待测设备的串口,波特率 9600bps,配置完成后,单击 确认
  5. 单击 运行,等待所有测试项运行完成。

    蓝牙授权产测

    如上图所示,所有测试项指令均为上位机发送给待测设备,以上步骤仅为授权。

  6. 单击 停止测试 按钮,导入整机产测序列 json 文件,单击 编辑,按照下图勾选测试项后,选择 确定 > 启动测试

    蓝牙授权产测
  7. 单击 测试项配置,配置如下参数。

    蓝牙授权产测
    1. 输入 SN 号:Test12345。此处 SN 仅为研发测试用,工厂使用扫码枪扫描二维码。详询工艺人员或产品经理。
    2. 单击 测试项配置
    3. 单击左侧的配置图标,弹出 串口连接配置
    4. 串口号选择 Dongle 的串口,波特率 9600bps,配置完成后,单击 确认
  8. 单击 运行,等待所有测试项运行完成。

    蓝牙授权产测

    如上图所示,所有测试项指令均为上位机发送给 Dongle,用于测试 RSSI 或其他用户自定义测试项。

信标测试模式

说明:信标测试模式涵盖正式授权过程以及 RSSI 测试。

使用信标测试模式需要待测设备支持扫描功能,开启扫描功能的方式各芯片平台略有不同。更多信息,参考 开发平台

  1. 下载并安装 涂鸦生产解决方案 中的 云模组,安装过程参考 附录 1

  2. 打开 云模组,进行如下配置。

    蓝牙授权产测
    1. 输入生产凭证后回车,会自动加载出其他信息。关于如何获取生产凭证,咨询工艺人员或产品经理。
    2. 测试工序 处,选择 烧录授权
    3. 单击 确定
  3. 硬件上,将待测设备和 Dongle 通过 USB 转串口工具和电脑连接。

    关于待测设备的串口引脚,详见 开发平台硬件外设 章节。待测设备和 Dongle 的默认波特率都是 9600bps。
    Dongle 调整到 M2 模式,发出广播 ty_mdev,调整方法参考 涂鸦蓝牙 Dongle 使用指南

  4. 配置参数和选择串口。

    蓝牙授权产测
    1. 单击左上角的 参数设置
    2. 勾选 单独授权RSSI 测试,并单击 确定 按钮。
    3. 选择端口,即待测设备对应的串口。
    4. 单击 运行
  5. 等待所有测试项运行完成,即授权成功,单击左下角的 测试详情,可以看到具体的测试项。

    蓝牙授权产测

    如上图所示,所有测试项均为上位机发送指令给待测设备。

附录 1:获取涂鸦生产解决方案

  1. 前往 涂鸦 PMS 系统,注册 PMS 账号。注册流程如下图,根据实际情况选择个人开发者或者公司,并按照注册指引填写相关信息。若您的邮箱收到涂鸦发送的邮件,说明审核已经通过。如果长时间未收到邮件,请联系跟您对接的涂鸦产品经理。

    蓝牙授权产测
  2. 登录涂鸦 PMS 系统,选择 知识库管理 > 软件下载,搜索 生产解决方案 并下载。

    蓝牙授权产测
  3. 下载完成后,按照默认配置安装,打开 生产解决方案。登录账号和密码同 PMS 系统。

  4. 单击 云模组,等待安装完成。云模组 一般用于模组授权产测,也可用于成品的纯授权。

    蓝牙授权产测
  5. 单击 安防传感,等待安装完成。安防传感 一般用于成品授权产测,支持整机产测功能。

    蓝牙授权产测

附录 2:获取 Dongle

涂鸦开发者平台,获取开发板,开发板对应的 物料编码2.03.99.00045

关于使用方法,参考 涂鸦蓝牙 Dongle 使用指南

附录 3:蓝牙通信方式

蓝牙通信有广播和连接两种方式。

广播通信

广播通信是单向通信,适用于一对多(理论上无限)的场景。在广播通信中,发出广播的设备称作 广播者,捕获广播的设备称作 扫描者

蓝牙授权产测

连接通信

连接通信是双向通信,适用于一对一的场景,也可用于一对多(有限)的场景。在连接通信中,主动发起连接的设备称作 主机,被动连接的设备称作 从机

蓝牙授权产测

附录 4:名词解释

根据沿袭的使用习惯,广播者又被称作 信标,扫描者/主机又被称作 Dongle。为了叙述简洁,下文会根据使用习惯随机切换 信标广播者 等相同含义的名词。

注意:当前版本的 Dongle 硬件 同时支持 信标 和原 Dongle 的能力,通过按键设置不同的模式进行区分。更多信息,参考 涂鸦蓝牙 Dongle 使用指南

蓝牙授权产测

缩写

  • DUT:Device Under Test,待测设备

  • SN:Serial Number,序列号

附录 5:产测方案对比

方案名称 Dongle 测试模式 1 Dongle 测试模式 2 信标测试模式
DUT 支持扫描能力 不需要 不需要 需要
DUT 占用 Flash 和 RAM 资源 多(扫描)
测试 RSSI 支持 支持 支持
测试外设 不支持 支持 支持测试单一外设

说明

信标测试模式 仅支持测试单个外设,因为该模式仅通过是否扫描到特定广播作为输入条件,仅适用于单一测试场景。

如果需要测试多个外设,则只能选择 Dongle 测试模式 2。该模式中上位机通过 Dongle 与待测设备之间进行命令交互,可以测试任何外设。

信标测试模式

信标是一种可以发出特定广播的测试工具。Dongle 硬件 已经兼容信标功能 M2、M3、M4 和 M5。

简单的广播通信是单向通信,信标持续发出指定广播,待测设备扫描到该广播后做出相应动作。广播内容需要双方事先约定,适用于较为简单的测试场景,示意如下:

蓝牙授权产测

目前,已约定的广播内容(仅为信标名字)有:

  • ty_mdev:整机信标模式

  • ty_prov:授权信标模式

  • TY:传感设备测试

  • Mesh 广播:私有 Mesh 模式

Dongle 测试模式

Dongle 是一种可以扫描待测设备,连接待测设备,并与待测设备进行通信的测试工具。Dongle 硬件 已经兼容 Dongle 功能 M1。

扫描和连接通信中,最重要的问题是 Dongle 应该扫描和连接哪个待测设备?针对该问题,涂鸦根据不同需求,提供以下扫描和连接方式:

  • 通过 MAC 地址,扫描和连接指定待测设备,对应 Dongle 模式:UART_CONTROL,即上位机通过 UART 下发 MAC 地址给 Dongle。

  • 通过信号强度,扫描和连接附近待测设备,对应 Dongle 模式:RSSI_CONN,即 Dongle 主动扫描和连接符合设定 RSSI 范围的设备。

Dongle 扫描到待测设备,即可获得待测设备的 RSSI。如果仅测试 RSSI,则不需要连接。

产测流程

Dongle 与 DUT 一旦建立连接,就可以通过 蓝牙整机产测协议 进行不同命令的测试,非常适合于蓝牙整机的无线测试。此时,产测的一般流程为:

  1. 手动编辑 JSON 文件,选择 蓝牙整机产测协议 中的不同命令。可选。如果使用 云模组 上位机,则 JSON 文件已经由工艺人员完成并上传,您无需关心也不可更改。

  2. 上位机通过解析 JSON 文件,选择对应的命令下发给 Dongle。

  3. Dongle 处理命令或者将命令转发给 DUT,示意图如下:

    蓝牙授权产测