蓝牙BLE ATT剖析(二)-- PDU

一.Error Handling

Error Response

The Error Responseis used to state that a given request cannot be performed,

and to provide the reason.

Note: The Write Command does notgenerate an Error Response

二.MTU Exchange

1.Exchange MTU Request

The Exchange MTU Requestis used by the client toinform the server of the

client’s maximum receive MTU size and requestthe server to respond with its

maximum receive MTU size.

2.Exchange MTU Response

The Exchange MTU Responseis sent in reply to a received Exchange MTU

Request.

三.Find Information

1.Find Information Request

The Find Information Requestis used to obtain the mapping of attribute

handles with their associated types. This allows a client to discover the list of

attributes and their types on a server

2. Find Information Response

The Find Information Responseis sent in reply to a received Find Information

Requestand contains information about this server

3.Find By Type Value Request

The Find By Type Value Requestis used to obtain the handles of attributes that

have a 16-bit UUID attribute type and attribute value.This allows the range of

handles associated with a given attribute to be discovered when the attribute

type determines the grouping of a set of attributes. Note: Generic Attribute

Profile defines grouping of attributes by attribute type.

4.Find By Type Value Response

The Find By Type Value Responseis sent in reply to a received Find By Type

Value Requestand contains information about this server

四.Reading Attributes

1.Read By Type Request

The Read By Type Requestis used to obtain the values of attributes where the

attribute type is known butthe handle is not known

2.Read ByType Response

The Read By Type Responseis sent in reply to a received Read By Type

Requestand contains the handles and values of the attributesthat have been

read

3.Read Request

The Read Requestis used to request the serverto read the value of an

attribute and returnits value in a Read Response

4.Read Response

The read response is sent in reply toa received Read Requestand contains

the value of the attribute that has been read

例:


5.Read Blob Request

The Read Blob Requestis used to request the server to read part of the value

of an attribute at a given offset and return a specific part of the value in a Read

Blob Response.

6.ReadBlob Response

The Read Blob Responseis sent in reply to a received Read Blob Requestand

contains part of the value of the attribute that has been read.

7.Read Multiple Request

The Read Multiple Requestis used to request the server to read two or more

values of a set of attributesand return their values in a Read Multiple

Response. Only values that have a known fixed size can be read, with the

exception of the last value that can have a variable length. The knowledge of

whether attributes have a known fixed size is defined in a higher layer

specification.

8.Read Multiple Response

The read response is sent in reply toa received Read Multiple Requestand

contains the values of the attributes that have been read

9.Read by Group Type Request

The Read By Group Type Requestis used to obtain the values of attributes

where the attribute type is known, the type of a grouping attribute as defined by

a higher layer specification,but the handle is not known.

10.Read by Group Type Response

The Read By Group Type Responseis sent in reply to a received Read By

Group Type Requestand contains the handles and values of the attributes that

have been read

五.Writing Attributes

1.Write Request

The Write Requestis used to request the server to write the value of an

attribute and acknowledge thatthis has been achieved in a Write Response

2.Write Response

The Write Responseis sent in reply to a valid Write Requestand

acknowledges that the attribute has been successfully written

例:

3.Write Command

The Write Command is used to request the server to write the value of an

attribute, typically into a control-pointattribute.

例:

4.Signed Write Command

The Signed Write Commandis used to request the serverto write the value of an

attribute with an authentication signature, typically into a control-point attribute

六.Signed Write Command

The Signed Write Commandis used to request the serverto write the value of an

attribute with an authentication signature, typically into a control-point attribute

七.ServerInitiated

1.Handle Value Notification

A server can send a notification of an attribute’s value at any time

例:

2.Handle Value Indication

A server can send an indication of an attribute’s value

3.Handle Value Confirmation

The Handle Value Confirmationis sent in response to a received Handle Value

Indicationand confirms that the client has received an indication of the given

attribute.

时间: 2024-11-05 18:39:30

蓝牙BLE ATT剖析(二)-- PDU的相关文章

蓝牙BLE ATT剖析(一)

一.概述 The attribute protocol allows a device referred to as the server to expose a set of attributes and their associated values to a peer device referred to as the client. These attributes exposed by the server can be discovered, read, and written by

