TuyaOS
产测

涂鸦TuyaOS提供了产测的协议和连接能力。产测就是生产测试、产品测试,可以对模组、PCBA进行测试,也可以对已经安装好了的成品进行测试,经过测试可以筛选出问题产品,同时也可以进行一些产品的烧录、授权、基本配置等工作。产测的目的是进行批量、规模化、自动化的生成和测试,是产品量产的关键步骤。

涂鸦TuyaOS支持涂鸦产测协议,并提供了进入产测的通道机制,主要分为如下途径:

进入产测方式 描述
串口 涂鸦 TuyaOS 在启动的时候,通过 mf_init 接口启动产测任务,并等待串口进入产测命令,如果在500ms之后没有进入产测,则退出产测任务。mf_init接口需要开发者提供一些产测回调函数,用于处理一些产测命令,具体如下图所示。
gpio_test:涂鸦内部使用,开发者不需要关心,提供空的实现即可。
user_enter_mf_callback:进入产测回调,通知开发者已经进入产测,需要停止一些操作,防止影响产测。
user_callback:涂鸦内部使用,开发者不需要关心,提供空的实现即可。
mf_user_product_test:成品产测命令,特殊的需要开发者实现的产测命令会通过此回调函数告知开发者进行一些的测试操作。
user_pre_gpio_testgpio测试前回调,通知开发者进行一些准备动作,比如对gpio进行一些设置。
扫描信标 涂鸦TuyaOS在按照Wi-Fi模式,扫描指定产测信标,如果发现对应的信标,则进入产测模式,调用开发者通过app_cfg_set接口设置的回调函数。

接口描述

GPIO测试回调

extern VOID_T mf_user_pre_gpio_test_cb(VOID_T);

进入产测回调

extern VOID_T mf_user_enter_callback(VOID_T);

配置写入回调

extern VOID_T mf_user_callback(VOID_T);

成品产测回调

extern 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);

设置信标产测回调

VOID app_cfg_set(IN CONST GW_WF_CFG_MTHD_SEL mthd, APP_PROD_CB callback)
VOID_T(* APP_PROD_CB)(BOOL_T flag, SCHAR_T rssi)
callback for app product test
Definition: mf_test.h:145

设置信标产测信标

void set_prod_ssid(CHAR_T *ssid)

使用示例

// 进入信标产测回调
VOID test_mf_test_cb(BOOL_T flag, SCHAR_T rssi)
{
PR_DEBUG("enter mf test");
// TBD...
return;
}
// 在初始化tuya_iot_init_param调用此接口
VOID test_mf_test()
{
app_cfg_set(GWCM_OLD, test_mf_test_cb);
set_prod_ssid("tuya_mdev_test2");
return;
}