ST Expansion SW Team / libNDEF

Dependents:   mbed-os-nfc04a1 Wiagro-Lanza34-XDot

Embed: (wiki syntax)

« Back to documentation index

Ndef_Bluetooth_OOB_t Struct Reference

Ndef_Bluetooth_OOB_t Struct Reference
[Bluetooth OOB library]

Bluetooth Out-Of-Band data structure. More...

#include <lib_NDEF_Bluetooth.h>

Data Fields

Ndef_Bluetooth_type_t Type
 *Mandatory*: Bluetooth type (Br/Edr or LE).
char DeviceAddress [6]
 *Mandatory*: Device address.
uint32_t OptionalMask
 This Mask is used to keep track of EIRs present in the OOB: each bit index corresponds to a `Ndef_Bluetooth_Eir_Types_t` value.
uint8_t Flags
 Flags from BLUETOOTH_EIR_FLAGS.
uint16_t ClassUUID16 [0xff/2]
 UUIDs from BLUETOOTH_EIR_SERVICE_CLASS_UUID_PARTIAL_16 or BLUETOOTH_EIR_SERVICE_CLASS_UUID_COMPLETE_16.
uint32_t ClassUUID32 [0xff/4]
 UUIDs from BLUETOOTH_EIR_SERVICE_CLASS_UUID_PARTIAL_32 or BLUETOOTH_EIR_SERVICE_CLASS_UUID_COMPLETE_32.
uint32_t ClassUUID128 [0xff/16][4]
 UUIDs from BLUETOOTH_EIR_SERVICE_CLASS_UUID_PARTIAL_128 or BLUETOOTH_EIR_SERVICE_CLASS_UUID_COMPLETE_128.
uint8_t nbUUID16
 Number of UUIDs speficied in ClassUUID16.
uint8_t nbUUID32
 Number of UUIDs speficied in ClassUUID32.
uint8_t nbUUID128
 Number of UUIDs speficied in ClassUUID128.
char LocalName [0xff]
 Device local name from BLUETOOTH_EIR_SHORT_LOCAL_NAME or BLUETOOTH_EIR_COMPLETE_LOCAL_NAME.
uint8_t DeviceClass [3]
 Class of device from BLUETOOTH_EIR_DEVICE_CLASS.
uint8_t TxPowerLevel
 TX power Level from BLUETOOTH_EIR_TX_POWER_LEVEL.
uint8_t SMFlags
 Security Manager Flags from BLUETOOTH_EIR_SECURITY_MANAGER_FLAGS.
uint16_t SlaveConnIntervalRange [2]
 Slave Connection Interval Range from BLUETOOTH_EIR_SLAVE_CONNECTION_INTERVAL_RANGE.
uint16_t ServiceSolicitation16 [0xff/2]
 Service Solicitation from BLUETOOTH_EIR_SERVICE_SOLICITATION_16.
uint32_t ServiceSolicitation128 [0xff/16][4]
 Service Solicitation from BLUETOOTH_EIR_SERVICE_SOLICITATION_128.
uint8_t nbServiceSolicitation16
 Number of UUIDs in ServiceSolicitation16.
uint8_t nbServiceSolicitation128
 Number of UUIDs in ServiceSolicitation128.
uint8_t SimplePairingHash [16]
 *For Br/Edr only*: Simple Pairing Hash from BLUETOOTH_EIR_SIMPLE_PAIRING_HASH.
uint8_t SimplePairingRandomizer [16]
 *For Br/Edr only*: Simple Pairing Randomizer from BLUETOOTH_EIR_SIMPLE_PAIRING_RANDOMIZER.
Ndef_BLE_Address_Type_t DeviceAddressType
 *For LE only*, *Mandatory*: Address Type, MSB of the Device Address EIR (Public or Random)
Ndef_BLE_Role_t Role
 *For LE only*, *Mandatory*: LE Role from BLUETOOTH_EIR_BLE_ROLE and defined in `Ndef_BLE_Role_t`.
uint8_t SecureManagerTK [16]
 *For LE only*: Security Manager TK from BLUETOOTH_EIR_SECURITY_MANAGER_TK_VALUE.
uint16_t Appearance
 *For LE only*: Appearance from BLUETOOTH_EIR_APPEARANCE.
uint8_t nbUnknown
 Number of EIRs not parsed because of an unknown EIR type.
uint8_t nbServiceData
 Number of EIRs not parsed because being of type BLUETOOTH_EIR_SERVICE_DATA.
uint8_t nbManufacturerData
 Number of EIRs not parsed because being of type BLUETOOTH_EIR_MANUFACTURER_DATA.

Detailed Description

Bluetooth Out-Of-Band data structure.

Some fields are shared by both Br/Edr & LE Bluetooth, some are specific... No union used here to comply with the Cube coding guidelines, despite the fact that it could have save memory space.

Definition at line 141 of file lib_NDEF_Bluetooth.h.


Field Documentation

uint16_t Appearance

*For LE only*: Appearance from BLUETOOTH_EIR_APPEARANCE.

Definition at line 176 of file lib_NDEF_Bluetooth.h.

uint32_t ClassUUID128[0xff/16][4]

UUIDs from BLUETOOTH_EIR_SERVICE_CLASS_UUID_PARTIAL_128 or BLUETOOTH_EIR_SERVICE_CLASS_UUID_COMPLETE_128.

