• nRF51822 Beacon 扫描请求包的设置


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

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

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

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

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

    1  memset(&m_adv_params, 0, sizeof(m_adv_params));
    2 
    3     m_adv_params.type        = BLE_GAP_ADV_TYPE_ADV_IND;
    4     m_adv_params.p_peer_addr = NULL;                             
    5     m_adv_params.fp           = BLE_GAP_ADV_FP_ANY;
    6     m_adv_params.interval   =NON_CONNECTABLE_ADV_INTERVAL;
    7     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 是扫不到的。

  • 相关阅读:
    javascript的全局变量和局部变量
    Google Analytics统计代码GA.JS
    display和visible的区别
    div+css实现带三角箭头提示框
    css兼容IE8的一个简便方法 [转]
    20个值得关注最新的jQuery Plugins
    分享40多个新鲜的jQuery图片和内容幻灯插件
    JQuery插件让图片旋转任意角度且代码极其简单
    Android UI dp sp
    MaxScript用二进制读取方式获取Max文件版本
  • 原文地址:https://www.cnblogs.com/ceibacity/p/5393694.html
Copyright © 2020-2023  润新知