BLE
BLE中LL层的错误重传机制
# BLE中LL层的错误重传机制 ## NESN和SN 在BLE中LL层的数据交互中,并没有专门的ACK包来确保发送包成功接送。为了确定是否收包成功,主从之间通过内部 transmitSeqNum,指发送包的序号 nextExpectedSeqNum,指下一把期望收到的包的序号 这两个变量值和收包时 ......
wch ble例程中关于低频时钟的选择和差异
# 待完善 # 1.适用的芯片 * ch579/ch578/ch577 * ch573/ch571/ch58x/ch59x * ch32v208/ch32f208 ## 2.在ch73/ch58x/ch59x平台上 ### 2.1 不需要低功耗 ### 2.2 需要做 ## 2.在ch32v208/ ......
低功耗蓝牙BLE的知识点记录
低功耗蓝牙协议的各层可以用上图表示 其中最重要的是GATT 和 GAP。 两个重要角色:profile 和 protocol Profile : 确保蓝牙装置应用的互通性,由SIG 蓝牙技术联盟定义的规范 Protocol : 针对传输的封包格式、绕行路径、多工机制、编码解码、设备协定层之间横向的资 ......
esp32笔记[6]-蓝牙(BLE)控制小灯
## 摘要 基于esp32实现低功耗蓝牙(BLE)通信,通过BLE控制板载小灯亮灭. ## 平台信息 - 主控:ESP32 (注意:ESP32-S2 没有蓝牙) - LED:GPIO2(高电平有效) - 开发平台:ArduinoIDE ## ESP32 BLE [https://www.521u.c ......
ble开发 蓝牙服务中对服务、特性、属性以及UUID的理解
1.蓝牙服务包括多个服务(service),如下为蓝牙串口通信例程的三个服务 2.其中每个服务包括多个特性(Characteristic),如下为Generic Access服务的四个特性 3.属性即为每个特性是否可读写 4.每个特性都有其对应的UUID 简单理解UUID就是编号,服务和特性都有各自 ......
ble开发 wireshark抓取蓝牙数据
1.下载 Microsoft 蓝牙测试平台软件包 官网下载 点击下载即可 2.安装全部选择默认然后点下一步 3.安装下载wireshark 官网下载 选择合适的版本 安装时选择好路径即可 4.BTP的文件路径为C:\BTP 打开 C:\BTP\v1.14.0\x86\btvs 它会自动打开wires ......
ble开发 nRF52840学习「1」:程序烧录
1.nRF connect for windows 下载 点击这里 前往官方进行下载 下载完成后进行安装,安装保持默认即可。安装是会提示jlink安装,需也对其进行安装。否则无法检测到jlink驱动 2.下载programmer插件,直接install下载即可。若下载不成功则为需挂梯子翻墙 3.通过 ......
ble开发-添加开机蓝牙广播包
客户需求,蓝牙未连接状态电源按键按下后发送开机广播 实现步骤 1.新建蓝牙广播包,格式按照客户要求,创建位置与advdata[]相同 static uint8 adv_power_on[] = { // flags 0x02, // length of this data GAP_ADTYPE_FL ......
CC2541是功率优化的真正系统级芯片(SoC)解决方案,适用于蓝牙低功耗(BLE)和专用的2.4GHz应用
CC2541是功率优化的真正系统级芯片(SoC)解决方案,适用于蓝牙低功耗(BLE)和专用的2.4GHz应用.该SOC芯片集成性能极好RF收发器以及标准工业级增强型8051内核,支持系统编程Flash,8KRAM及强大功能支持跟外设。微信号:13632658391 深圳市动能世纪科技有限公司成立于2 ......
CH573一款集成BLE 无线通讯的32 位RISC微控制器芯片
CH573是集成BLE 无线通讯的32 位RISC微控制器。片上集成低功耗蓝牙BLE通讯模块、全速USB主机和设备控制器及收发器、SPI、4 个串口、ADC、触摸按键检测模块、RTC 等丰富的外设资源。 功能 l 内核Core: - 青稞RISC-V处理器WCH RISC-V3A - 支持RV32I ......
车规级耐高温BLE5.2协议串口转蓝牙模块E104-BT53C3产品简介
蓝牙耐高温车规级BLE5.2蓝牙协议串口转蓝牙模块E104-BT53C3新品即将上架: 蓝牙模块通信接口:UART串口通信 蓝牙模块工作频率:2402~2480MHz 车规级蓝牙模块蓝牙协议:BLE 5.2 通信距离:170m 天线接口:PCB 产品尺寸:23*16mm 产品简介:E104-BT53 ......
ble开发-蓝牙广播包分析
直接看广播包内容代码 static uint8 advData[] = { // flags 0x02, // length of this data GAP_ADTYPE_FLAGS, GAP_ADTYPE_FLAGS_GENERAL | GAP_ADTYPE_FLAGS_BREDR_NOT_SU ......
CH583,CH582,CH581 国产蓝牙芯片RISC-V内核BLE 5.3无线MCU
概述CH583是集成BLE无线通讯的32位RISC微控制器。片上集成2Mbps低功耗蓝牙BLE 通讯模块、2个全速USB主机和设备控制器及收发器、2个SPI、4个串口、ADC、触摸按键检测模块、RTC等丰富的外设资源。CH583相比CH582多了SP11主机,支持最低1. 7V电源电压。CH581 ......
BLE中的L2CAP层基本功能分析
# 逻辑链路(Logical Link) 在明白L2CAP之前要先明白其中L2代表的logic link是什么意义,在spec中的下述章节对这些概念进行了基本解释 > Vol 1: Architecture & Terminology Overview > > Part A: Architectur ......
BLE中GAP层中广播、扫描、连接等概念在LL层的具体实现
# BLE中GAP层中广播、扫描、连接等概念在LL层的具体实现 在spec中GAP的章节里对广播、扫描、连接的概念进行了说明。但缺乏具体实现的解释。 > Vol 3: Core System Package [Host volume] > > Part C: Generic Access Profi ......
BLE中GAP层的PDU类型表
在蓝牙的spec中Host卷GAP篇中对有关广播、扫描、连接以及相关扩展的概念和流程进行了解释和说明。但是如果只看这些抽象的理论是比较难以理解的,而在controller卷LL篇中给出了这些抽象概念的具象化实现,也就是各种各样类型的PDU包。通过对GAP层在LL层中PDU部分的各种实现情况,可以让我 ......
BLE中LL层的空口包格式
# 空口包基本格式 ![](https://img2023.cnblogs.com/blog/2967398/202306/2967398-20230614153946327-1233732715.png) ## Preamble-前导码 ![](https://img2023.cnblogs.co ......
BLE中的设备地址
# 简介 ![](https://img2023.cnblogs.com/blog/2967398/202306/2967398-20230613145839225-586932132.png) 设备地址,也叫MAC地址。在BLE中对设备地址分了很多类别,但实际使用的MAC地址只有有四种: - Pu ......
BLE中的吞吐率分析
# BLE中的吞吐率分析 # 说明 吞吐速率是表示通信数据传输能力地关键指标。通过多年的发展,蓝牙技术的通信速率越来越来越高,吞吐率越来越大。随着蓝牙5.0协议的发布,最新的低功耗蓝牙最高支持2M的PHY,也就是2Mbps。但是实际应用中大多数BLE用户发现自己的蓝牙的数据吞吐率最高只有几百k甚至几 ......
ble开发-连接状态下的蓝牙遥控数据包解析
通过Wireshark抓包获取蓝牙遥控器的HID数据包如下,现对其进行分析 (1) 02 代表了HCI的数据格式 HCI ACL Data packet: Controller上报给Host的事件,只能由Controller发出 (2) 01 2e host层想用更少的位来表示访Access Add ......
ble开发-低电量管理
现有客户需求,低电量模式进行操作后LED进行闪烁,不操作则闪三秒后结束 首先对电量获取进行分析,其是通过ADC回调函数进行获取电量,然后如果电量发生变化则通过蓝牙发送电量变化后的值,ADC获取电量函数如下,当大于3V时 battery_percent 电量值为100,低于1.8V则为0 _ATTR_ ......
BLE中SMP的配对原理分析
# 蓝牙SMP层中的配对原理分析 本文作为蓝牙SM协议的学习笔记,大部分内容取自于网上资料(密码学知识)和蓝牙核心规范。阅读需要有一定的蓝牙技术知识和密码学知识基础 # 密码学基础 ## 基本的安全问题 在通信中,安全问题至关重要,基本的安全入侵手段包括窃听、伪装和篡改。假设: Alice和Bob分 ......
NRF52840-QIAA-R Nordic BLE5.0蓝牙无线收发芯片
nRF52840相对于nRF52832具有更大的flash及ram,片内集成1MB flash,256kB RAM。支持蓝牙5.0,802.15.4,ANT及2.4GHz私有协议,同时与nRF51及nRF24系列兼容。nRF52840供电范围为1.7V ~ 5.5V 。片内集成USB2.0,集成AR ......
蓝牙BLE断开原因对照表
#define BLE_HCI_STATUS_CODE_SUCCESS 0x00 #define BLE_HCI_STATUS_CODE_UNKNOWN_BTLE_COMMAND 0x01 #define BLE_HCI_STATUS_CODE_UNKNOWN_CONNECTION_IDENTIFI ......
ble开发-按键启动控制LED与简易蓝牙数据发送
小白初次接触ble开发,网上相关教程较为复杂混乱,因此在此系统讲解ble开发相关流程并记录本人开发过程,有何错误欢迎评论指正。 嵌入式学习第一步,点个灯先 嵌入式学习第二步,搞个按键 嵌入式学习第三步,按键点个灯 1.本工程所使用SDK为伦茨官方提供按键例程 伦茨17Hxx开发文档中ST17H66_ ......
ble开发第一步,了解osal系统
了解OSAL Operating System Abstraction Layer,即操作系统抽象层,支持多任务运行,它并不是一个传统意义上的操作系统,但是实现了部分类似操作系统的功能。(只要我跑的够快我就是多线程的)本系统由TI开发并提供了大量参考文档,大家可以前往其官方进行查阅 TI蓝牙论坛 虽 ......
QT编程: 编写低功耗BLE蓝牙调试助手(Android系统APP)
由于工作需要,需要利用QT平台完成手机与ble蓝牙的通讯,所以就找了各种资料,算是初步的能够连接完成demo代码,但是依旧有些代码没有理解,比如特性那一片的代码,稍后还得研究啊(对了,这是低功耗蓝牙,不是经典蓝牙,看清楚了,当初不清楚经典蓝牙和低功耗蓝牙,浪费我一个星期,说多了都是泪,下面是代码和界 ......
微型MPU6050模块及串口/BLE透传的实物展示
前言 随着时间的积累,项目的沉淀。把很多做过的产品标准化掉,形成可以立即拿出来使用的产品。是非常重要的一个环节。最近,把基于MPU6050的模块微型化并使用串口透传这个产品梳理了一下。形成了标准化的模块,方便客户使用。 特色梳理 其实,市面上MPU6050的模块不少,可绝多数的是没有软件支撑的,也都 ......
CH582 CH592 CH573 BLE HID工程新增透传服务
如题,比如想在BLE HID的工程上新增数传服务,用来进行自定义数据传输,可以在HID的例子基础上增加数传 service,具体操作如下 比如以CH573为例子,在EXAM\BLE\HID_Keyboard例子的基础上增加自己的数传service,具体操作如下: 第一步: 找到EXAM\BLE\BL ......