Mistake on this page?
Report an issue in GitHub or email us
Data Structures | Typedefs | Enumerations | Functions | Variables
ble Namespace Reference

Entry namespace for all BLE API definitions. More...

Data Structures

struct  address_t
 MAC address data type. More...
 
struct  adv_data_appearance_t
 Enumeration of values for the adv_data_type_t::APPEARANCE. More...
 
struct  adv_data_flags_t
 Set of advertising flags. More...
 
struct  adv_data_type_t
 
struct  advertising_channel_map_t
 Channel map which can be used during advertising. More...
 
struct  advertising_data_t
 Hold advertising data. More...
 
struct  advertising_event_properties_t
 Properties of an advertising event. More...
 
struct  advertising_fragment_description_t
 Description of an advertising fragment. More...
 
class  AdvertisingDataBuilder
 Build advertising data. More...
 
class  AdvertisingDataParser
 Parse and iterate over advertising data. More...
 
class  AdvertisingDataSimpleBuilder
 Build advertising data. More...
 
struct  AdvertisingEndEvent
 Event produced when advertising ends. More...
 
class  AdvertisingParameters
 Parameters defining the advertising process. More...
 
struct  AdvertisingReportEvent
 Event generated when an advertising packet is seen during passive scanning or a scan response is received during active scanning. More...
 
struct  att_security_requirement_t
 Security requirement that can be attached to an attribute operation. More...
 
struct  AttErrorResponse
 Response to a request which can't be performed. More...
 
struct  AttExchangeMTUResponse
 The Exchange MTU Request is used by the client to inform the server of the client’s maximum receive MTU size and request the server to respond with its maximum rx MTU size. More...
 
struct  AttExecuteWriteResponse
 The Execute Write Response is sent in response to a received Execute Write Request. More...
 
struct  AttFindByTypeValueResponse
 Find by type value responses are sent in response to find by type value request. More...
 
struct  AttFindInformationResponse
 The Find Information Response is sent in reply to a received Find Information Request and contains information about this server. More...
 
struct  AttHandleValueIndication
 Indication of an attribute's value sent by the server. More...
 
struct  AttHandleValueNotification
 Notification of an attribute's value sent by the server. More...
 
struct  AttPrepareWriteResponse
 Response to a Prepare Write Request. More...
 
struct  AttReadBlobResponse
 The Read Blob Response is sent in reply to a received Read Blob Request and contains part of the value of the attribute that has been read. More...
 
struct  AttReadByGroupTypeResponse
 The Read By Group Type Response is sent in reply to a received Read By Group Type Request and contains the handles and values of the attributes that have been read. More...
 
struct  AttReadByTypeResponse
 Response to a Read By Type request. More...
 
struct  AttReadMultipleResponse
 Response to a Read Multiple Request. More...
 
struct  AttReadResponse
 The read response is sent in reply to a received Read Request and contains the value of the attribute that has been read. More...
 
struct  attribute_handle_range_t
 Inclusive range of GATT attributes handles. More...
 
struct  AttributeOpcode
 Operation code defined for attribute operations. More...
 
struct  AttServerMessage
 Base class for Attribute Server Message. More...
 
struct  AttWriteResponse
 The Write Response is sent in reply to a valid Write Request and acknowledges that the attribute has been successfully written. More...
 
class  AuthenticationMask
 Authentication mask as required by the SMP with convenient setters and getters, use value() to get the octet you can use directly in the PDU. More...
 
class  BLE
 Abstract away BLE-capable radio transceivers or SOCs. More...
 
class  BLEInstanceBase
 Private interface used to implement the BLE class. More...
 
struct  Bounded
 Restrict values of an integer type to a defined range. More...
 
struct  buf_pool_desc_t
 Contain description of the memory pool used by the Cordio stack. More...
 
struct  byte_array_t
 Model fixed size array values. More...
 
struct  coded_symbol_per_bit_t
 Type describing the number of symbols per bit in le coded PHY. More...
 
struct  connection_peer_address_type_t
 Peer address type used during connection initiating. More...
 
