大家好,我是杂烩君。
本次我们来介绍一个开源的双模蓝牙协议栈——btstack。
btstack简介btstack一个包含传统蓝牙跟低功耗蓝牙的协议栈,属于超轻量级蓝牙协议栈,用作学习蓝牙协议栈的人使用。
与其他协议栈的对比
Github链接:
https://github.com/sj15712795029/bluetooth_stack

bluetooth_stack专注于嵌入式平台(如STM32),其代码结构精简高效,支持HCI层以上的核心协议(如L2CAP、ATT、GATT等),而底层依赖芯片自带协议栈(如CSR8311)。这种设计既降低了硬件适配成本,又保留了蓝牙协议的核心功能,特别适合资源受限的嵌入式场景。
btstack可以运行在STM32、Linux上。目前支持的平台:

源码目录结构:


目前包含HCI、L2CAP、SDP、RFCOMM、HFP、SPP、A2DP、AVRCP、AVDTP、AVCTP、OBEX、PBAP等协议。
蓝牙协议分层简介

btstack作者是一位经验很丰富的蓝牙车载经验。其csdn博客上也有很多蓝牙相关的文章:
https://blog.csdn.net/xiaoxiaopengbo/category_10215137.html
除此之外,还有配套硬件、上位机与配套视频:


感兴趣的朋友可自行去了解:
https://github.com/sj15712795029/bluetooth_stack