Table of Contents
0x34 - sd_power_system_off
Function packet format.
Frame format encoding of the sd_power_system_off packet.
The parameters are encoded in the following order:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | Operation Code | 0x34 |
Response packet format
There is no response for this command.
0x52 - sd_temp_get
Function packet format.
Frame format encoding of the sd_temp_get packet.
The parameters are encoded in the following order:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | Operation Code | 0x52 |
| 1 byte | Temperature Present | 0x00 - not present, 0x01 - present |
Response packet format
Frame format encoding of the sd_temp_get response packet:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | Operation Code | 0x52 |
| 4 bytes | nRF Error Code | See sd_temp_get |
| 4 bytes | Measured Temperature Value | See sd_temp_get |
0x60 - sd_ble_enable
Function packet format
Frame format encoding of the sd_ble_enable packet.
The parameters are encoded in the following order:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | Operation Code | 0x60, see BLE_COMMON_SVCS |
| 1 byte | Enable Params Present | 0x00 - not present, 0x01 - present |
| 5 bytes | Conditional: Enable Params | See ble_enable_params_t |
Response packet format
Frame format encoding of the sd_ble_enable response packet:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | Operation Code | 0x60, see BLE_COMMON_SVCS |
| 4 bytes | nRF Error Code | See sd_ble_enable |
0x62 - sd_ble_tx_buffer_count_get
Function packet format
Frame format encoding of the sd_ble_tx_buffer_count_get packet.
The parameters are encoded in the following order:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | Operation Code | 0x62, see BLE_COMMON_SVCS |
| 1 byte | Tx Buffer Count Present | 0x00 - not present, 0x01 - present |
Response packet format
If a command was executed successfully, so that
'nRF Error Code' =
NRF_SUCCESS
, the nRF Error Code is followed by conditional data.
Frame format encoding of the sd_ble_tx_buffer_count_get response packet:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | Operation Code | 0x62, see BLE_COMMON_SVCS |
| 4 bytes | nRF Error Code | See sd_ble_tx_buffer_count_get |
| 1 byte | Conditional: Tx Buffer Count Present | 0x00 - not present, 0x01 - present |
| 1 byte | Conditional: Tx Buffer Count | See sd_ble_tx_buffer_count_get |
0x63 - sd_ble_uuid_vs_add
Function packet format
Frame format encoding of the sd_ble_uuid_vs_add packet.
The parameters are encoded in the following order:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | Operation Code | 0x63, see BLE_COMMON_SVCS |
| 1 byte | UUID Present | 0x00 - not present, 0x01 - present |
| 16 bytes | Conditional: Vendor Specific UUID | See ble_uuid128_t |
| 1 byte | UUID type Present | 0x00 - not present, 0x01 - present |
Response packet format
If a command was executed successfully, so that
'nRF Error Code' =
NRF_SUCCESS
, the nRF Error Code is followed by conditional data.
Frame format encoding of the sd_ble_uuid_vs_add response packet:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | Operation Code | 0x63, see BLE_COMMON_SVCS |
| 4 bytes | nRF Error Code | See sd_ble_uuid_vs_add |
| 1 byte | UUID Type Present | 0x00 - not present, 0x01 - present |
| 1 byte | Conditional: UUID Type | Index to Vendor Specific UUID |
0x64 - sd_ble_uuid_decode
Function packet format
Frame format encoding of the sd_ble_uuid_decode packet.
The parameters are encoded in the following order:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | Operation Code | 0x64, see BLE_COMMON_SVCS |
| 1 byte | Length of Raw UUID | Shall be 2 or 16 bytes |
| 1 byte | Raw UUID Present | 0x00 - not present, 0x01 - present |
| 2 or 16 bytes | Raw UUID | Raw UUID to be decoded |
| 1 byte | UUID Result Struct Present | 0x00 - not present, 0x01 - present |
Response packet format
If a command was executed successfully, so that
'nRF Error Code' =
NRF_SUCCESS
, the nRF Error Code is followed by conditional data.
Frame format encoding of the sd_ble_uuid_decode response packet:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | Operation Code | 0x64, see BLE_COMMON_SVCS |
| 4 bytes | nRF Error Code | See sd_ble_uuid_decode |
| 1 byte | Conditional: ble_uuid_t Present | 0x00 - not present, 0x01 - present |
| 3 bytes | Conditional: Encoded UUID | Raw UUID decoded to ble_uuid_t |
ble_uuid_t is encoded in the following order:
| Length | Parameter | Value |
|---|---|---|
| 2 bytes | UUID | UUID Value |
| 1 byte | Type | UUID Type |
0x65 - sd_ble_uuid_encode
Function packet format
Frame format encoding of the sd_ble_uuid_encode packet.
The parameters are encoded in the following order:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | Operation Code | 0x65, see BLE_COMMON_SVCS |
| 1 byte | UUID Present | 0x00 - not present, 0x01 - present |
| 3 bytes | Conditional: UUID | See ble_uuid_t |
| 1 byte | Length Present | 0x00 - not present, 0x01 - present |
| 1 byte | UUID Result Buffer Present | 0x00 - not present, 0x01 - present |
As can also be seen inside Figure 1 , the 3 bytes inside ble_uuid_t are encoded as:
| Length | Parameter | Value |
|---|---|---|
| 2 bytes | UUID | UUID Value |
| 1 byte | Type | UUID Type |
Response packet format
If a command was executed successfully, so that
'nRF Error Code' =
NRF_SUCCESS
, the nRF Error Code is followed by conditional data.
Frame format encoding of the sd_ble_uuid_encode response packet:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | Operation Code | 0x65, see BLE_COMMON_SVCS |
| 4 bytes | nRF Error Code | See sd_ble_uuid_encode |
| 1 byte | Conditional: Length of encoded UUID | 2 or 16 |
| 2 or 16 bytes | Conditional: Encoded UUID | UUID value |
0x66 - sd_ble_version_get
Function packet format
Frame format encoding of the sd_ble_version_get packet.
The parameters are encoded in the following order:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | Operation Code | 0x66, see BLE_COMMON_SVCS |
| 1 byte | Version Present | 0x00 - not present, 0x01 - present |
Response packet format
If a command was executed successfully, so that
'nRF Error Code' =
NRF_SUCCESS
, the nRF Error Code is followed by conditional data.
Frame format encoding of the sd_ble_version_get response packet:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | Operation Code | 0x66, see BLE_COMMON_SVCS |
| 4 bytes | nRF Error Code | See sd_ble_version_get |
| 1 byte | Conditional: Version Number | See ble_version_t::version_number |
| 2 bytes | Conditional: Company ID | See ble_version_t::company_id |
| 2 bytes | Conditional: Subversion Number | See ble_version_t::subversion_number |
0x67 - sd_ble_user_mem_reply
Function packet format
Frame format encoding of the sd_ble_user_mem_reply packet.
The parameters are encoded in the following order:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | Operation Code | 0x67, see BLE_COMMON_SVCS |
| 2 bytes | Connection Handle | Handle value |
| 1 byte | Memory Block Structure Present | 0x00 - not present, 0x01 - present |
| 2 bytes | Conditional: Length | Length of memory block, see ble_user_mem_block_t::len |
| 1 byte | Conditional: Memory Block Present | 0x00 - not present, 0x01 - present |
- Note
- When sd_ble_user_mem_reply is called, a user memory context is created using app_ble_user_mem_context_create and conn_ble_user_mem_context_create . This context corresponds to a single connection indicated by the connection handle. The context is used to synchronize the user memory block between Connectivity and Application processor. It is released using app_ble_user_mem_context_destroy and conn_ble_user_mem_context_destroy when BLE_EVT_USER_MEM_RELEASE is received.
Response packet format
If a command was executed successfully, so that
'nRF Error Code' =
NRF_SUCCESS
, the nRF Error Code is followed by conditional data.
Frame format encoding of the sd_ble_user_mem_reply response packet:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | Operation Code | 0x67, see BLE_COMMON_SVCS |
| 4 bytes | nRF Error Code | See sd_ble_user_mem_reply |
0x68 - sd_ble_opt_set
Function packet format
Frame format encoding of the sd_ble_opt_set packet.
The parameters are encoded in the following order:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | Operation Code | 0x68, see BLE_COMMON_SVCS |
| 4 bytes | Option ID | See sd_ble_opt_set |
| 1 byte | Option present | 0x00 - not present, 0x01 - present |
| 1 ... 19 bytes | Conditional: Option | See ble_opt_t |
Encoding of BLE Option
The Option field (if present) is encoded depending on the Option ID field.
If
'Option ID' equals
BLE_GAP_OPT_CH_MAP
, Option is encoded as follows:
| Length | Parameter | Value |
|---|---|---|
| 2 bytes | Connection Handle | See ble_gap_opt_ch_map_t::conn_handle |
| 5 bytes | Channel Map | See ble_gap_opt_ch_map_t::ch_map [5] |
If
'Option ID' equals
BLE_GAP_OPT_LOCAL_CONN_LATENCY
, Option is encoded as follows:
| Length | Parameter | Value |
|---|---|---|
| 2 bytes | Connection Handle | See ble_gap_opt_local_conn_latency_t |
| 2 bytes | Requested Latency | See ble_gap_opt_local_conn_latency_t |
| 1 byte | Actual Latency present | 0x00 - not present, 0x01 - present |
| 2 bytes | Conditional: Actual Latency | See ble_gap_opt_local_conn_latency_t |
If
'Option ID' =
BLE_GAP_OPT_PASSKEY
, Option is encoded as follows:
| Length | Parameter | Value |
|---|---|---|
| 6 bytes | Passkey | See ble_gap_opt_passkey_t |
If
'Option ID' =
BLE_GAP_OPT_PRIVACY
, Option is encoded as follows:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | IRK present | 0x00 - not present, 0x01 - present |
| 16 bytes | Conditional: IRK | See ble_gap_opt_privacy_t |
| 2 bytes | Interval | See ble_gap_opt_privacy_t |
If
'Option ID' =
BLE_GAP_OPT_SCAN_REQ_REPORT
, Option is encoded as follows:
| Length | Parameter | Value |
|---|---|---|
| 1 byte |
Scan request report (bitfield):
- enable: 1 bit |
See ble_gap_opt_scan_req_report_t |
If
'GAP Option ID' =
BLE_GAP_OPT_COMPAT_MODE
, Option is encoded as follows:
| Length | Parameter | Value |
|---|---|---|
| 1 byte |
Compatibility mode (bitfield):
- mode_1_enable: 1 bit |
See ble_gap_opt_compat_mode_t |
If
'Option ID' =
BLE_COMMON_OPT_RADIO_CPU_MUTEX
, Option is encoded as follows:
| Length | Parameter | Value |
|---|---|---|
| 1 byte |
Radio CPU mutex (bitfield):
- enable: 1 bit |
See ble_common_opt_radio_cpu_mutex_t |
Response packet format
Frame encoding of the sd_ble_opt_set response packet:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | Operation Code | 0x68, see BLE_COMMON_SVCS |
| 4 bytes | nRF Error Code | See sd_ble_opt_set |
0x69 - sd_ble_opt_get
Function packet format
Frame format encoding of the sd_ble_opt_get packet.
The parameters are encoded in the following order:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | Operation Code | 0x69, see BLE_COMMON_SVCS |
| 4 bytes | Option ID | See sd_ble_opt_get |
| 1 byte | Option present | 0x00 - not present, 0x01 - present |
Response packet format
If a command was executed successfully, so that
'nRF Error Code' =
NRF_SUCCESS
, the nRF Error Code is followed by conditional data.
Frame encoding of the sd_ble_opt_get response packet:
| Length | Parameter | Value |
|---|---|---|
| 1 byte | Operation Code | 0x69, see BLE_COMMON_SVCS |
| 4 bytes | nRF Error Code | See sd_ble_opt_get |
| 4 bytes | Conditional: Option ID | See sd_ble_opt_get |
| 1 ... 19 bytes | Conditional: Option | See ble_opt_t |
Encoding of the conditional field "Option" is done in the same way as in the sd_ble_opt_set request packet, which is described in detail in section Encoding of BLE Option .