struct  ConnectionCompleteEvent
 Event generated when a connection initiation ends (successfully or not). More...
 
class  ConnectionParameters
 Parameters defining the connection initiation process. More...
 
struct  ConnectionParametersUpdateCompleteEvent
 Event received when connection parameters have been updated. More...
 
struct  controller_supported_features_t
 Features supported by the controller. More...
 
class  CordioHCIDriver
 Base class of the HCI driver use by the BLE port of the Cordio stack. More...
 
class  CordioHCITransportDriver
 Base class of the HCI transport driver. More...
 
struct  direct_address_type_t
 
struct  DisconnectionCompleteEvent
 Event produced when a disconnection is complete. More...
 
struct  Duration
 Model BLE durations. More...
 
class  Gap
 Define device discovery, connection and link management procedures. More...
 
struct  GapAdvertisingReportEvent
 Report advertising from one or more LE device. More...
 
struct  GapConnectionCompleteEvent
 Indicate to both ends (slave or master) the end of the connection process. More...
 
struct  GapConnectionUpdateEvent
 Indicates the connection update process completion. More...
 
struct  GapDisconnectionCompleteEvent
 Indicate the end of a disconnection process. More...
 
struct  GapEvent
 Base class of a PalGap Event. More...
 
struct  GapEventType
 Enumeration of GAP event types. More...
 
struct  GapRemoteConnectionParameterRequestEvent
 indicate a request from the peer to change the connection parameters. More...
 
struct  GapUnexpectedErrorEvent
 Model an unexpected error that happen during a gap procedure. More...
 
class  GattClient
 Define procedures required for interacting with a distant GATT server. More...
 
class  GattServer
 Construct and operates a GATT server. More...
 
class  H4TransportDriver
 Implementation of the H4 driver. More...
 
struct  hci_error_code_t
 HCI Error codes. More...
 
struct  io_capability_t
 Type that describe the IO capability of a device; it is used during Pairing Feature exchange. More...
 
class  KeyDistribution
 Key distribution as required by the SMP with convenient setters and getters, use value() to get the octet you can use directly in the PDU. More...
 
struct  link_encryption_t
 Type that describes link's encryption state. More...
 
class  MemorySecurityDb
 Naive memory implementation for verification. More...
 
class  NRFCordioHCIDriver
 Nordic port of CordioHCIDriver. More...
 
class  NRFCordioHCITransportDriver
 Nordic port of CordioHCITransportDriver. More...
 
struct  pairing_failure_t
 Type that describe a pairing failure. More...
 
class  PalAttClient
 
class  PalConnectionMonitor
 Implemented by classes that need to be notified of connection changes. More...
 
class  PalConnectionMonitorEventHandler
 Implemented by classes that are reacting to connection changes. More...
 
class  PalEventQueue
 Simple implementation of the EventQueue. More...
 
class  PalGap
 Implementation of ble::PalGap for the Cordio stack. More...
 
struct  PalGapEventHandler
 
class  PalGattClient
 Adapt a PalAttClient into a PalGattClient. More...
 
struct  PalGattClientEventHandler
 Definition of the general handler of PalGattClient related events. More...
 
class  PalGenericAccessService
 Implementation of ble::PalGenericAccessService for the Cordio stack. More...
 
class  PalSecurityManager
 
class  PalSecurityManagerEventHandler
 Handle events generated by ble::PalSecurityManager. More...
 
class  PalSigningMonitor
 
class  PalSigningMonitorEventHandler
 Implemented by classes that are reacting to signing events. More...
 
struct  PalSimpleAttFindByTypeValueResponse
 Simple implementation of ble::AttFindByTypeValueResponse. More...
 
struct  PalSimpleAttFindInformationResponse
 Simple implementation of ble::AttFindInformationResponse. More...
 
struct  PalSimpleAttReadByGroupTypeResponse
 Simple implementation of ble::AttReadByGroupTypeResponse. More...
 
struct  PalSimpleAttReadByTypeResponse
 Simple implementation of ble::AttReadByTypeResponse. More...
 