Definition at line 152 of file lib_NDEF_Bluetooth.h.

uint16_t ClassUUID16[0xff/2]

UUIDs from BLUETOOTH_EIR_SERVICE_CLASS_UUID_PARTIAL_16 or BLUETOOTH_EIR_SERVICE_CLASS_UUID_COMPLETE_16.

Definition at line 150 of file lib_NDEF_Bluetooth.h.

uint32_t ClassUUID32[0xff/4]

UUIDs from BLUETOOTH_EIR_SERVICE_CLASS_UUID_PARTIAL_32 or BLUETOOTH_EIR_SERVICE_CLASS_UUID_COMPLETE_32.

Definition at line 151 of file lib_NDEF_Bluetooth.h.

char DeviceAddress[6]

*Mandatory*: Device address.

For LE: 6 LSB of Device Address EIR.

Definition at line 145 of file lib_NDEF_Bluetooth.h.

*For LE only*, *Mandatory*: Address Type, MSB of the Device Address EIR (Public or Random)

Definition at line 172 of file lib_NDEF_Bluetooth.h.

uint8_t DeviceClass[3]

Class of device from BLUETOOTH_EIR_DEVICE_CLASS.

Definition at line 158 of file lib_NDEF_Bluetooth.h.

uint8_t Flags

Flags from BLUETOOTH_EIR_FLAGS.

Definition at line 148 of file lib_NDEF_Bluetooth.h.

char LocalName[0xff]

Device local name from BLUETOOTH_EIR_SHORT_LOCAL_NAME or BLUETOOTH_EIR_COMPLETE_LOCAL_NAME.

Definition at line 157 of file lib_NDEF_Bluetooth.h.

Number of EIRs not parsed because being of type BLUETOOTH_EIR_MANUFACTURER_DATA.

Definition at line 180 of file lib_NDEF_Bluetooth.h.

uint8_t nbServiceData

Number of EIRs not parsed because being of type BLUETOOTH_EIR_SERVICE_DATA.

Definition at line 179 of file lib_NDEF_Bluetooth.h.

Number of UUIDs in ServiceSolicitation128.

Definition at line 167 of file lib_NDEF_Bluetooth.h.

Number of UUIDs in ServiceSolicitation16.

Definition at line 166 of file lib_NDEF_Bluetooth.h.

uint8_t nbUnknown

Number of EIRs not parsed because of an unknown EIR type.

Definition at line 178 of file lib_NDEF_Bluetooth.h.

uint8_t nbUUID128

Number of UUIDs speficied in ClassUUID128.

Definition at line 155 of file lib_NDEF_Bluetooth.h.

uint8_t nbUUID16

Number of UUIDs speficied in ClassUUID16.

Definition at line 153 of file lib_NDEF_Bluetooth.h.

uint8_t nbUUID32

Number of UUIDs speficied in ClassUUID32.

Definition at line 154 of file lib_NDEF_Bluetooth.h.

uint32_t OptionalMask

This Mask is used to keep track of EIRs present in the OOB: each bit index corresponds to a `Ndef_Bluetooth_Eir_Types_t` value.

Definition at line 147 of file lib_NDEF_Bluetooth.h.

*For LE only*, *Mandatory*: LE Role from BLUETOOTH_EIR_BLE_ROLE and defined in `Ndef_BLE_Role_t`.

Definition at line 173 of file lib_NDEF_Bluetooth.h.

uint8_t SecureManagerTK[16]

*For LE only*: Security Manager TK from BLUETOOTH_EIR_SECURITY_MANAGER_TK_VALUE.

Definition at line 175 of file lib_NDEF_Bluetooth.h.

uint32_t ServiceSolicitation128[0xff/16][4]

Service Solicitation from BLUETOOTH_EIR_SERVICE_SOLICITATION_128.

Definition at line 165 of file lib_NDEF_Bluetooth.h.

uint16_t ServiceSolicitation16[0xff/2]

Service Solicitation from BLUETOOTH_EIR_SERVICE_SOLICITATION_16.

Definition at line 164 of file lib_NDEF_Bluetooth.h.

uint8_t SimplePairingHash[16]

*For Br/Edr only*: Simple Pairing Hash from BLUETOOTH_EIR_SIMPLE_PAIRING_HASH.

Definition at line 169 of file lib_NDEF_Bluetooth.h.

*For Br/Edr only*: Simple Pairing Randomizer from BLUETOOTH_EIR_SIMPLE_PAIRING_RANDOMIZER.

Definition at line 170 of file lib_NDEF_Bluetooth.h.

Slave Connection Interval Range from BLUETOOTH_EIR_SLAVE_CONNECTION_INTERVAL_RANGE.

Definition at line 163 of file lib_NDEF_Bluetooth.h.

uint8_t SMFlags

Security Manager Flags from BLUETOOTH_EIR_SECURITY_MANAGER_FLAGS.

Definition at line 162 of file lib_NDEF_Bluetooth.h.

uint8_t TxPowerLevel

TX power Level from BLUETOOTH_EIR_TX_POWER_LEVEL.

Definition at line 160 of file lib_NDEF_Bluetooth.h.

*Mandatory*: Bluetooth type (Br/Edr or LE).

Definition at line 144 of file lib_NDEF_Bluetooth.h.