成品产测-局域网

更新时间:2024-03-22 01:55:13下载pdf

设备成品产测是在制造过程中对成品进行全面检查和测试的过程,有助于确保产品质量和性能,提高客户满意度并确保产品符合规定的标准和要求。

本文主要介绍与 涂鸦上位机组成局域网 的成品产测方案,并未涉及成品产测的具体测试内容代码是如何实现的。因为不同的产品由于其功能差异,产测内容也是不一样的,成品产测的具体功能需要您根据实际的产品功能来设计和实现。

操作步骤

  1. 放置产测路由,SSID:tuya_mdev_test4,密码:12345678,信道:6

  2. 打开涂鸦提供的成品产测上位机。

    并不是所有品类的成品产测上位机软件都支持这种成品产测,开发前,先确认目标品类的成品产测软件支持该功能。关于涉及到具体品类的成品产测及其详细的操作步骤,查看文档 生产制造-成品采用涂鸦上位机 的成品产测方案说明。例如,照明->Wi-Fi->可配置产测->Wi-Fi 离线产测
    如需获取具体品类的产测协议,提交工单申请

  3. 设备上电扫描并连接该产测路由。连接成功后,设备、上位机和路由形成一个局域网。

  4. 上位机通过局域网给设备发送产测指令。

  5. 设备完成产测指令并返回结果。

  6. 测试完成后,上位机会记录并展示各项测试结果,便于后期追溯

关闭产测入口

设备如果符合以下任意一种情况,都不会进入成品产测流程,也不会扫描产测信标和连接产测路由。

  • 联网单品设备激活之后连续工作 15 分钟。

  • 配网工作模式选择 GWCM_OLD,该模式下不支持上述两种成品产测功能。关于配网工作模式,参考 配网模式的定义

  • 如果配网工作模式选择上电默认配网模式,但此时设备已经拿到 SSID 等网络信息,选择的配网模式包括:

    • GWCM_OLD_PROD
    • GWCM_LOW_POWER_AUTOCFG
    • GWCM_SPCL_AUTOCFG
  • 如果配网工作模式选择上电默认不配网,但设备当前处于配网状态,选择的配网模式包括:

    • GWCM_SPCL_MODE
    • GWCM_LOW_POWER

工作原理

设备无线路由器上位机成品产测入口未关闭无线路由器需要做如下设置: SSID: tuya_mdev_test4 密码:12345678 信道:6 DHCP 租约:3 分钟或者更短处于同一局域网段下扫描到信标并连接成功广播自身信息收到设备信息,给设备回复,表示已经发现设备进入产测模式进入产测流程发送各种产测指令返回执行结果设备无线路由器上位机

开发指导

由于每个模组上的资源不一样,并不会打开所有功能,您需要检查 tuya_iot_config.h 并确认如下宏是否已经定义:

#define ENABLE_PRODUCT_AUTOTEST  1

关联头文件

  • prod_test.h

使用方法

  1. 注册成品产测相关信息。
  2. 调用扫描产测信标接口。

API 说明

注册相关信息

注册配网模式、产测信标列表、产测指令及结果的回调函数等必要信息。

/**
 * @brief 上位机局域网产测时应用指令数据回调
 *
 * @param[in] cmd:Test command
 * @param[in] data:Test data
 * @param[in] len:Test data len
 * @param[out] ret_data:Test return data
 * @param[out] ret_len:Test return data len
 *
 * @return OPRT_OK on success. Others on error, please refer to tuya_error_code.h
 */
typedef OPERATE_RET(*MF_USER_PRODUCT_TEST_CB)(USHORT_T cmd, UCHAR_T *data, \
                                              UINT_T len, OUT UCHAR_T **ret_data, \
                                              OUT USHORT_T *ret_len);

typedef struct {
    GW_WF_CFG_MTHD_SEL              gwcm_mode;  //配网模式
    uint8_t                         ssid_count; //设备信标产测,您自定义的产测信标个数
    const char                    **ssid_list;  //设备信标产测,您自定义的产测信标列表
    prodtest_app_cb_t               app_cb;     //设备信标产测,扫描到信标后返回的信息
    MF_USER_PRODUCT_TEST_CB         product_cb; //上位机局域网产测,应用指令数据回调
    char                           *file_name;  //上位机局域网产测,固件标识名,即 APP_BIN_NAME
    char                           *file_ver;   //上位机局域网产测,固件版本号,即 USER_SW_VER
} prodtest_app_cfg_t;

/**
 * @brief 注册成品产测时所需的配置信息
 *
 * @param[in] app_cfg:应用配网模式
 *
 * @return OPERATE_RET
 *
 */
int prodtest_app_register(const prodtest_app_cfg_t *app_cfg);

扫描产测信标

/**
 * @brief 扫描产测信标及连接 tuya_mdev_test4
 *        扫描产测信标前会做产测入口判断,当前设备满足允许进入产测的前提条件时,才会进行扫描和连接。
 *        具体条件请看上文的<关闭产测入口>所列条目。
 *
 * @param[in] timeout:扫描超时时间 ms
 *                     如果超过该时间还扫不到产测信号,则不会进入产测流程。
 *                     如果填 0,则会使用默认值 500ms。
 *
 * @return TRUE:需要进入产测模式,FALSE:不进入产测模式
 *
 */
bool prodtest_ssid_scan(uint32_t timeout);

参考示例

下载联网单品框架后,框架的 apps 目录下有所有功能示例代码集合 tuyaos_demo_examples,可参考 service_product_test 文件夹中的代码。关于功能示例代码集合的使用,参考 TuyaOS 示例集合