Firefly开源社区

FireBLe设备之间如何做配对?

31

积分

0

威望

0

贡献

游客

积分
31
发表于 2015-5-19 21:30:42     
fireble入手几天了,自己改进了QPPS 和QPPC 能实现串口透传。
但是发现官方例子是很多,但是都没有配对的例程。
自己看QPPC的代码 什么 TK ,LTK ,STK ,IRK 看得眼都花了,也没很么眉目。
QPPC例子的   app_menu.c 文件内倒是有个菜单函数:

static void app_menu_show_gap(void)
{
        app_menu_show_line();
        QPRINTF("* QN BLE GAP Menu\r\n");
    QPRINTF("* 1. Inquiry Start\r\n");
    QPRINTF("* 2. Inquiry Stop\r\n");
#if (BLE_PERIPHERAL)
    QPRINTF("* 3. Advertisement Start\r\n");
    QPRINTF("* 4. Advertisement Stop\r\n");
#endif
    QPRINTF("* 5. Create Connection\r\n");
    QPRINTF("* 6. Disconnection\r\n");
#if (QN_SECURITY_ON)
    QPRINTF("* 7. Pair Request\r\n");
#endif
    QPRINTF("* 8. UnPair\r\n");
        app_menu_show_line();
}
第六项貌似是匹配请求项,但是运行之后发现没有输入项,直接现实绑定了某个点。
而第7项的调用如下:
app_env.menu_id = menu_gap_bond;
也就是说选中7项以后,当前menu id 变了,跟踪之发现其运行了  app_menu_show_gap_dev_record();函数。根本不是配对啊!!
而一些关于配对的API, API解析文件说得也是解释得模棱两可。这模块的资源和实用程度远远不及TI 的CC2540系列。
现在对配对流程一直理不清,希望有做到的前辈指点下,万分感激。
回复

使用道具 举报

31

积分

0

威望

0

贡献

游客

积分
31
发表于 2015-5-19 21:57:28     
发现选 7 最终调用了
void app_gap_bond_req(struct bd_addr *addr, uint8_t oob, uint8_t auth, uint8_t iocap)
函数。 函数说明是 This function is used to initiate bonding procedure. 初始化绑定
此函数由APP_TASK 给GAP_TASK 发送了 GAP_BOND_REQ 消息,而发送消息给内核,应该会有handle有响应。但是没有找到。
回复

使用道具 举报

46

积分

0

威望

0

贡献

游客

积分
46
发表于 2015-5-20 09:38:05     
我也遇到同样的困惑,就是给的文档只给例子,比如QPPC的整个流程是怎么样的,没有一个流程图,先初始化什么,要先发什么消息,响应什么消息等等,单步调试根本就看不到整个流程是怎样的,有的地方一设断点连上没有多久就自动掉线了,要是有个流程图再加这个例子,对代码很好理解啊,先初始化什么的一清二楚;进行二次开发从而也会简单很多,希望官方能给相应地资料:lol
回复

使用道具 举报

179

积分

0

威望

0

贡献

技术小白

积分
179
发表于 2015-5-27 09:39:32     
就是啊,资料不是很完善。希望恩智浦收购后能强化下文档这方面,方便开发者开发。相信大厂在这方面会做的很好。
回复

使用道具 举报

151

积分

0

威望

0

贡献

技术小白

积分
151
发表于 2015-5-27 10:28:40     
wyq165 发表于 2015-5-19 21:57
发现选 7 最终调用了
void app_gap_bond_req(struct bd_addr *addr, uint8_t oob, uint8_t auth, uint8_t  ...

QN902x 属于半开源,协议栈的内容不可见,只能看手册摸索,ble 配对和传统蓝牙有点区别,配对也不一定都是需要输出配对码的。
回复

使用道具 举报

31

积分

0

威望

0

贡献

游客

积分
31
发表于 2015-5-28 08:46:27     
FireBLE_blue 发表于 2015-5-27 10:28
QN902x 属于半开源,协议栈的内容不可见,只能看手册摸索,ble 配对和传统蓝牙有点区别,配对也不一定都 ...

这块了解的差不多了,等有空时整理下发上来,大家交流交流。
回复

使用道具 举报

151

积分

0

威望

0

贡献

技术小白

积分
151
发表于 2015-5-28 09:20:41     
wyq165 发表于 2015-5-28 08:46
这块了解的差不多了,等有空时整理下发上来,大家交流交流。

好,期待你的分享。。。
回复

使用道具 举报

18

积分

0

威望

0

贡献

游客

积分
18
发表于 2015-8-2 17:11:34     
xiaolong_ba 发表于 2015-5-20 09:38
我也遇到同样的困惑,就是给的文档只给例子,比如QPPC的整个流程是怎么样的,没有一个流程图,先初始化什么 ...

等待好人的流程图:lol
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Copyright © 2014-2022 中山市天启智能科技有限公司 粤ICP备14022046号
快速回复 返回顶部 返回列表