class  PasskeyAscii
 Passkey stored as a string of digits. More...
 
struct  peer_address_type_t
 Type that describes a peer device address type. More...
 
struct  PeriodicAdvertisingReportEvent
 Event generated when periodic advertising packet is received. More...
 
struct  PeriodicAdvertisingSyncEstablishedEvent
 Event generated when you first receive a periodic advertisement. More...
 
struct  PeriodicAdvertisingSyncLoss
 Event generated when periodic advertising sync is lost. More...
 
class  phy_set_t
 Type that describe a set of PHY(sical) transports. More...
 
struct  phy_t
 Type that describes a bluetooth PHY(sical) transport. More...
 
struct  random_address_type_t
 Type that describes a random device address type. More...
 
struct  received_advertising_type_t
 Type of advertising the LE subsystem can use when it advertise. More...
 
struct  SafeEnum
 Helper class used to define safe enumerations. More...
 
class  ScanParameters
 Parameters defining the scan process. More...
 
struct  ScanRequestEvent
 Event produced when a peer requests a scan response from the advertiser. More...
 
struct  ScanTimeoutEvent
 Event generated when scan times out. More...
 
class  SecurityDb
 SecurityDb holds the state for active connections and bonded devices. More...
 
struct  SecurityDistributionFlags_t
 Security flags associated with a bond. More...
 
struct  SecurityEntryIdentity_t
 Data for resolving random resolvable addresses. More...
 
struct  SecurityEntryKeys_t
 Long Term Key and data used to identify it. More...
 
struct  SecurityEntrySigning_t
 CSRK and sign counter used to verify messages. More...
 
class  SecurityManager
 Overview. More...
 
struct  UpdateConnectionParametersRequestEvent
 Event received when a peer wants to change the connection parameters. More...
 
struct  whitelist_address_type_t
 Address type used in whitelist operations. More...
 
struct  whitelist_t
 Representation of a whitelist of addresses. More...
 

Typedefs

typedef uintptr_t connection_handle_t
 Opaque reference to a connection. More...
 
typedef uint16_t attribute_handle_t
 Reference to an attribute in a GATT database. More...
 
typedef uint32_t passkey_num_t
 Passkey stored as a number. More...
 
typedef byte_array_t< 16 > irk_t
 128 bit keys used by paired devices More...
 
typedef byte_array_t< 2 > ediv_t
 Used to identify LTK for legacy pairing connections. More...
 
typedef byte_array_t< 16 > oob_tk_t
 Out of band data exchanged during pairing. More...
 
typedef byte_array_t< 16 > oob_lesc_value_t
 secure connections oob random 128 value More...
 
typedef byte_array_t< 16 > oob_confirm_t
 secure connections oob confirmation value More...
 
typedef byte_array_t< 16 > encryption_block_t
 data to be encrypted More...
 
typedef byte_array_t< 32 > public_key_coord_t
 public key coordinate, two of which define the public key More...
 
typedef byte_array_t< 32 > dhkey_t
 Diffie-Hellman key. More...
 
typedef uint32_t sign_count_t
 counter for signed data writes done by GattClient More...
 
typedef Duration< uint32_t, 1 > microsecond_t
 Type that represents micro seconds. More...
 
typedef Duration< uint32_t, 1000 *microsecond_t::TIME_BASEmillisecond_t
 Type that represents milliseconds. More...
 
typedef Duration< uint32_t, 1000 *millisecond_t::TIME_BASEsecond_t
 Type that represents seconds. More...
 
typedef ble::connection_role_t connection_role_t
 
typedef uint32_t advertising_interval_t
 Describe advertising interval for undirected and low duty cycle directed advertising. More...
 
typedef int8_t advertising_power_t
 Describe the advertising power. More...
 
typedef uint16_t periodic_advertising_interval_t
 Describe advertising interval for periodic advertising. More...
 
typedef ble::periodic_sync_handle_t sync_handle_t
 Identify a periodic advertising sync. More...
 
typedef FunctionPointerWithContext< const GattReadCallbackParams * > ReadCallback_t
 Attribute read event handler. More...
 
