首页 技术 正文
技术 2022年11月23日
0 收藏 965 点赞 3,811 浏览 902 个字

Nordic 公司自己做有 iBeacon的板子和 SDK,很少有人拥有这个SDK,我最近在朋友那也拿到了一个,但是还没有时间看。

现在我们用普通的SDK自带的 Beacon 例程来做开发,开发的时相信很多人是这样的:买别人已经做好的产品,拿回来操作几下,用nRF MCP 调试一下,就开始修改SDK了。

我也是这样子的,老实地说,然后就会碰到各种问题。

1、如何在SDK 自带的Beacon上设置 扫描请求包?

  其实有个地方比较关键,就是将m_adv_params.type 写成 BLE_GAP_ADV_TYPE_ADV_IND,不然你怎么设置,MCP 都扫不到 请求包的。

  memset(&m_adv_params, , sizeof(m_adv_params));     m_adv_params.type        = BLE_GAP_ADV_TYPE_ADV_IND;
m_adv_params.p_peer_addr = NULL;
m_adv_params.fp = BLE_GAP_ADV_FP_ANY;
m_adv_params.interval =NON_CONNECTABLE_ADV_INTERVAL;
m_adv_params.timeout =APP_CFG_NON_CONN_ADV_TIMEOUT;

2、为什么iOS 的MCP 扫描不到 advdata.p_manuf_specific_data?

呵呵。这个相信令很多不会开发 APP 的人来说是一个很头疼的事情,搞半天都母鸡抖是怎么回事。

iBeacon要求manuf_specific_data.company_identifier 值是 0x004C, 这样微信摇一摇才能摇得到。这个值是苹果公司的,Nordic 公司的是 0x0059。

iOS 系统 的MCP 会把0x004C进行过滤,所以你如果要用 MCP 或者lightblue其他调试工具来扫描的话,得不到 advdata.p_manuf_specific_data,怎么办呢?

将manuf_specific_data.company_identifier避开 0x004C咯? 可是微信摇一摇又不起作用了,咋办呢?

自己想办法,我只能告诉你,0x004C 是扫不到的。

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:7,948
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:4,824
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:5,651
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:5,517
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:6,718
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,188