CC2640手动配对绑定
如何实现通过lightblue先连接上设备,再通过lightblue发指令实现配对绑定?如果手动配对绑定不安全的,但是要是我一定要做,2640这边的程序代码要怎么改?
你好,
这个是可以实施的。
对你的bonding/pairing进行如下设置.
在static void SimpleBLEPeripheral_init(void)函数内:
// Setup the GAP Bond Manager
{
uint32_t passkey = 0; // passkey "000000"
uint8_t pairMode = GAPBOND_PAIRING_MODE_WAIT_FOR_REQ;
uint8_t mitm = TRUE;
uint8_t ioCap = GAPBOND_IO_CAP_DISPLAY_ONLY;
uint8_t bonding = TRUE;
GAPBondMgr_SetParameter(GAPBOND_DEFAULT_PASSCODE, sizeof(uint32_t),
&passkey);
GAPBondMgr_SetParameter(GAPBOND_PAIRING_MODE, sizeof(uint8_t), &pairMode);
GAPBondMgr_SetParameter(GAPBOND_MITM_PROTECTION, sizeof(uint8_t), &mitm);
GAPBondMgr_SetParameter(GAPBOND_IO_CAPABILITIES, sizeof(uint8_t), &ioCap);
GAPBondMgr_SetParameter(GAPBOND_BONDING_ENABLED, sizeof(uint8_t), &bonding);
}
配对改为等待主机请求
uint8_t pairMode = GAPBOND_PAIRING_MODE_WAIT_FOR_REQ;
IOcap改为no input no output即可
uint8_t ioCap = GAPBOND_IO_CAP_NO_INPUT_NO_OUTPUT;
