没有合适的资源?快使用搜索试试~ 我知道了~
首页android Ble 蓝牙4.0 GATT 错误代码
资源详情
资源评论
资源推荐
Git
Sign in
android/platform/external/bluetooth/bluedroid/android-4.3_r1.1/./stack/inclu
de/ gatt_api.h
blob: d53a80e1a5c923d3cf6db123f2c648df5813e8e3 [file history]
1. /******************************************************************************
2. *
3. * Copyright (C) 1999-2012 Broadcom Corporation
4. *
5. * Licensed under the Apache License, Version 2.0 (the "License");
6. * you may not use this file except in compliance with the License.
7. * You may obtain a copy of the License at:
8. *
9. * http://www.apache.org/licenses/LICENSE-2.0
10. *
11. * Unless required by applicable law or agreed to in writing, software
12. * distributed under the License is distributed on an "AS IS" BASIS,
13. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14. * See the License for the specific language governing permissions and
15. * limitations under the License.
16. *
17. ******************************************************************************
/
18. #ifndef GATT_API_H
19. #define GATT_API_H
20.
21. #include "bt_target.h"
22. #include "gattdefs.h"
23.
24. /*****************************************************************************
25. ** Constants
26. *****************************************************************************/
27. /* Success code and error codes */
28. #define GATT_SUCCESS 0x0000
29. #define GATT_INVALID_HANDLE 0x0001
30. #define GATT_READ_NOT_PERMIT 0x0002
31. #define GATT_WRITE_NOT_PERMIT 0x0003
32. #define GATT_INVALID_PDU 0x0004
33. #define GATT_INSUF_AUTHENTICATION 0x0005
34. #define GATT_REQ_NOT_SUPPORTED 0x0006
35. #define GATT_INVALID_OFFSET 0x0007
36. #define GATT_INSUF_AUTHORIZATION 0x0008
37. #define GATT_PREPARE_Q_FULL 0x0009
38. #define GATT_NOT_FOUND 0x000a
39. #define GATT_NOT_LONG 0x000b
40. #define GATT_INSUF_KEY_SIZE 0x000c
41. #define GATT_INVALID_ATTR_LEN 0x000d
42. #define GATT_ERR_UNLIKELY 0x000e
43. #define GATT_INSUF_ENCRYPTION 0x000f
44. #define GATT_UNSUPPORT_GRP_TYPE 0x0010
45. #define GATT_INSUF_RESOURCE 0x0011
46.
47.
48. #define GATT_ILLEGAL_PARAMETER 0x0087
49. #define GATT_NO_RESOURCES 0x0080
50. #define GATT_INTERNAL_ERROR 0x0081
51. #define GATT_WRONG_STATE 0x0082
52. #define GATT_DB_FULL 0x0083
53. #define GATT_BUSY 0x0084
54. #define GATT_ERROR 0x0085
55. #define GATT_CMD_STARTED 0x0086
56. #define GATT_PENDING 0x0088
57. #define GATT_AUTH_FAIL 0x0089
58. #define GATT_MORE 0x008a
59. #define GATT_INVALID_CFG 0x008b
60. #define GATT_SERVICE_STARTED 0x008c
61. #define GATT_ENCRYPED_MITM GATT_SUCCESS
62. #define GATT_ENCRYPED_NO_MITM 0x008d
63. #define GATT_NOT_ENCRYPTED 0x008e
64.
65.
66. typedef UINT8 tGATT_STATUS;
67.
68.
69. #define GATT_RSP_ERROR 0x01
70. #define GATT_REQ_MTU 0x02
71. #define GATT_RSP_MTU 0x03
72. #define GATT_REQ_FIND_INFO 0x04
73. #define GATT_RSP_FIND_INFO 0x05
74. #define GATT_REQ_FIND_TYPE_VALUE 0x06
75. #define GATT_RSP_FIND_TYPE_VALUE 0x07
76. #define GATT_REQ_READ_BY_TYPE 0x08
77. #define GATT_RSP_READ_BY_TYPE 0x09
78. #define GATT_REQ_READ 0x0A
79. #define GATT_RSP_READ 0x0B
80. #define GATT_REQ_READ_BLOB 0x0C
81. #define GATT_RSP_READ_BLOB 0x0D
82. #define GATT_REQ_READ_MULTI 0x0E
83. #define GATT_RSP_READ_MULTI 0x0F
84. #define GATT_REQ_READ_BY_GRP_TYPE 0x10
85. #define GATT_RSP_READ_BY_GRP_TYPE 0x11
86. #define GATT_REQ_WRITE 0x12 /* 0001-0010
(write)*/
87. #define GATT_RSP_WRITE 0x13
88. #define GATT_CMD_WRITE 0x52 /* changed in V4.0 01001-
0010(write cmd)*/
89. #define GATT_REQ_PREPARE_WRITE 0x16
90. #define GATT_RSP_PREPARE_WRITE 0x17
91. #define GATT_REQ_EXEC_WRITE 0x18
92. #define GATT_RSP_EXEC_WRITE 0x19
93. #define GATT_HANDLE_VALUE_NOTIF 0x1B
94. #define GATT_HANDLE_VALUE_IND 0x1D
95. #define GATT_HANDLE_VALUE_CONF 0x1E
96. #define GATT_SIGN_CMD_WRITE 0xD2 /* changed in V4.0 1101-0010
(signed write) see write cmd above*/
97. #define GATT_OP_CODE_MAX GATT_HANDLE_VALUE_CONF + 1 /* 0x1E
= 30 + 1 = 31*/
98.
99.
100. #define GATT_HANDLE_IS_VALID(x) ((x) != 0)
101.
102. #define GATT_CONN_UNKNOWN 0
103. #define GATT_CONN_NO_RESOURCES L2CAP_CONN_NO_RESOURCES
/* connection fail for l2cap resource failure */
104. #define GATT_CONN_TIMEOUT HCI_ERR_CONNECTION_TOUT
/* 0x08 connection timeout */
105. #define GATT_CONN_TERMINATE_PEER_USER HCI_ERR_PEER_USER
/* 0x13 connection terminate by peer user */
106. #define GATT_CONN_TERMINATE_LOCAL_HOST HCI_ERR_CONN_CAUSE_LOCAL_HOST
/* 0x16 connectionterminated by local host */
107. #define GATT_CONN_FAIL_ESTABLISH
HCI_ERR_CONN_FAILED_ESTABLISHMENT/* 0x03E connection fail to establish */
108. #define GATT_CONN_LMP_TIMEOUT HCI_ERR_LMP_RESPONSE_TIMEOUT
/* 0x22 connection fail for LMP response tout */
109. #define GATT_CONN_CANCEL L2CAP_CONN_CANCEL
/* 0x0100 L2CAP connection cancelled */
110. typedef UINT16 tGATT_DISCONN_REASON;
111.
112. /* MAX GATT MTU size
113. */
114. #ifndef GATT_MAX_MTU_SIZE
115. #define GATT_MAX_MTU_SIZE 517
116. #endif
117.
118. /* max legth of an attribute value
119. */
120. #ifndef GATT_MAX_ATTR_LEN
121. #define GATT_MAX_ATTR_LEN 600
122. #endif
123.
124. /* default GATT MTU size over LE link
125. */
126. #define GATT_DEF_BLE_MTU_SIZE 23
127.
128. /* invalid connection ID
129. */
130. #define GATT_INVALID_CONN_ID 0xFFFF
131.
132. #ifndef GATT_CL_MAX_LCB
133. #define GATT_CL_MAX_LCB 22
134. #endif
135.
136. #ifndef GATT_MAX_SCCB
137. #define GATT_MAX_SCCB 10
138. #endif
139.
140. #ifndef GATTP_TRANSPORT_SUPPORTED
141. #define GATTP_TRANSPORT_SUPPORTED GATT_TRANSPORT_LE_BR_EDR
142. #endif
143.
144.
145. /* GATT notification caching timer, default to be three seconds
146. */
147. #ifndef GATTC_NOTIF_TIMEOUT
148. #define GATTC_NOTIF_TIMEOUT 3
149. #endif
150.
151. /
*****************************************************************************
152. ** GATT Structure Definition
153. ****************************************************************************
*/
154.
155. /* Attribute permissions
156. */
157. #define GATT_PERM_READ (1 << 0) /* bit 0 */
158. #define GATT_PERM_READ_ENCRYPTED (1 << 1) /* bit 1 */
159. #define GATT_PERM_READ_ENC_MITM (1 << 2) /* bit 2 */
160. #define GATT_PERM_WRITE (1 << 4) /* bit 4 */
161. #define GATT_PERM_WRITE_ENCRYPTED (1 << 5) /* bit 5 */
162. #define GATT_PERM_WRITE_ENC_MITM (1 << 6) /* bit 6 */
163. #define GATT_PERM_WRITE_SIGNED (1 << 7) /* bit 7 */
164. #define GATT_PERM_WRITE_SIGNED_MITM (1 << 8) /* bit 8 */
165. typedef UINT16 tGATT_PERM;
166.
167. #define GATT_ENCRYPT_KEY_SIZE_MASK (0xF000) /* the MS nibble of tGATT_PERM;
key size 7=0; size 16=9 */
168.
169. #define GATT_READ_ALLOWED (GATT_PERM_READ |
GATT_PERM_READ_ENCRYPTED | GATT_PERM_READ_ENC_MITM)
170. #define GATT_READ_AUTH_REQUIRED (GATT_PERM_READ_ENCRYPTED)
171. #define GATT_READ_MITM_REQUIRED (GATT_PERM_READ_ENC_MITM)
172. #define GATT_READ_ENCRYPTED_REQUIRED (GATT_PERM_READ_ENCRYPTED |
GATT_PERM_READ_ENC_MITM)
173.
174.
175. #define GATT_WRITE_ALLOWED (GATT_PERM_WRITE |
GATT_PERM_WRITE_ENCRYPTED | GATT_PERM_WRITE_ENC_MITM | \
176. GATT_PERM_WRITE_SIGNED |
GATT_PERM_WRITE_SIGNED_MITM)
177.
178. #define GATT_WRITE_AUTH_REQUIRED (GATT_PERM_WRITE_ENCRYPTED |
GATT_PERM_WRITE_SIGNED)
179.
180. #define GATT_WRITE_MITM_REQUIRED (GATT_PERM_WRITE_ENC_MITM |
GATT_PERM_WRITE_SIGNED_MITM)
181.
182. #define GATT_WRITE_ENCRYPTED_PERM (GATT_PERM_WRITE_ENCRYPTED |
GATT_PERM_WRITE_ENC_MITM)
183.
剩余32页未读,继续阅读
zhangwm1219_
- 粉丝: 6
- 资源: 10
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- stc12c5a60s2 例程
- Android通过全局变量传递数据
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论6