你好:现在我的蓝牙设备需要绑定,但不需要配对码,使用下面配置:
Static const struct security_configuration user_security_configuration = {
.oob = GAP_OOB_AUTH_DATA_NOT_PRESENT,
.key_size = KEY_LEN,
.iocap = GAP_IO_CAP_NO_INPUT_NO_OUTPUT,
.auth = GAP_AUTH_REQ_MITM_BOND,
.sec_req = GAP_SEC1_NOAUTH_PAIR_ENC,
.ikey_dist = GAP_KDIST_SIGNKEY,
.rkey_dist = GAP_KDIST_ENCKEY,
.tk = {
。key = {0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0},
},
.csrk = {
xab。key = {0, 0 xab 0 x45 0 x55 0 x23 0 x01, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0, 0 x0},
},
};
.security_request_scenario = DEF_SEC_REQ_ON_CONNECT
没有绑定时,连接手机会弹出对话框,需要点击配对(不需要输入配对码)。但我现在有个需求,需要连接成功后设备主动发送数据,但有配对的话,必须在同意以后才能发数据。如果有配对绑定,在app_on_pairing_succeded处理可以搞的定,但如果已经绑定了,就不调用app_on_pairing_succeded,我该如何知道不会调用app_on_pairing_succeded呢!如果在app_on_connection对应函数中加入处理,会出现只要连接成功点不点配对就发送数据了。该如何实现我的这个需求呢?
你好,
抱歉,不太明白你的需求。
我们将该过程拆分为几个环节:搜索或广播,连接,配对绑定,回连,数据交互,加密
一般情况是:
初次连接:搜索或广播 -> 连接 -> 配对绑定(成功后会加密链路)-> 数据交互
第二次连:搜索或广播 -> 连接 -> 加密 -> 数据交互
能否将你的需求用上面的概念进行组织、描述?