Skip to content

Commit 14a0f78

Browse files
szymon-czaprackisjanc
authored andcommitted
nimble/hci: Document vendor specific commands
Commands were not documented. Lack of the descriptions could led to some ambiguous interpretations.
1 parent fcc541c commit 14a0f78

File tree

1 file changed

+336
-0
lines changed

1 file changed

+336
-0
lines changed

nimble/doc/hci_vendor.md

Lines changed: 336 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,336 @@
1+
<!--
2+
#
3+
# Licensed to the Apache Software Foundation (ASF) under one
4+
# or more contributor license agreements. See the NOTICE file
5+
# distributed with this work for additional information
6+
# regarding copyright ownership. The ASF licenses this file
7+
# to you under the Apache License, Version 2.0 (the
8+
# "License"); you may not use this file except in compliance
9+
# with the License. You may obtain a copy of the License at
10+
#
11+
# http://www.apache.org/licenses/LICENSE-2.0
12+
#
13+
# Unless required by applicable law or agreed to in writing,
14+
# software distributed under the License is distributed on an
15+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16+
# KIND, either express or implied. See the License for the
17+
# specific language governing permissions and limitations
18+
# under the License.
19+
#
20+
-->
21+
22+
23+
Nimble Vendor Supported Commands
24+
================================
25+
26+
*OGF = 0x003F*
27+
28+
29+
Read Static Address Command
30+
---------------------------
31+
32+
Read the static random address assigned to the controller
33+
34+
| Command | OCF | Params |Return params |
35+
|-------------------|--------|------------|--------------|
36+
| Read_Addr | 0x0001 | *none* | Static_Addr |
37+
38+
<br>
39+
Static_Addr
40+
41+
| Value | Description |
42+
|--------------------|-------------|
43+
| 0xXXXXXXXXXXXX | Address |
44+
45+
*Size: 6 octets*
46+
47+
48+
Set Default Transmit Power
49+
--------------------------
50+
51+
Set default transmit power level <br>
52+
Selected TX power is returned <br>
53+
Setting 0xFF restores controller setting to default <br>
54+
55+
| Command | OCF | Params | Return params |
56+
|-------------------|--------|------------|---------------|
57+
| Set_Tx_Pwr | 0x0002 | Tx_Pwr | Sel_Tx_Pwr |
58+
59+
<br>
60+
Tx_Pwr
61+
62+
| Value | Description |
63+
|----------------------------|------------------------|
64+
| 0xXX | Desired TX Power Level |
65+
66+
*Size: 1 octet*
67+
68+
<br>
69+
Sel_Tx_Pwr
70+
71+
| Value | Description |
72+
|------------------|------------------------------|
73+
| 0xXX | Controller Selected TX power |
74+
75+
*Size: 1 octet*
76+
77+
78+
Configure Connection Strict Scheduling
79+
--------------------------------------
80+
81+
Configure Connection Strict Scheduling
82+
83+
| Command | OCF | Params | Return params |
84+
|-------------------|--------|------------|---------------|
85+
| CSS_Configure | 0x0003 | Slot_us | *none* |
86+
| | | Num_Slots | |
87+
88+
<br>
89+
Slot_us
90+
91+
| Value | Description |
92+
|----------------------------|-----------------------|
93+
| 0xXXXXXX | Slot duration in msec |
94+
95+
*Size: 4 octets*
96+
97+
<br>
98+
Number_Of_Slots
99+
100+
| Value | Description |
101+
|----------------------------|------------------------|
102+
| 0xXXXXXX | Number of period slots |
103+
104+
*Size: 4 octets*
105+
106+
107+
Connection strict scheduling enable
108+
-----------------------------------
109+
110+
Enable/Disable Connection Strict Scheduling
111+
112+
| Command | OCF | Params | Return params |
113+
|--------------|--------|--------------|---------------|
114+
| CSS_Enable | 0x0004 |Enable/Disale | *none* |
115+
116+
117+
<br>
118+
Enable/Disable
119+
120+
| Value | Description |
121+
|----------------------------|--------------------|
122+
| 0xXX | Enable/Disable CSS |
123+
124+
*Size: 1 octet*
125+
126+
127+
Connection Strict Scheduling - Select Next Slot
128+
-----------------------------------------------
129+
130+
Set next slot index for future connection
131+
132+
| Command | OCF | Params | Return params |
133+
|-------------------|--------|--------------|---------------|
134+
| CSS_Set_Next_Slot | 0x0005 |Next_Slot_Idx | *none* |
135+
136+
137+
<br>
138+
Next_Slot_Idx
139+
140+
| Value | Description |
141+
|----------------------------|--------------|
142+
| 0xXXXX | Next Slot ID |
143+
144+
*Size: 2 octets*
145+
146+
147+
Connection Strict Scheduling - Select Slot For Specific Connection
148+
------------------------------------------------------------------
149+
150+
Set slot index for current connection
151+
152+
| Command | OCF | Params | Return params |
153+
|-------------------|--------|------------|---------------|
154+
| CSS_Configure | 0x0006 | Conn_Hdl | *none* |
155+
| | | Slot_Idx | |
156+
157+
<br>
158+
Conn_Hdl
159+
160+
| Value | Description |
161+
|----------------------------|-------------------|
162+
| 0xXXXX | Connection Handle |
163+
164+
*Size: 2 octets*
165+
166+
<br>
167+
Slot_Idx
168+
169+
| Value | Description |
170+
|----------------------------|-------------|
171+
| 0xXXXX | Slot ID |
172+
173+
*Size: 2 octets*
174+
175+
176+
Connection Strict Scheduling - Read Connection Slot
177+
---------------------------------------------------
178+
179+
Read current connection slot index
180+
181+
| Command | OCF | Params | Return params |
182+
|-------------------|--------|--------------|---------------|
183+
| CSS_Set_Next_Slot | 0x0007 | Conn_Hdl | Conn_Hdl |
184+
| | | | Slot_Idx |
185+
186+
<br>
187+
Conn_Hdl
188+
189+
| Value | Description |
190+
|----------------------------|-------------------|
191+
| 0xXXXX | Connection Handle |
192+
193+
*Size: 2 octets*
194+
195+
<br>
196+
Slot_Idx
197+
198+
| Value | Description |
199+
|--------------------|-------------|
200+
| 0xXXXX | Slot_ID |
201+
*Size: 2 octets*
202+
203+
204+
Set Data Length
205+
---------------
206+
207+
Change TX/RX values.
208+
Waits for Data Length Changed event.
209+
210+
| Command | OCF | Params | Return params |
211+
|--------------|--------|-----------------|---------------|
212+
| Set_Data_Len | 0x0008 | Conn_Hdl<br> | Conn_Hdl |
213+
| | | Tx_Octets<br> | |
214+
| | | Tx_Time<br> | |
215+
| | | Rx_Octets<br> | |
216+
| | | Rx_Time<br> | |
217+
218+
<br>
219+
Conn_Hdl
220+
221+
| Value | Description |
222+
|----------------------------|-------------------|
223+
| 0xXXXX | Connection Handle |
224+
225+
*Size: 2 octets*
226+
227+
<br>
228+
Tx_Octets
229+
230+
| Value | Description |
231+
|----------------------------|-----------------|
232+
| 0xXXXX | Transmit octets |
233+
234+
*Size: 2 octets*
235+
236+
<br>
237+
Tx_Time
238+
239+
| Value | Description |
240+
|----------------------------|-------------------|
241+
| 0xXXXX | Transmission time |
242+
243+
*Size: 2 octets*
244+
245+
<br>
246+
Rx_Octets
247+
248+
| Value | Description |
249+
|----------------------------|-----------------|
250+
| 0xXXXX | Receiver octets |
251+
252+
*Size: 2 octets*
253+
254+
<br>
255+
Rx_Time
256+
257+
| Value | Description |
258+
|----------------------------|---------------|
259+
| 0xXXXX | Receiver time |
260+
261+
*Size: 2 octets*
262+
263+
264+
Set Antenna Location
265+
--------------------
266+
267+
| Command | OCF | Params | Return params |
268+
|---------------|--------|----------------|---------------|
269+
| Set_Ant_Loc | 0x0009 | Ant_Loc | *none* |
270+
271+
272+
<br>
273+
Ant_Loc
274+
275+
| Value | Description |
276+
|----------------------------|------------------|
277+
| 0xXX | Antenna location |
278+
279+
*Size: 1 ocet*
280+
281+
282+
Set Local Identity Resolving Key
283+
--------------------------------
284+
285+
Set own address type & identity resolving key
286+
287+
| Command | OCF | Params | Return params |
288+
|-----------------|--------|---------------|---------------|
289+
| Set_Local_IRK | 0x000A | Own_Addr_Type | *none* |
290+
| | | IRK | |
291+
292+
<br>
293+
Rx_Time
294+
295+
| Value | Description |
296+
|----------------------------|---------------------|
297+
| 0xXX | Device Address Type |
298+
299+
*Size: 1 ocet*
300+
301+
<br>
302+
IRK
303+
304+
| Value | Description |
305+
|--------------------|------------------------|
306+
| 0xXX(16) | Identity Resolving Key |
307+
308+
*Size: 16 ocets*
309+
310+
311+
Set Scan Configuration
312+
----------------------
313+
314+
| Command | OCF | Params | Return params |
315+
|-----------------|--------|---------------|---------------|
316+
| Set_Scan_Cfg | 0x000B | Flags | *none* |
317+
| | | Rssi_Tres | |
318+
319+
<br>
320+
Flags
321+
322+
| Value | Description |
323+
|----------------------------|-------------------------|
324+
| 0x00000001<br> | No legacy advertising |
325+
| 0x00000002 | No extended advertising |
326+
327+
*Size: 4 octets*
328+
329+
<br>
330+
Rssi_Tres
331+
332+
| Value | Description |
333+
|----------------------------|---------------------|
334+
| 0xXX | RSSI treshold value |
335+
336+
*Size: 1 octet*

0 commit comments

Comments
 (0)