TI论坛
直播中

卢原继

7年用户 232经验值
私信 关注
[问答]

请问CC2541 No Display No Keyboard配对鉴权成功后能读出CHAR 5的值吗?

大家好:
将SimpleBLEPeriphral工程SBP初始化函数改为如下配置:
  // Setup the GAP Bond Manager  [    uint32 passkey = 0; // passkey "000000"    uint8 pairMode = GAPBOND_PAIRING_MODE_INItiATE;    uint8 mitm = TRUE;    uint8 ioCap = GAPBOND_IO_CAP_NO_INPUT_NO_OUTPUT;    uint8 bonding = TRUE;    GAPBondMgr_SetParameter( GAPBOND_DEFAULT_PASSCODE, sizeof ( uint32 ), &passkey );    GAPBondMgr_SetParameter( GAPBOND_PAIRING_MODE, sizeof ( uint8 ), &pairMode );    GAPBondMgr_SetParameter( GAPBOND_MITM_PROTECTION, sizeof ( uint8 ), &mitm );    GAPBondMgr_SetParameter( GAPBOND_IO_CAPABILITIES, sizeof ( uint8 ), &ioCap );    GAPBondMgr_SetParameter( GAPBOND_BONDING_ENABLED, sizeof ( uint8 ), &bonding );  ]更改后,手机与设备配对时,会弹出配对请求窗口,但手机只需要点击确定或取消。但是即使点击确定,需要鉴权的Characteristic 5还是读不出值。
请问能否实现ioCap仅为No input No output,点击手机配对的确定后即可鉴权成功读出CHAR 5的值?

回帖(2)

庄当甜

2019-11-6 08:09:12
请问您下列参数是如何设置的:
uint32 passkey = 0; // passkey "000000"
uint8 pairMode = GAPBOND_PAIRING_MODE_INITIATE;//GAPBOND_PAIRING_MODE_WAIT_FOR_REQ;
uint8 mitm = TRUE;
uint8 ioCap = GAPBOND_IO_CAP_DISPLAY_ONLY;
uint8 bonding = TRUE;
您现在使用的是什么手机?您的设备是否有显示功能呢?
举报

卢原继

2019-11-6 08:15:02
引用: 小Qhhui 发表于 2019-11-6 08:09
请问您下列参数是如何设置的:
uint32 passkey = 0; // passkey "000000"
uint8 pairMode = GAPBOND_PAIRING_MODE_INITIATE;//GAPBOND_PAIRING_MODE_WAIT_FOR_REQ;

额,参数设置已经在帖子里写了。另外,问题已经找到了。在No input no putput模式下,系统会被配置成Just work模式,MIMT无法使用。蓝牙4.0官方协议中也说明了,Just work模式下不能做鉴权操作。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分