蓝牙BLE调试关于NRF connect相关信息分析

简介

nRF Connect是一个强大的通用工具,它允许你扫描和探索你的蓝牙低功耗(以后的蓝牙LE,也称为蓝牙4.0+版本的蓝牙规范)设备,并与它们通信。

nRF连接还允许您的iOS设备广告作为一个外围设备,充分支持许多蓝牙SIG采用的配置文件。

此外,nRF Connect支持北欧半导体的设备固件更新配置文件(DFU)功能,允许您更新兼容的外接设备!

特点:

•在所有北欧半导体供电设备上支持DFU。
•支持来自北欧半导体的北欧Thingy™。
•扫描并发现附近的蓝牙LE外设。
•根据名称,制造商,服务(广告和连接)和RSSI级别筛选扫描外设。
•解析蓝牙LE广告数据的多种格式。
•蓝牙LE外设扫描实时RSSI图。
•完全支持iPad,包括13.4版本的多任务处理和鼠标支持。
•日志:包括BLE Function调用、Export Function为CSV和Text格式。
•面向隐私:完全公开nRF Connect持有的扫描数据、广告数据和用户执行的操作。
•可连接任意可连接的蓝牙LE智能设备。
•发现服务、特征和描述符。
•读写特性和描述符。
•启用和禁用通知和指示。
•作为蓝牙LE外围设备的广告。
•设置蓝牙LE(外围设备)服务器,并通知/指示连接的中心。

该APP可以实现SCANER和ADVERTER两种角色

查看广播信息

手机上打开nRF Connect,点击“SCAN”按钮启动扫描,这时会扫描到名为“BLET emplate”的设备,如下图所示。
在这里插入图片描述
在这里插入图片描述

点击设备名称,展开广播信息
在这里插入图片描述
在广播信息中我们可以看到如下信息,这些信息也正是我们在广播初始化中配置的广播信息。

Device Type::LE only。仅LE。
Flags:GeneralDiscoverable,BrEdrNotSupported。一般可发现模式,不支持BR/EDR。
Appearance:[O]Unknown。外观的编码为O,即未知设备。
Complete Local Name:BLE Templete。本地设备名称。

如果我们需要查看具体的,点击“RAW”打开数据窗口,如下图所示。
在这里插入图片描述
将广播数据取出,整理如下表所示,从中可以很方便地看到广播各个字段的含义以及广播数据长度。其中类型是由SG定义,可以在SIG网站上查到,网址如下:
https://www.bluetooth.com/specifications/assigned-numbers/generic-access-profile

在这里插入图片描述

点击“CONNECT”按钮,连接设备,连接成功后,nRF Connect上可以看到本文BLE工程模板中只包含了2个必须包含的服务:GAP服务和GATT服务。
在这里插入图片描述
点击服务名称即可展开服务,展开后可以看到服务中包含了哪些特征以及这些特征的属性。

下图是展开后的GAP服务,GAP服务包含了4个特征,
特征名称右边的向上的箭头是“写”按钮,点击后可以写从机的特征值向下的箭头是“读”按钮,点击后可以读出从机的特征值。下图中GAP的4个特征已经全部读出,可以看到读出的数值和我
们在程序中配置的数值是一致的。
在这里插入图片描述
在这里插入图片描述
设备名
设备名称仅起识别设备的作用,在用户界面显示为“Bluetooth Device Name”。
设备名最长可达248个字节,但是对端设备可能并不能显示这么长的名称。
设备名支持UTF-8编码,因此设备名可以使用中文。

设备外观
设备外观仅起识辅助别设备的作用,在用户界面显示为一个图标或一个字符串。
设备外观为一个2字节数,扫描设备可以通过设备外观值为设备分配一个合适的图标或描述。

断开连接操作

点击nRF Connect上的“DISCONNECT”按钮即可断开连接,断开后,系统重新进入广播模式。

监听操作-蓝牙设备发送到APP的数据

• 数据从从设备端发送到APP端
• 点击图标”↓↓↓“后,APP后台自动监听从设备notify上来的数据,右滑界面,可以看到接收到的每条数据
在这里插入图片描述
在这里插入图片描述
设备BLE_UARTAPP发布了服务UUID=0x000a,特征值UUID=0x000c为可写操作(点击图标”↑“),特征值UUID=0x000b为可监听操作(点击图标”↓↓↓“),特征值UUID=0x2902为可读操作(点击图标”↓“)

写操作

在这里插入图片描述

读数据

在这里插入图片描述

GAP和GATT服务

如下所示:在这里插入图片描述
这里的“GAP”,跟我们蓝牙协议栈框架里面的GAP可不是一回事,这里的GAP是一个service,而蓝牙协议栈里面的GAP是一个子协议;GATT也是同样的道理。为了不引起混淆,nRF connect把这里的GAP服务称为“Generic Access”服务,把这里的GATT服务称为“Generic Attribute”服务。“Generic Access” 服务包含Device name,Appearance,PPCP以及CAR等characteristic。 “Generic Attribute”服务包含Service Change等characteristic。

  • 5
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

路过的小熊~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值