Android系统蓝牙开发
Android系统蓝牙开发,BLE,Bluedroid
赖small强
这个作者很懒,什么都没留下…
展开
-
【蓝牙开发】Andorid蓝牙绝对音量
首先看下两种角色在协议构成角度来说是没有太大的区别, 现在来看下AVRCP Spec中关于AVRCP中Controller(CT)和Target(TG)的描述.The controller (CT) is a device that initiates a transaction by sending a command frame to a target. Examples for CT are a personal computer, a PDA, a mobile phone, a remote co原创 2022-07-11 16:59:19 · 6630 阅读 · 1 评论 -
【Android系统蓝牙开发】蓝牙基础知识-蓝牙核心系统架构
什么是蓝牙?在开启基于蓝牙Spec v5.2的学习前,我们先了解下什么是蓝牙?蓝牙在我们日常生活中又存在哪些实际应用呢?蓝牙无线技术是一种短距离无线通信系统,其核心特性主要是以下三点:robustness - 鲁棒性,抗干扰能力强Low power consumption - 低功耗Low cost - 低成本蓝牙无线通信有两种类型的系统: Basic Rate(BR) 和 Low Energy(LE).两者都包含了: 设备发现(device discovery)、连接建立(connec.原创 2022-05-28 22:13:27 · 1856 阅读 · 0 评论 -
【蓝牙开发】Android BLE中广播包发射功率(TX power level)
2021/12/17 前输出!https://blog.csdn.net/love131452098/article/details/118486691原创 2021-12-14 19:58:17 · 2392 阅读 · 0 评论 -
【蓝牙开发】Android Bluedroid 源码学习之状态机设计
原创 2021-11-25 23:56:16 · 3207 阅读 · 0 评论 -
【蓝牙开发】Android Bluedroid 源码学习之对外接口设计
本文中进行的Bluedroid 源码学习是基于Android P(9) 进行.对于bluedroid(system/bt)最终是以一个动态库(libbluetooth)的方式对外提供, 在Bluetooth APK中使用的时候是以动态的方式进行加载的对外接口定义在include/hardware/bluetooth.h中声明了bt_interface_t这种包含函数指针类型的结构体./** Represents the standard Bluetooth DM interface. */ty.原创 2021-11-25 16:22:28 · 3516 阅读 · 0 评论 -
【蓝牙开发】Bluetooth Security 中的Security modes
背景介绍针对传统蓝牙的产品, 提到安全等级时我们常常会听到mode 4. level 3, 但对于具体什么是mode 4? 什么是level 3却一知半解.而本文会基于Bluetooth Spec初步关于蓝牙安全的mode和level相关的知识点.BR/EDR(传统蓝牙) 中的Security modes如上图所示,在security channel 建立过程会根据Responding device version(对端设备)的蓝牙版本来选择Security Mode, 这点也说明了一个设备为了兼原创 2021-11-17 19:19:55 · 5970 阅读 · 0 评论 -
【蓝牙开发-转发】认识BLE 5协议栈 - 物理层
http://www.sunyouqun.com/2017/04/understand-ble-5-stack-physical-layer/转载 2021-07-15 19:32:18 · 254 阅读 · 0 评论 -
【蓝牙开发】BLE中的AOA、AOD全称
AOA -> Angle of ArrivalAngle of Arrival is the relative direction at which a prop-agating RF wave that was transmitted by a single antenna is incident on an antenna array.AOD-> Angle of DepartureAngle of Departure is the relative direction from原创 2021-07-15 11:11:45 · 1865 阅读 · 0 评论 -
【蓝牙开发】深入理解传统蓝牙的设备发现、连接过程
传统蓝牙(BE/EDR)的设备发现Bluetooth Spec v5.2 中关于设备发现的内容3.3.1.3 Inquiry scan channel3.3.1.3.1 OverviewIn order for a device to be discovered, an inquiry scan channel is used. A discoverable device listens for inquiry requests on its inquiry scan channel and th原创 2021-07-08 23:15:45 · 2175 阅读 · 3 评论 -
【蓝牙】Linux基于Bluez实现BLE广播(C++版本)
分享基于C++版本的BLE广播,结合github的代码开源!未完待续!!原创 2021-07-06 14:26:42 · 2349 阅读 · 7 评论 -
【蓝牙开发】转发-信号强度(RSSI)知识整理
来源:https://www.cnblogs.com/lele/articles/2832885.html为什么无线信号(RSSI)是负值答:其实归根到底为什么接收的无线信号是负值,这样子是不是容易理解多了。因为无线信号多为mW级别,所以对它进行了极化,转化为dBm而已,不表示信号是负的。1mW就是0dBm,小于1mW就是负数的dBm数。弄清信号强度的定义就行了:RSSI(接收信号强度)Received Signal Strength IndicatorRss=10logP,只需将接受到的信号转载 2021-07-05 11:32:54 · 7638 阅读 · 0 评论 -
【蓝牙开发】Bluez中org.bluez.LEAdvertisingManager1和org.bluez.LEAdvertisement1的关系
未完待续!!bluez源码下的doc/advertising-api.txt原创 2021-06-30 19:58:00 · 766 阅读 · 0 评论 -
【蓝牙开发】利用GDbus提供的接口进行dbus中xml文件格式的校验
static const gchar bleAdvertisingIntrospectionXml[] =“\n”“”" <interface name=“org.bluez.LEAdvertisement1”>"" <method name=“Release”>"" "" <property name=“Type” type=“s” access=“read”/>"" "“”;原创 2021-06-30 19:53:21 · 389 阅读 · 0 评论 -
【蓝牙】Bluez中通过gdbus提供的API进行远程method的调用,涉及到的多参数传递问题
未完待续!LE Advertising Manager hierarchyThe Advertising Manager allows external applications to register AdvertisementData which should be broadcast to devices. Advertisement Data elements mustfollow the API for LE Advertisement Data described above.Ser原创 2021-06-30 19:50:54 · 436 阅读 · 0 评论 -
【蓝牙】Bluez通过dbus-monitor进行消息监控
sudo dbus-monitor --system “destination=‘org.bluez’” “sender=‘org.bluez’”未完待续!!原创 2021-06-29 20:35:42 · 979 阅读 · 0 评论 -
【蓝牙】BlueZ通过gdbus 模拟method call
https://developer.gnome.org/gio/stable/gdbus.html未完 待续!!原创 2021-06-29 20:34:15 · 506 阅读 · 0 评论 -
【蓝牙】编译BlueZ源码 需要安装的依赖
可能会遇到的依赖问题:configure: error: D-Bus >= 1.6 is require解决办法:sudo apt-get install libdbus-1-devchecking for UDEV… noconfigure: error: libudev >= 172 is required解决方法: sudo apt-get install libudev-devchecking for ICAL… noconfigure: error: libical原创 2021-06-19 14:04:32 · 935 阅读 · 0 评论 -
【蓝牙】一文入门Bluez的BLE基础开发 - BLE数据收发(Python)
如实基于Bluez创建BLE设备,实现数据的收发?原创 2021-05-05 23:43:06 · 8900 阅读 · 7 评论 -
【蓝牙】基于Bluez的Bluetoothctl BLE开发
对于BLE的开发,大部分的BLE开发者都是在BLE芯片原厂的SDK基础上进行BLE的应用开发,跟更多的是基于SDK的应用开发而对于BLE的协议、框架知之甚少. 另外芯片原厂也不会暴露过多底层的接口给到开发者,开发者想要深入理解也无法下手,然后Linux平台提供了一个开源的蓝牙协议栈(传统蓝牙+BLE), 给了BLE开发者一个深入理解的入口,无论你是Linux还是RTOS的开发人员,只要希望能够对BLE有更深入的理解,都希望能开始接触到Linux下的BLE Over Bluez的开发、学习. 本篇文章主要.原创 2021-04-29 09:17:06 · 9090 阅读 · 5 评论 -
【蓝牙】一文入门Bluez的BLE基础开发 - BLE广播
接下来关于基于Python的Bluez-BLE基础开发,主要由3篇文章构成,包含以下三点,循序渐进的完成本系列内容的讲解.基于Python创建一个BLE设备,能够通过nRF Connect发现其设备和广播包数据基于Python创建一个BLE设备,并完成一个自定义BLE Service的注册,实现数据的简单收发基于Python创建一个BLE设备,在实现数据收发的基础上,增加BLE 连接等状态的上报背景知识的掌握Bluez的了解之前的关于Bluez的讲解博客: 基于Bluez的Blueto.原创 2021-04-26 21:38:50 · 5882 阅读 · 3 评论 -
【蓝牙开发 - BLE】BLE广播包
BLE广播包可连接和不可连接广播包Advertising interval - 广播间隔Advertising events - 广播事件扫描响应包原创 2021-04-21 23:43:07 · 1144 阅读 · 1 评论