typedef CallChainOfFunctionPointersWithContext< const GattReadCallbackParams * > ReadCallbackChain_t
 Callchain of attribute read event handlers. More...
 
typedef FunctionPointerWithContext< const GattWriteCallbackParams * > WriteCallback_t
 Attribute write event handler. More...
 
typedef CallChainOfFunctionPointersWithContext< const GattWriteCallbackParams * > WriteCallbackChain_t
 Callchain of attribute write event handlers. More...
 

Enumerations

Functions

static attribute_handle_range_t attribute_handle_range (attribute_handle_t begin, attribute_handle_t end)
 Construct an attribute_handle_range_t from its first and last attribute handle. More...
 
template<class byte_array_class >
bool is_all_zeros (byte_array_class &byte_array)
 Returns true if every byte is equal to zero. More...
 
template<class byte_array_class >
void set_all_zeros (byte_array_class &byte_array)
 Zero out all bytes. More...
 
template<size_t Size>
Span< uint8_t, Size > make_Span (byte_array_t< Size > &src)
 Construct a fixed size Span from a byte_array_t. More...
 
template<size_t Size>
Span< const uint8_t, Size > make_const_Span (const byte_array_t< Size > &src)
 Construct a fixed size Span from a const byte_array_t. More...
 

Variables

static const advertising_handle_t LEGACY_ADVERTISING_HANDLE = 0x00
 Special advertising set handle used for the legacy advertising set. More...
 
static const advertising_handle_t INVALID_ADVERTISING_HANDLE = 0xFF
 Special advertising set handle used as return or parameter to signify an invalid handle. More...
 
static const uint8_t LEGACY_ADVERTISING_MAX_SIZE = 0x1F
 Maximum advertising data length that can fit in a legacy PDU. More...
 

Detailed Description

Entry namespace for all BLE API definitions.

Typedef Documentation

typedef uint32_t advertising_interval_t

Describe advertising interval for undirected and low duty cycle directed advertising.

The value is not expressed in seconds; one unit is equal to 0.625ms.

The value range is comprised between 0x20 and 0xFFFFFF which translate into 20ms to 10,485.759375s .

Definition at line 525 of file GapTypes.h.

typedef int8_t advertising_power_t

Describe the advertising power.

Value comprised between -127 and +126 are considered power values in dBm while the special value 127 can be used as a wildcard to indicates that the host has no preference or if the power information is not available.

Definition at line 534 of file GapTypes.h.

typedef uint16_t attribute_handle_t

Reference to an attribute in a GATT database.

Definition at line 94 of file BLETypes.h.

typedef uintptr_t connection_handle_t

Opaque reference to a connection.

Internally a connection handle is an unsigned integer capable of holding a pointer.

The real type (either a pointer to an object or an integer) is opaque for users and platform dependent.

Definition at line 89 of file BLETypes.h.

See also
ble::connection_role_t

Definition at line 363 of file GapTypes.h.

typedef byte_array_t<32> dhkey_t

Diffie-Hellman key.

Definition at line 471 of file BLETypes.h.

typedef byte_array_t<2> ediv_t

Used to identify LTK for legacy pairing connections.

Definition at line 456 of file BLETypes.h.

data to be encrypted

Definition at line 465 of file BLETypes.h.

typedef byte_array_t<16> irk_t

128 bit keys used by paired devices

Definition at line 451 of file BLETypes.h.

typedef Duration<uint32_t, 1> microsecond_t

Type that represents micro seconds.

Definition at line 297 of file Duration.h.

typedef Duration<uint32_t, 1000 * microsecond_t::TIME_BASE> millisecond_t

Type that represents milliseconds.

Definition at line 302 of file Duration.h.

secure connections oob confirmation value

Definition at line 462 of file BLETypes.h.

secure connections oob random 128 value

Definition at line 461 of file BLETypes.h.

typedef byte_array_t<16> oob_tk_t

Out of band data exchanged during pairing.

legacy pairing TK

Definition at line 460 of file BLETypes.h.

typedef uint32_t passkey_num_t

