微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > CC2541 No Display No Keyboard 配对鉴权问题

CC2541 No Display No Keyboard 配对鉴权问题

时间:10-02 整理:3721RD 点击:

大家好:

将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的值?

请问您下列参数是如何设置的:

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;

您现在使用的是什么手机?您的设备是否有显示功能呢?

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

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top