一分钟读懂低功耗蓝牙(ble)广播数据包(代码片段)

author author     2023-01-03     725

关键词:

低功耗蓝牙 =》 BLE (Bluetooth Low Energy)

  1. 怎样抓取BLE广播数据包

  2. 概述
    BLE广播数据包简介:

    • 有效广播数据最大长度: 37 字节
    • 广播频道:37,38,39 (跳频)
    • 功率:一般是0dBm, 最大10dBm

    技术分享图片

  3. 存取地址 (Access Address) 对于广播包,这是一个固定长度(4个字节)及固定内容(0x8e89bed6)的主从设备识别广播包的存取地址。

    技术分享图片

  4. 头信息 (Header Info) 固定为2个字节:分解为16个位来使用
    位[0:3]:广播包(PDU) 类型,总共有6个类型:

    PDU Type
    b3b2b1b0 Packet Name
    0000 ADV_IND: 可连接通用连接广播
    0001 ADV_DIRECT_IND:可连接定向连接(指定设备)广播
    0010 ADV_NONCONN_IND:不可连接通用广播
    0011 SCAN_REQ:扫描请求
    0100 SCAN_RSP:扫描响应
    0101 CONNECT_REQ:连接请求
    0110 ADV_SCAN_IND:可扫描通用广播
    0111-1111 Reserved

    位[4:5]:保留
    位[6]:RxAdd
    位[7]:TxAdd
    位[8:13]:广播数据长度 (最大为37 字节)
    位[14:15]:保留
    技术分享图片

  5. MAC 地址 固定为6个字节

    技术分享图片

  6. 广播数据:标志域 02 01 06
    02:此域长度为2个字节
      01: 为标志域
    06:BI×××,BIT2 = 1, 根据以下定义,所以为:
       * LE General Discoverable Mode
    • BR/EDR Not Supported (i.e. bit 37 of LMP Extended
      Feature bits Page 0)

0 LE Limited Discoverable Mode
1 LE General Discoverable Mode
2 BR/EDR Not Supported (i.e. bit 37 of LMP Extended
Feature bits Page 0)
3 Simultaneous LE and BR/EDR to Same Device Capa-
ble (Controller) (i.e. bit 49 of LMP Extended Feature
bits Page 0)
4 Simultaneous LE and BR/EDR to Same Device Capa-
ble (Host) (i.e. bit 66 of LMP Extended Feature bits
Page 1)
5..7 Reserved
技术分享图片

  1. 服务标识域 03 03 02 18
    03:此域长度为2个字节
      03: 为服务标识域
    02 18:=》18 02 => Immediate Alert Service (防丢报警服务)

    技术分享图片

  2. 设备名域 0e 09 45 .... 6d 65
    0e: 此域长度为14个字节
    09:为设备名域
    45,。。。6d 65: 设备名

    技术分享图片

  3. CRC:
    固定为3个字节

    技术分享图片

蓝牙ble自定义广播内容()(代码片段)

目录一、蓝牙广播数据包定义与释义二、解析广播数据2.1、获取本地蓝牙名称2.2、获取16位数据包2.2.1、将字节转换为hex2.3、32位于128位字节解析一、蓝牙广播数据包定义与释义publicclassParseLeAdvDate//解析自定义ble适配器privatefinalsta... 查看详情

低功耗蓝牙(ble)——概念

1.种类单模蓝牙:仅支持传统蓝牙和BLE(低功耗蓝牙)中的一种;双模蓝牙:同时支持传统蓝牙和BLE(低功耗蓝牙)。2.部署方案3.节点类型根据蓝牙协议不同的协议层有不同的角色1.Server和Client(GATT)——属性服务层Server(服务... 查看详情

蓝牙4.0ble抓包–广播包解析(代码片段)

本文转自:http://www.cnblogs.com/aikm/p/5022502.html感谢原创作者!SleepingBug评论:这篇文档写的相当好,受教了,多谢了!  作者:强光手电[艾克姆科技-无线事业部]  在使用EN-Dongle捕获和解析广播包之前,我们先了解一下BLE... 查看详情

低功耗蓝牙ble传统广播总结—看这篇就够了

低功耗蓝牙:BluetoothLowEnergy简称BLE,相较于传统蓝牙BT具有低功耗、低成本、小体积等优势,BLE和BT都是工作在全世界公开通用的2.4GHz无线频段上,但他们是完全不同的两种技术,只是蓝牙技术联盟SIG将其归入蓝牙门类下,从而... 查看详情

ble4.0教程一蓝牙协议连接过程与广播分析

...4.0版本涵盖了三种蓝牙技术,即传统蓝牙、高速蓝牙和低功耗蓝牙技术,将三种规范合而为一。它继承了蓝牙技术在无线连接上的固有优势,同时增加了高速蓝牙和低功耗蓝牙的特点。这三个规格可以组合或者单独使用。蓝牙4.0... 查看详情

总结:低功耗蓝牙常见的4种工作模式

Ble低功耗蓝牙常见的工作模式有4种,分别是广播模式、主机模式、从机模式、观察者模式。 1、蓝牙广播模式比较有代表例子就是基于低功耗蓝牙的beacon设备。beacon处于广播模式时,一般会被设置成了不可连接的状态,Beacon... 查看详情

如何使用android原生ble蓝牙进行操作?

参考技术A之前的涉及的物联网项目中使用的:BLE低功耗蓝牙(蓝牙4.0),支持android4.3以上的手机主从关系:BLE低功耗蓝牙只能做从端设备,一个蓝牙主端设备,可同时与7个蓝牙从端设备进行通讯1)低功耗低功耗的原理:1\\低功耗蓝牙仅使... 查看详情