Passkey stored as a number.

Definition at line 238 of file BLETypes.h.

Describe advertising interval for periodic advertising.

The value is not expressed in seconds; one unit is equal to 1.25ms.

The value range is comprised between 0x6 and 0xFFFF which translate into 7.5ms to 81.91875 s .

Definition at line 544 of file GapTypes.h.

public key coordinate, two of which define the public key

Definition at line 468 of file BLETypes.h.

Attribute read event handler.

See also
GattClient::onDataRead().

Definition at line 394 of file GattCallbackParamTypes.h.

Callchain of attribute read event handlers.

Definition at line 399 of file GattCallbackParamTypes.h.

typedef Duration<uint32_t, 1000 * millisecond_t::TIME_BASE> second_t

Type that represents seconds.

Definition at line 307 of file Duration.h.

typedef uint32_t sign_count_t

counter for signed data writes done by GattClient

Definition at line 474 of file BLETypes.h.

typedef ble::periodic_sync_handle_t sync_handle_t

Identify a periodic advertising sync.

Definition at line 606 of file GapTypes.h.

Attribute write event handler.

See also
GattClient::onDataWrite().

Definition at line 406 of file GattCallbackParamTypes.h.

Callchain of attribute write event handlers.

See also
GattClient::onDataWrite().

Definition at line 413 of file GattCallbackParamTypes.h.

Enumeration Type Documentation

enum Keypress_t

events sent and received when passkey is being entered

Enumerator
KEYPRESS_STARTED 

Passkey entry started.

KEYPRESS_ENTERED 

Passkey digit entered.

KEYPRESS_ERASED 

Passkey digit erased.

KEYPRESS_CLEARED 

Passkey cleared.

KEYPRESS_COMPLETED 

Passkey entry completed.

Definition at line 905 of file BLETypes.h.

Function Documentation

static attribute_handle_range_t ble::attribute_handle_range ( attribute_handle_t  begin,
attribute_handle_t  end 
)
static

Construct an attribute_handle_range_t from its first and last attribute handle.

Parameters
[in]beginHandle at the beginning of the range.
[in]endHandle at the end of the range.
Returns
An instance of attribute_handle_range_t where attribute_handle_range_t::begin is equal to begin and attribute_handle_range_t::end is equal to end.
Note
This function is defined instead of a constructor to keep "POD-ness" of attribute_handle_range_t.

Definition at line 156 of file BLETypes.h.

bool ble::is_all_zeros ( byte_array_class &  byte_array)

Returns true if every byte is equal to zero.

Definition at line 315 of file BLETypes.h.

Span<const uint8_t, Size> ble::make_const_Span ( const byte_array_t< Size > &  src)

Construct a fixed size Span from a const byte_array_t.

Parameters
srcbyte_array_t to create a Span from.
Returns
A Span to src.

Definition at line 445 of file BLETypes.h.

Span<uint8_t, Size> ble::make_Span ( byte_array_t< Size > &  src)

Construct a fixed size Span from a byte_array_t.

Parameters
srcbyte_array_t to create a Span from.
Returns
A Span to src.

Definition at line 432 of file BLETypes.h.

void ble::set_all_zeros ( byte_array_class &  byte_array)

Zero out all bytes.

Definition at line 329 of file BLETypes.h.

Variable Documentation

const advertising_handle_t INVALID_ADVERTISING_HANDLE = 0xFF
static

Special advertising set handle used as return or parameter to signify an invalid handle.

Definition at line 47 of file BLETypes.h.

const advertising_handle_t LEGACY_ADVERTISING_HANDLE = 0x00
static

Special advertising set handle used for the legacy advertising set.

Definition at line 44 of file BLETypes.h.

const uint8_t LEGACY_ADVERTISING_MAX_SIZE = 0x1F
static

Maximum advertising data length that can fit in a legacy PDU.

Definition at line 50 of file BLETypes.h.

Important Information for this Arm website

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies. If you are not happy with the use of these cookies, please review our Cookie Policy to learn how they can be disabled. By disabling cookies, some features of the site will not work.