什么是蓝牙service和characteristic?如何理解蓝牙profile? ATT和GATT两者如何区分?什么是attribute? attribute和characteristic的区别是什么?蓝牙的互联互通为什么能够做的这么成功? 本文除了阐述上述问题 ,并重点阐述蓝牙协议栈中的ATT层和GATT层. 低功耗蓝牙协议栈构架结构: 如图所示,ATT和GATT是蓝牙协议栈最重要的两层,也是蓝牙应用开发者打交道最多的两层,用户开发应用程序或者说service/profile的时候,调用的…
什么是蓝牙service和characteristic?到底怎么理解蓝牙profile?ATT和GATT两者如何区分?什么又是attribute?attribute和characteristic的区别是什么?蓝牙的互联互通为什么能做得这么成功? 本文将对以上问题进行阐述,并重点阐述蓝牙协议栈中的ATT层和GATT层,本文偏重理论,如果你对低功耗蓝牙不是很了解,建议配合如下两篇文章一起阅读: 开发你的第一个BLE应用程序—Blinky 手把手教你开发BLE数据透传应用程序 1. 蓝牙协议栈架构 如…
Android BLE与终端通信(五)--Google API BLE4.0低功耗蓝牙文档解读之案例初探 算下来很久没有写BLE的博文了,上家的技术都快忘记了,所以赶紧读了一遍Google的API顺便写下这篇博客心得 Google API:http://developer.android.com/guide/topics/connectivity/bluetooth-le.html#terms 其实大家要学习Android的技术,Google的API就是最详细的指导书了,而且通俗易懂,就算看不懂…
0×00 前言 低功耗蓝牙(Low Energy; LE),又视为Bluetooth Smart或蓝牙核心规格4.0版本.其特点具备节能.便于采用,是蓝牙技术专为物联网(Internet of Things; IOT)开发的技术版本. 类似文章推荐:永不消逝的电波(三):低功耗蓝牙(BLE)入门之如何调戏别人的小米手环. BLE主打功能是快速搜索,快速连接,超低功耗保持连接和传输数据,弱点是数据传输速率低,由于BLE的低功耗特点,因此普遍用于穿戴设备. 我们比较熟悉的网络有 Zigbee,WIF…
背景 在学习BLE的过程中,积累了一些心得的DEMO,放到Github,形成本文.感兴趣的同学可以下载到源代码. github: https://github.com/vir56k/bluetoothDemo 什么是BLE(低功耗蓝牙) BLE(Bluetooth Low Energy,低功耗蓝牙)是对传统蓝牙BR/EDR技术的补充. 尽管BLE和传统蓝牙都称之为蓝牙标准,且共享射频,但是,BLE是一个完全不一样的技术. BLE不具备和传统蓝牙BR/EDR的兼容性.它是专为小数据率.离散传输的应…
0×00 前言 蓝牙(Bluetooth),一种无线技术标准,用来让固定与移动设备,在短距离间交换数据,以形成个人局域网(PAN).其使用短波特高频(UHF)无线电波,经由2.4至2.485 GHz的ISM频段来进行通信.1994年由电信商爱立信发展出这个技术.它最初的设计,是希望创建一个RS-232数据线的无线通讯替代版本. 蓝牙技术目前由蓝牙技术联盟(SIG)来负责维护其技术标准,这个联盟拥有超过20,000间公司成员,其成员的领域分布在电信.电脑.网络与消费性电子产品上. 蓝牙也是目前数码…
低功耗蓝牙BLE外围模式(peripheral)-使用BLE作为服务端 Android对外模模式(peripheral)的支持 从Android5.0开始才支持 关键术语和概念 以下是关键BLE术语和概念的摘要: 通用属性简档(GATT) - GATT简档是用于通过BLE链路发送和接收称为"属性"的短数据块的一般规范. 所有当前的低能量应用配置文件都基于GATT. 蓝牙SIG为低能量设备定义了许多配置文件 . 配置文件是设备在特定应用程序中的工作方式的规范. 请注意,设备可以实现多个配…
BLE基础知识 1.传统蓝牙的传输距离几十米到几百米不等,BLE 则规定为 100 米(实际上没有那么远,50米以内比较稳定,和设备发射功率有关) 2.为了实现极低的功耗,BLE 协议设计为:在不必要射频的时候,彻底将空中射频关断(可以在需要的时候快速建立连接进行控制操作).与传统蓝牙 BR\EDR 相比,BLE 有这三大特性,从而实现低功耗:缩短无线开启间. 快速建立连接.降低收发峰值功耗(具体由芯片决定). 3.缩短无线开启时间的第一个技巧是只用 3 个"广告"信道(其余信道用于数…
TI低功耗蓝牙(BLE)介绍 本文档翻译和修改自参考资料:CC2540Bluetooth Low Energy Software Developer’s Guide (Rev. B),部分图片直接引用自该文档,不一一说明.初稿,待修改. 一.概述 1.BLE蓝牙协议栈结构 附图6 BLE蓝牙协议栈结构图 分为两部分:控制器和主机.对于4.0以前的蓝牙,这两部分是分开的.所有profile(姑且称为剧本吧,用来定义设备或组件的角色)和应用都建构在GAP或GATT之上.下面由结构图的底层组件开始介绍…
基本概念和问题 1.蓝牙设计范式? 当手机通过扫描低功耗蓝牙设备并连接上后,手机与蓝牙设备构成了客户端-服务端架构.手机通过连接蓝牙设备,可以读取蓝牙设备上的信息.手机就是客户端,蓝牙设备是服务端. 手机做为客户端可以连接多个蓝牙设备,所以手机又可以叫中心设备(Central),蓝牙设备叫外围设备(Peripheral). 还有另外一个称谓:手机叫主设备(Master),蓝牙设备叫从设备(Slave). Android4.3 开始支持低功耗蓝牙,此版本只支持单模式:同时只能工作在中心设备模式或者…