ble

wotaifuzao6 天前
低功耗蓝牙·ble·nrf52·zephyr·gatt·cccd
(十)BLE GATT与ATT深度解剖-从属性表到CCCD-订阅收不到数据的终极答案本文是 BLE 系列第十篇。上一篇 MTU 讲的是"管道有多粗",这一篇讲"管道里运的是什么、怎么运、为什么你的手机收不到"。
YONYON-R&D7 天前
ble·蓝牙鼠标
[特殊字符] 解决:蓝牙鼠标从其他电脑切回后“能扫到但连不上”🏷️ 标签:Windows技巧 蓝牙故障 注册表 罗技鼠标 Logitech Pebble蓝牙鼠标(如 Logitech Pebble)之前连接过其他电脑,再次连回本机时,出现:
dozenyaoyida15 天前
controller·嵌入式开发·ble·host·zephyr·协议栈·软链路层
Zephyr BLE 上行链路源码拆解:一个空中报文怎么从 radio 跑到应用回调(NCS v3.2.1)数据来源说明:本文上行链路以 Zephyr 软链路层(controller/ll_sw/,开源)为主线讲清机制,关键函数已用 gitee 镜像 main 分支核对(https://gitee.com/zephyrproject-rtos/zephyr/raw/main/)。gitee 镜像只有 main 分支,ncs-v3.2.1 tag 不在镜像上,文中行号以 main 为参考并标注版本差异(main 与 v3.2.1 行号有偏移,函数名与机制一致)。nRF54L15 实际用的是 SoftDevice
dozenyaoyida17 天前
ble·zephyr·gatt·ble协议栈
Zephyr BLE GATT Server 注册到收发调用链源码解析(NCS v3.2.1)数据来源说明:本文基于 Zephyr BLE 协议栈 Host 开源部分(subsys/bluetooth/host/gatt.c、att.c、include/zephyr/bluetooth/gatt.h)撰写。GATT/ATT 均为 Host 开源代码,可对照源码阅读。文中行号依据 NCS v3.2.1 研究文档标注,因本机联网限流(raw.githubusercontent.com 返回 429)未对每一行独立联网核对,以实际源码为准。SoftDevice Controller 部分闭源,本文不涉及
K成长日志20 天前
物联网·网络协议·蓝牙·低功耗·iot·ble
BLE不可连接状态--广播态很多开发者对BLE广播的理解停留在“设备往外发数据包”这个层面,但当你翻开蓝牙核心规范(Bluetooth Core Specification)的链路层(Link Layer)章节,会发现广播态(Advertising State)远比想象中复杂。尤其在蓝牙5.4中,广播态的能力被进一步扩展。
K成长日志1 个月前
网络·物联网·网络协议·蓝牙·iot·ble·无线
BLE链路层--比特流处理在BLE通信中,我们讨论的PDU(协议数据单元)在通过天线发送之前,需要经历一个关键的“预处理”环节——比特流处理(Bit Stream Processing)。这个过程决定了数据包在空口传输的可靠性、安全性和物理兼容性。
K成长日志2 个月前
网络·物联网·网络协议·嵌入式·蓝牙·iot·ble
BLE链路层空口包--数据物理信道PDU连接建立之后,BLE通信便从广播信道切换到了数据物理信道。数据物理信道(Data Physical Channel)PDU是蓝牙通信中的核心组成部分,它负责在已建立的连接上高效、可靠地传输数据。
K成长日志2 个月前
物联网·嵌入式·蓝牙·iot·ble·无线·通信
BLE链路层空口包--LE Uncoded PHY在BLE协议栈中,链路层(Link Layer)定义了唯一一种空中包(Air Interface Packet)格式。然而,根据物理层的不同,这个统一格式在具体实现上又分为LE Uncoded PHY和LE Coded PHY两种变体。本文将深入剖析LE未编码物理层(LE Uncoded PHY)的空口包结构——这也是BLE最基础、最常用的包格式。
六bring个六2 个月前
ble·open harmony·gatt·分布式软总线
连接模块中的BLE方式GATT协议分析在蓝牙的世界里,GATT(通用属性配置文件)就是这套“交接规则”。它专门负责在两个蓝牙设备连接之后,数据该如何组织和传输。
奔跑吧 android2 个月前
ble·bluetooth·att·gatt·core_v6.2·sig
【Bluetooth-SIG】【CoreV6.2】【Vol3 Part G】【GATT】【零】【GATT 逐句逐段学习计划 2】ATT_READ_BLOB_REQoffsetMTU 限制分段读取长字符串、长证书、长配置数据场景多 handle 读取
HiDev_2 个月前
蓝牙·ble·蓝牙连接·ble 蓝牙广播·蓝牙hci command
BLE Legacy 连接【读取当前连接所使用 PHY 类型 HCI_LE_Read_PHY command】这部分内容讲的是 HCI_LE_Read_PHY command,也就是 BLE 中用于读取当前连接所使用 PHY 类型 的 HCI 命令。
HiDev_2 个月前
蓝牙·ble·蓝牙连接·ble 蓝牙广播·蓝牙hci command
BLE Legacy 连接【断开连接 Disconnect command】下面这部分讲的是 HCI_Disconnect command,也就是:注意:它不是 LE Controller commands 里的命令,而是在:
K成长日志2 个月前
网络·物联网·网络协议·嵌入式·蓝牙·ble
BLE协议之设备地址BLE设备地址(Bluetooth Device Address,BD_ADDR)是一个48位(6字节) 的标识符,用于在蓝牙低功耗网络中唯一识别一个设备。
奔跑吧 android2 个月前
ble·bluetooth·att·gatt·蓝牙协议·bt·core_v6.2
【Bluetooth-SIG】【CoreV6.2】【Vol3 Part F】【十三】【Error Handling——ATT_ERROR_RSP】本文继续学习 Bluetooth Core Specification v6.2:Vol 3, Part F:Attribute Protocol,简称 ATT
HiDev_2 个月前
蓝牙·ble·ble 蓝牙广播·蓝牙hci command·蓝牙广播扫描
HCI 功能规范【5.1. Correctness】这部分内容属于 HCI data formats 章节中的 Correctness,主要讲的是:在 HCI 层中,Controller 返回给 Host 的参数值必须是“正确的”,也就是说,Controller 上报的事件参数、返回参数,必须真实、准确地反映当前发生的事情。
HiDev_3 个月前
蓝牙·ble·ble 蓝牙广播·蓝牙hci command
HCI 功能规范【4.2. Controller to Host data flow control】这部分是 4.2 Controller to Host data flow control,讲的是:Controller 向 Host 发送 HCI Data Packet 时,也可能需要流控,避免 Host 侧的数据缓冲区被 Controller 发来的数据撑爆。
HiDev_3 个月前
蓝牙·ble·ble 蓝牙广播·蓝牙hci command
HCI 功能规范【4.4. Command flow control】这部分是 4.4 Command flow control,讲的是:Host 向 Controller 发送 HCI Command 时,也需要流控。Host 不能无限制地连续发送 HCI Command,而是要根据 Controller 返回的 Num_HCI_Command_Packets 参数来判断还能不能继续发命令。
桑榆肖物4 个月前
嵌入式硬件·wifi·.net·ble
ImprovWifi 跨平台传输层设计:把协议层做薄,把宿主层做稳本文基于 Sang.ImprovWifi 的实践,分享我如何把 Improv 协议层抽离成可复用内核,再通过 Windows/Linux/AOT 三种宿主实现完成跨平台落地。
一苇以航324 个月前
音视频·蓝牙·ble·le audio
LE Audio低功耗蓝牙音频详解 (三)上一篇:LE Audio低功耗蓝牙音频详解 (二)通用音频框架 (Generic Audio Framework, GAF) 是蓝牙低功耗音频 (LE Audio) 架构中的核心中间件。它定义了一套通用的服务和配置文件,用于在蓝牙设备之间进行音频数据的传输和控制,是实现跨设备互操作性的基础。
HiDev_5 个月前
ios·objective-c·蓝牙·ble
iOS 蓝牙开发进阶:彻底理解 CBManager(状态、权限与正确使用方式)在 iOS 蓝牙开发中,很多人把精力集中在 CBCentralManager 和 CBPeripheralManager 上,但真正决定蓝牙是否“能正常工作”的,其实是它们的父类:CBManager。