蓝牙ble数据包格式汇总

以蓝牙4.0为例说明:BLE包格式有:广播包、扫描包、初始化连接包、链路层控制包(LL层数据包)、逻辑链路控制和自适应协议数据包(即L2CAP数据包)等;其中广播包又分为:定向广播包和非定向广播包;逻辑链路控制和自适... 查看详情

ble低功耗蓝牙的广播内容

参考技术ABLE的设备可以发出广播信号,其信号占用的通道是37,38,39通道设备可以选择广播在其中的任何一个,两个或全部三个通道BLE4.0-BLE4.2支持的最大广播payload包长是31字节;BLE5.0增加了扩展模式,以数据通道发送额外的数据... 查看详情

ble蓝牙抓包工具使用尝试

参考技术A没接触过低功耗蓝牙协议,也没实际开发过和低功耗蓝牙有关的东西,最近需要获取一款低功耗蓝牙产品的数据,听说有专门的低功耗蓝牙抓包工具和软件可供使用,刚好手里也有硬件(USB蓝牙适配器),就硬着头皮... 查看详情

android-ble蓝牙通讯开发–扫描,连接,发送和接收数据,分包解包(附源码)(代码片段)

...节限制,如何发送长数据蓝牙有传统(经典)蓝牙和低功耗蓝牙BLE(BluetoothLowEnergy)之分,两者的开发的API不一样,本文主讲Ble蓝牙开发,传统蓝牙不展开,有需要的可以自行了解。相对传统蓝牙,BLE低功耗蓝... 查看详情

低功耗蓝牙(ble)——概述

...初衷是方便移动电话(手机)与配件之间进行低成本、低功耗无线通信连接。??标准号:IEEE802.15.1??核心技术:低功耗,即LowEnergy1.1RF规格??工作频段??2.4GHz~2.4835GHz,ISM(Industrial,ScientificandMedical)频段??工作频道??2402+k*2MHz,k=0,...,3... 查看详情

低功耗蓝牙ble的详细使用流程

参考技术A中心设备:判断蓝牙是否可用->打开蓝牙->开始扫描->获取被扫描到的设备->连接设备->发现服务->获取到指定特征->写入特征值外围设备:判断蓝牙是否可用->打开蓝牙->创建广播数据->发送广播->... 查看详情

13.6.3程序案例:ble低功耗蓝牙调试助手(代码片段)

13.6.3 程序案例:BLE低功耗蓝牙调试助手(配套代码CH13-02)(1)mainwindow.cpp文件代码#include"mainwindow.h"#include"ui_mainwindow.h"/**设置QT界面的样式*/voidMainWindow::SetStyle(constQString&qssFile)QFilefile(qssFile);if(fil 查看详情

低功耗蓝牙ble之连接事件连接参数和更新方法

转自:http://blog.csdn.net/zzfenglin/article/details/51304084连接事件 在一个连接当中,主设备会在每个连接事件里向从设备发送数据包。一个连接事件是指主设备和从设备之间相互发送数据包的过程。连接事件的进行始终位于一个频... 查看详情

android低功耗蓝牙开发(扫描连接数据交互)kotlin版(代码片段)

低功耗蓝牙开发(扫描、连接、数据交互)Kotlin版前言正文一、配置项目二、页面设计三、扫描设备①绑定视图②检查Android版本③打开蓝牙④请求权限⑤扫描结果⑥设备适配器编写⑦数据渲染⑧开始和停止扫描四、连接... 查看详情

ble控制器之链路层

BLE协议之链路层介绍链路层是低功耗蓝牙体系里面最复杂的部分,它负责广播、扫描、建立和维护连接、以及确保数据包按照正确的方式组织、正确的计算校验值以及加密序列等。链路层包含三个基本概念;信道、报文、过程首... 查看详情

android蓝牙ble(三)——广播

参考技术A​在蓝牙开发中,有些情况是不需要连接的,只要外设广播自己的数据即可,例如苹果的ibeacon。自Android5.0更新蓝牙API后,手机可以作为外设广播数据。广播包有两种:其中广播包是每个外设都必须广播的,而响应... 查看详情