![](https://img-blog.csdnimg.cn/20200327173231804.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Bluetooth协议
文章平均质量分 52
关于蓝牙的项目开发的记录和复盘
张弛有度2016
这个作者很懒,什么都没留下…
展开
-
Telink泰凌微TLSR8258蓝牙开发笔记(二)
1.在与ios手机连接后,手机app使能notify,设备与手机通过write和notify进行数据交换,但是在连接传输数据一端时间后,设备收到write命令后不能发出notify命令,打印错误码180 = 0xB4,GATT_ERR_DATA_PENDING_DUE_TO_SERVICE_DISCOVERY_BUSY,设备发送notify失败的原因是ios蓝牙master主机正在发现蓝牙服务,此时不允许发送notify数据。,则不会出现这个问题。原创 2023-10-11 18:22:13 · 1080 阅读 · 0 评论 -
Telink泰凌微TLSR8258蓝牙开发笔记(一)
导入工程后,切换编译选项为825x_module,此时编译会出现错误。二、运行例程,并使能打印调试信息功能。8258开发板+烧录工具一套。1.1.3、蓝牙SDK。1.1.2、烧录工具。1.2、硬件开发环境。原创 2023-08-08 18:10:10 · 2089 阅读 · 0 评论 -
使用NRF52840 USB Dongle进行Wireshark蓝牙抓包
在nrf_sniffer_for_bluetooth_le_4.1.1\extcap路径下。1.5、烧录sniff固件到USB dongle。1.2、下载Wireshark软件。1.3、下载Nodic官方解析工具包。1.7 配置wireshark。1.6 安装Python环境。F5 刷新wireshark。1.4、下载Python。后面的抓包方法请参考。原创 2023-07-19 10:22:38 · 2090 阅读 · 1 评论 -
MG21蓝牙工程开启串口LOG功能
1.复制串口log文件:目录:SimplicityStudio\v4_workspace\soc-homekit-empty\hardware\kit\common\drivers\2.新增API接口定义到app.h文件:#include "gecko_configuration.h"/* DEBUG_LEVEL is used to enable/disable debug prints. Set DEBUG_LEVEL to 1 to enable debug prints */原创 2020-06-12 16:32:57 · 177 阅读 · 0 评论 -
Bluetooth基础知识--蓝牙的几种通讯方式
在建立连接之前,BLE设备之间可以通过广播和扫描的方式进行通信,一旦建立连接,双方可以通过client/server模式通信(建立了链路层连接),因此对于BLE网络,有两种通信的方式:1. 基于广播方式通信:是一种无连接的方式 是单向的,可以向任何人或者接收器发送数据。 参与的角色是Broadcasting and Observing 广播方式的通信就是通过广播以...原创 2020-04-23 17:13:13 · 11447 阅读 · 0 评论 -
Bluetooth基础知识--蓝牙的几种角色
Broadcaster: 又称为Advertiser,周期性的向周围设备广播数据, Observer:又称为Scanner,可以监听广播数据或者搜索周围设备, Central: 又称为master,负责扫描设备并发起建立请求,在建立连接后变成master Peripheral: 可称为slave, 负责广播的并接收连接请求的设备在建立连接后称为slave 这...原创 2020-04-23 16:55:57 · 4158 阅读 · 0 评论 -
Nordic nRF52840实战学习--蓝牙连接请求数据包抓包解析
1.上图为真实抓到的一个蓝牙广播数据帧,裸数据为:d6 be 89 8e c5 22 a1 8a c2 d8 d2 6c d1 1f c7 04 d7 f7 66 bb 9a af 8f ec f6 03 06 00 18 00 00 00 48 00 8f 00 00 0c 1c 27 d1 50 b3按照上面的格式解析裸数据得到以下内容: – Preamble:...原创 2020-04-23 15:32:54 · 579 阅读 · 0 评论 -
Nordic nRF52840实战学习--蓝牙扫描回复数据包抓包解析
1.上图为真实抓到的一个蓝牙广播数据帧,裸数据为:d6 be 89 8e 44 17 05 df 3e ae 8d f6 10 09 41 71 61 72 61 20 4e 31 30 30 20 31 43 37 30 33 8e 按照上面的格式解析裸数据得到以下内容:– Preamble: – Access Address:d6 be 89 8e //0x8e89b...原创 2020-03-26 22:13:30 · 427 阅读 · 0 评论 -
Nordic nRF52840实战学习--蓝牙扫描请求数据包抓包解析
1.上图为真实抓到的一个蓝牙扫描请求数据帧,裸数据为: d6 be 89 8e c3 0c 12 70 60 8f b9 46 d5 73 b5 5c 6b e7 7b 35 47按照上面的格式解析裸数据得到以下内容:– Preamble: – Access Address:d6 be 89 8e //0x8e89bed6 – PDU:c3 0c 12 70 60...原创 2020-03-26 21:47:22 · 400 阅读 · 0 评论 -
Nordic nRF52840实战学习--蓝牙广播数据包抓包解析
1.上图为真实抓到的一个蓝牙广播数据帧,裸数据为: d6 be 89 8e 60 18 d5 73 b5 5c 6b e7 02 01 06 0e 09 45 6d 70 74 79 20 45 78 61 6d 70 6c 65 7a cb 87按照上面的格式解析裸数据得到以下内容:– Preamble:aa – Access Address:d6 be 89 ...原创 2020-03-26 21:16:03 · 596 阅读 · 0 评论 -
Nordic nRF52840实战学习--使用nRF52840开发板抓蓝牙数据包
一、官方参考文档:nRF_Sniffer_BLE_UG_v3.1.pdf二、环境与软件要求:1.下载安装Wireshark 3.2.22.下载nRF Sniffer 3.0.03.下载Python 3.8.2 三、使用nRF52840开发板烧录sniff固件四、安装nRF Sniffer工具4.1 检查安装环境是否满足打开文件夹Sniffer_Softw...原创 2020-03-25 20:06:18 · 3476 阅读 · 3 评论 -
Nordic nRF52840实战学习--透传模块速率优化
方案一:使用定时器定时发送数据1.1 定义一个定时器ID:APP_TIMER_DEF(m_test_speed_tmr);1.2 定时器初始化: ret_code_t err_code; err_code = app_timer_create(&m_test_speed_tmr, APP_TIMER_MO...原创 2020-03-24 19:29:47 · 758 阅读 · 0 评论 -
Nordic nRF52840实战学习--ble_app_uart例程
一、使用Segger Studio打开ble_app_uart例程二、烧录固件,先烧录协议栈和应用程序,Bootloader可以先不烧录三、测试Demo程序:1.开发板连接串口助手,按开发板上的复位键:2.重新将开发板连上手机,然后点击右上角的“Enable CCCDs”以使能notification,APP发送一串数字,开发板收到后串口助手打印出来,如下所示...原创 2020-03-23 15:50:20 · 1009 阅读 · 0 评论 -
Nordic nRF52840实战学习--ble_app_blinky例程
一、使用Segger Studio打开ble_app_blinky例程二、烧录固件,先烧录协议栈和应用程序,Bootloader可以先不烧录三、测试Demo程序:1.使用nRF Connect扫描蓝牙信号,推荐使用安卓手机2.点击Connect连接开发板蓝牙3.点击右上角的“Enable CCCDs”以使能notification4.按下开发板...原创 2020-03-23 11:40:41 · 1001 阅读 · 0 评论 -
Nordic Homekit开发--setup code规则
一、目前Nordic的Haptools工具提供了两种命令直接产生setup code和对应的二维码一种是用户指定setup code数字部分,生成对应文件:del setup_code\*.hexdel QR_code\*.pngset setup_code=111-23-444python ..\..\..\tools\haptools\cli.py provision -c 6...原创 2020-03-09 16:04:13 · 591 阅读 · 0 评论 -
Nordic Homekit开发--问题集锦
Q:烧录完程序,卡在bootloader程序里,只有DFU广播A:如果是使用内部晶振,需要在Application和Bootloader工程的sdk_config.h文件里面修改晶振配置:// </h>//==========================================================// <h> Clock - Soft...原创 2020-03-03 15:18:36 · 172 阅读 · 0 评论 -
Nordic Homekit开发--搭建开发环境
1.安装IDENordic nRF51/52支持Keil,GCC,IAR和SES(Segger Embedded Studio)四种IDE,我们使用免费的SES,下载链接:https://www.segger.com/downloads/embedded-studio安装截图2.安装nRF5x Command Line ToolsnRF5x command line...原创 2020-03-02 10:15:39 · 514 阅读 · 0 评论 -
Bluetooth 协议基础学习
蓝牙扫描回复数据包抓包解析 蓝牙扫描请求数据包抓包解析 蓝牙广播数据包抓包解析原创 2020-03-27 17:23:47 · 332 阅读 · 0 评论 -
Nordic nRF52840实战学习
ble_app_blinky例程 ble_app_uart例程 透传模块速率优化原创 2020-03-27 17:18:34 · 1808 阅读 · 0 评论 -
Homekit BLE Lock项目实战
1.Silabs BLE HomeKit开发2.Nordic BLE HomeKit开发实战Nordic BLE HomeKit开发--竞品分析 Nordic Homekit开发--开启debug信息 Nordic Homekit开发--静态Pin码的产生和使用 Nordic Homekit开发--添加新服务 Nordic Homekit开发--OTA DFU Nordic H...原创 2019-11-20 20:31:31 · 933 阅读 · 0 评论 -
Nordic官方技术博客搬运
【Nordic 博文分享系列】 Nordic nRF52/nRF51开发流程说明【Nordic博文分享系列】低功耗蓝牙ATT/GATT/Profile/Service/Characteristic规格解读【Nordic博文分享系列】手把手教你开发BLE数据透传应用程序【Nordic博文分享系列】如何理解nRF5芯片外设PPI【Nodic博文分享系列】nRF5芯片外设...原创 2020-03-25 17:47:29 · 497 阅读 · 0 评论 -
Bluetooth基础知识--蓝牙建立连接的过程分析
大神博客:https://www.cnblogs.com/iini/p/8996025.html原创 2020-03-20 17:58:12 · 2028 阅读 · 0 评论 -
GAP广播和扫描回复数据格式
相关说明链接/**@defgroup BLE_GAP_AD_TYPE_DEFINITIONS GAP Advertising and Scan Response Data format* @note Found at https://www.bluetooth.org/Technical/AssignedNumbers/generic_access_profile.htm* @{ */...原创 2020-03-09 14:38:53 · 1066 阅读 · 0 评论 -
Silabs Homekit开发--静态Pin码的产生和使用
>>使用静态固定HomeKit Setup Code的方法一、将动态生成Setup Code的宏HOMEKIT_DISPLAY_SUPPORT的值设置为0二、使用“homekitsetupcode.exe”工具产生静态Setup Code工具路径在C:\SiliconLabs\SimplicityStudio\v4\developer\sdks\gecko_sdk_s...原创 2020-03-02 10:15:06 · 663 阅读 · 0 评论