手机设备会区分 "connecting" and "pairing" ,前者可以自动连接,后者则需要请求。
BLE不再有pairing的麻烦,能直接连上目标设备,并开启服务自动发送数据功能。

开发蓝牙程序,主要是两块:连接和数据解析。

1. Connect 连接。

1.1) How to know service UUID?
https://developer.bluetooth.org/gatt/services/Pages/ServicesHome.aspx
1.2) How to know Characteristics UUID?
https://developer.bluetooth.org/gatt/characteristics/Pages/CharacteristicsHome.aspx
1.3) How to know Descriptors UUID?
https://developer.bluetooth.org/gatt/descriptors/Pages/DescriptorsHomePage.aspx
如果不在上述列表,那么Service是custom service,只能通过相关文档或者遍历尝试了。

2. Data parsing 数据解析。

GATT Specifications
https://developer.bluetooth.org/gatt/Pages/default.aspx
其中,Units/Format Types/GATT Namespace Descriptors 三个是基本命名规则等,可以不看。

想知道某个角色模型:(Sample: https://developer.bluetooth.org/TechnologyOverview/Pages/HRP.aspx)
Web site -> GATT Specifications -> Bluetooth specifications -> "Overview Page" column
角色模型,Service组成都在这里了。

具体查阅某个Characteristics的数据格式,还是跟查UUID一样:
https://developer.bluetooth.org/gatt/characteristics/Pages/CharacteristicsHome.aspx

===================================
参考:

一个很好的例子,手机与BLE串口设备通信,用串口小助手辅助调试:
(http://blog.csdn.net/hellogv/article/details/24267685)

Callback及基本介绍:http://www.xlgps.com/article/114904.html
一个很好的给官方的翻译页面,http://blog.csdn.net/qinxiandiqi/article/details/40741269
给出很好的介绍及新旧两种连接方式: http://blog.davidvassallo.me/2015/09/02/ble-health-devices-first-steps-with-android/
各种Callback 函数的总结: http://www.cnblogs.com/liqw/p/4031437.html
一些很好的翻译及介绍: http://www.race604.com/gatt-connect/
http://www.race604.com/gatt-profile-intro/
https://learn.adafruit.com/introduction-to-bluetooth-low-energy?view=all
====================================
关于开发板的开发,C语言开发的:
http://china.cypress.com/blog/100-projects-100-days
http://china.cypress.com/blog/100-projects-100-days/project-045-pulse-oximetry-heart-rate-monitor

BLE 设备有6 tytes 的唯一地址标识。
====================================

低功耗蓝牙BLE [学习笔记]的更多相关文章

  1. 低功耗蓝牙BLE外围模式(peripheral)-使用BLE作为服务端

    低功耗蓝牙BLE外围模式(peripheral)-使用BLE作为服务端 Android对外模模式(peripheral)的支持 从Android5.0开始才支持 关键术语和概念 以下是关键BLE术语和 ...

  2. 深入浅出低功耗蓝牙(BLE)协议栈

    深入浅出低功耗蓝牙(BLE)协议栈 BLE协议栈为什么要分层?怎么理解蓝牙"连接"?如果蓝牙协议只有ATT没有GATT会发生什么? 协议栈框架 一般而言,我们把某个协议的实现代码称 ...

  3. 使用BleLib的轻松搞定Android低功耗蓝牙Ble 4.0开发具体解释

    转载请注明来源: http://blog.csdn.net/kjunchen/article/details/50909410 使用BleLib的轻松搞定Android低功耗蓝牙Ble 4.0开发具体 ...

  4. 深入浅出讲解低功耗蓝牙(BLE)协议栈

    详解BLE连接建立过程https://www.cnblogs.com/iini/p/8972635.html 详解BLE 空中包格式—兼BLE Link layer协议解析https://www.cn ...

  5. 低功耗蓝牙BLE之连接事件、连接参数和更新方法

    转自:http://blog.csdn.net/zzfenglin/article/details/51304084 连接事件 在一个连接当中,主设备会在每个连接事件里向从设备发送数据包.一个连接事件 ...

  6. Android低功耗蓝牙(BLE)开发的一点感受

    最近一段时间,因为产品的需要我做了一个基于低功耗蓝牙设备的Android应用,其中碰到了一些困难,使我深深体会到Android开发的难处:不同品牌,不同型号和不同版本之间的差异使得Android应用适 ...

  7. Android 低功耗蓝牙BLE 开发注意事项

    基本概念和问题 1.蓝牙设计范式? 当手机通过扫描低功耗蓝牙设备并连接上后,手机与蓝牙设备构成了客户端-服务端架构.手机通过连接蓝牙设备,可以读取蓝牙设备上的信息.手机就是客户端,蓝牙设备是服务端. ...

  8. Ti CC2540蓝牙模块学习笔记整理

    接触CC2540几天,终于有了初步的理解,现将笔记整理如下,只是皮毛,如有错误,还请指正,还有好多没闹明白的地方,以后应该还会继续向里面更新~ 一.整体 1.TI的蓝牙平台支持2种协议栈/应用配置:单 ...

  9. Android 蓝牙 BLE 开发笔记

    最近公司头戴换了一块蓝牙4.0 BLE模块,所以我们Android组要适配 BLE.Android BLE 需要 4.3 以上系统,api 还是非常简单的, 第一步就是扫描, 扫描到设备后就可以连接了 ...

随机推荐

  1. 解决treeview未选中时,默认选中首个根节点的问题!

    private void treeView1_MouseUp(object sender, MouseEventArgs e) { TreeNode selectnode = this.treeVie ...

  2. 学习C# XmlSerializer 序列化反序列化XML

    类.变量常用头: [XmlRootAttribute]:对根节点的描述,在类声明中使用 如:下例的Html类 [XmlType]:对节点描述,在类声明中使用         如:下例的Head类 [X ...

  3. 数据挖掘十大经典算法[0]-K-Means算法

    K-Means算法的输入N,K和一个size为N的向量组vector.输出K个两两互不相交的向量组.其本质是将给定的向量组划分成K个类别,使得同类别的向量相似度比较大,而不同类别的向量之间的相似度较小 ...

  4. Gap

    Gap Time Limit: 20000/10000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submi ...

  5. 寒冰王座[HDU1248]

    寒冰王座 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submis ...

  6. sprintf() in c

    Declaration Following is the declaration for sprintf() function. int sprintf(char *str, const char * ...

  7. 生成CSV文件后再将CSV文件导入到mysql

    1.生成CSV jar包:http://pan.baidu.com/s/1xIL26 String csvFilePath = "d:\\test.csv"; CsvWriter ...

  8. jquery数组排序学习

    前面转载过一片关于js数组的一些基本能操作方法,本文结合实例对数组排序做简要探讨. 首先看一实例,一般涉及到排序都是动态数据,现在我们自己新建一数组进行模拟. html代码: <!DOCTYPE ...

  9. 【BZOJ】1202: [HNOI2005]狡猾的商人(并查集+前缀和)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1202 用并查集+前缀和. 前缀和从后向前维护和,并查集从前往后合并 对于询问l, r 如果l-1和r ...

  10. POJ 2948 Martian Mining(DP)这是POJ第200道,居然没发现

    题目链接 两种矿石,Y和B,Y只能从从右到左,B是从下到上,每个空格只能是上下或者左右,具体看图.求左端+上端最大值. 很容易发现如果想最优,分界线一定是不下降的,分界线上面全是往上,分界线下面都是往 ...