蓝牙 BLE GATT 剖析(二)-- GATT UUID and 举例

generic attribute profile (GATT) The Generic Attributes (GATT) define a hierarchical data structure that is exposed to connected Bluetooth LE devices. 一.UUID GATT Services GATT Attribute Types GATT Characteristic Descriptors GATT Characteristic Types

蓝牙 BLE GATT 剖析(一)

一.概述 The Generic Attribute Profile (GATT) defines a service framework using the Attribute Protocol. This framework defines proceduresand formats of services and their characteristics. The proceduresdefined include discovering, reading, writing, notif

【转】蓝牙ble app开发(三) -- 抓包

原文网址:http://blog.csdn.net/lckj686/article/details/43156617 关于android 蓝牙app开发抓包的重要性在 android 蓝牙ble app开发(二) -- 关键概念,连接参数,连接请求 中已经详细描述就不再熬述了固件基于cc2540  cc2541 1.环境 需要一个抓包器几十块钱, USBdongle 装Packet Sniffer软件进行抓包. 环境搭建可以参考:http://blog.csdn.net/mzy202/artic

以蓝牙为背景剖析无线通信原理以及协议栈

前言: 基于传统点对点的架构,想要把家庭电脑和键盘.鼠标.耳机.麦克风.以及移动电话等等连接起来,可能还要考虑增加USB插口. 有没有一种通用的不需要用户干预的简便方法把各种电子设备连接在一起,而又不至于被线缆淹没呢?在WiFi之外,大家已经比较熟悉的"蓝牙"正是这样一种连接技术,它被设计为面向个人和家庭的无线式自动连接,其三大核心特点便是无线.低成本和自动化. 图1 蓝牙的无线连接模式 可是"蓝牙"是怎么实现的上述所说的"连接"的呢? 下面我们

【转】Android4.3 蓝牙BLE初步

原文网址:http://www.cnblogs.com/savagemorgan/p/3722657.html 一.关键概念: Generic Attribute Profile (GATT) 通过BLE连接,读写属性类小数据的Profile通用规范.现在所有的BLE应用Profile都是基于GATT的. Attribute Protocol (ATT) GATT是基于ATT Protocol的.ATT针对BLE设备做了专门的优化,具体就是在传输过程中使用尽量少的数据.每个属性都有一个唯一的UU

Android4.3 蓝牙BLE初步

一.关键概念: Generic Attribute Profile (GATT) 通过BLE连接,读写属性类小数据的Profile通用规范.现在所有的BLE应用Profile都是基于GATT的. Attribute Protocol (ATT) GATT是基于ATT Protocol的.ATT针对BLE设备做了专门的优化,具体就是在传输过程中使用尽量少的数据.每个属性都有一个唯一的UUID,属性将以characteristics and services的形式传输. Characteristic

蓝牙BLE以太网网关在智能家居中的应用(基于W5500)

 已刊登至<无线电>六月刊 早在1994年爱立信公司就创立了蓝牙技术,并制定了基本的技术规范,原意是创造一种设备间通讯的标准化协议,以解决设备间通讯不兼容的情况,规范公布后得到大量移动设备制造商的支持,并于1999年成立蓝牙技术联盟(Bluetooth Special Interest Group),该联盟制定并维护蓝牙无线规范,并对设备制造厂商提供Bluetooth认证与授权. 当前影响最广的版本应该是蓝牙4.0,本标准中增加了Bluetooth Smart和Bluetooth Smar

蓝牙(BLE)应用框架接口设计和应用开发——以TI CC2541为例

本文从功能需求的角度分析一般蓝牙BLE单芯片的应用框架(SDK Framework)的接口设计过程,并以TI CC2541为例说明BLE的应用开发方法. 一.应用框架(Framework) 我们熟知的Framework包括Android Framework.Linux QT.Windows MFC.应用框架抽象并封装实现了一般应用场景的需求,完成应用开发的80%,剩下的20%则以回调(callback)和接口的方式供应用开发人员调用以完成具体的需求. 一般Framework完成的工作包括:任务分