max_ble_hci.packet_codes

Contains definitions for BLE standard codes utilized in HCI packet creation/parsing.

class EventCode(value)[source]

Bases: Enum

Supported HCI Event Codes

AUTH_PAYLOAD_TIMEOUT_EXPIRED = 87

Authenticated payload timeout expired event.

COMMAND_COMPLETE = 14

Command complete event.

COMMAND_STATUS = 15

Command status event.

DATA_BUFF_OVERFLOW = 26

Data buffer overflow event.

DICON_COMPLETE = 5

Disconnection complete event.

ENC_CHANGE = 8

Encryption change event.

ENC_KEY_REFRESH_COMPLETE = 48

Encryption key refresh complete event.

HARDWARE_ERROR = 16

Hardware error event.

LE_META = 62

LE meta event.

NUM_COMPLETED_PACKETS = 19

Number of completed packets event.

READ_REMOTE_VERSION_INFO_COMPLETE = 12

Read remote version information complete event.

VENDOR_SPEC = 255

Vendor specific event.

class EventMask(value)[source]

Bases: Flag

Controller Event Mask

AUTHENTICATION_COMPLETE = 32
CONNECTION_COMPLETE = 4
CONNECTION_PACKET_TYPE_CHANGED = 268435456
CONNECTION_REQUEST = 8
DATA_BUFFER_OVERFLOW = 33554432
DISCONNECTION_COMPLETE = 16
ENCRYPTION_CHANGE = 128
ENCRYPTION_KEY_REFRESH_COMPLETE = 140737488355328
ENHANCED_FLUSH_COMPLETE = 72057594037927936
EXTENDED_INQUIRY_RESULT = 70368744177664
FLOW_SPECIFICATION_COMPLETE = 4294967296
FLUSH_OCCURRED = 65536
HARDWARE_ERROR = 32768
INQUIRY_COMPLETE = 1
INQUIRY_RESULT = 2
INQUIRY_RESULT_WITH_RSSI = 8589934592
IO_CAPABILITY_REQUEST = 281474976710656
IO_CAPABILITY_RESPONSE = 562949953421312
KEYPRESS_NOTIFICATION = 576460752303423488
LE_META = 2305843009213693952
LOOPBACK_COMMAND = 16777216
MAX_SLOTS_CHANGE = 67108864
MODE_CHANGE = 524288
PAGE_SCAN_REPETITION_MODE_CHANGE = 2147483648
PIN_CODE_REQUEST = 2097152
PREVIOUSLY_USED = 1073741824
QOS_SETUP_COMPLETE = 4096
QOS_VIOLATION = 536870912
READ_CLOCK_OFFSET_COMPLETE = 134217728
READ_REMOTE_EXTENDED_FEATURES_COMPLETE = 17179869184
READ_REMOTE_SUPPORTED_FEATURES_COMPLETE = 1024
READ_REMOTE_VERSION_INFORMATION_COMPLETE = 2048
REMOTE_HOST_SUPPORTED_FEATURES_NOTIFICATION = 1152921504606846976
REMOTE_NAME_REQUEST_COMPLETE = 64
REMOTE_OOB_DATA_REQUEST = 4503599627370496
ROLE_CHANGE = 131072
SIMPLE_PAIRING_COMPLETE = 9007199254740992
SNIFF_SUBRATING = 35184372088832
SYNCHRONOUS_CONNECTION_CHANGED = 17592186044416
SYNCHRONOUS_CONNECTION_COMPLETE = 8796093022208
USER_CONFIRMATION_REQUEST = 1125899906842624
USER_PASSKEY_NOTIFICATION = 288230376151711744
USER_PASSKEY_REQUEST = 2251799813685248
as_str_list() List[str][source]

Get list of event mask strings

Returns:

List of event mask strings

Return type:

List[str]

static from_int(mask: int) EventMask[source]

From integer mask to EventMask class

Parameters:

mask (int) – Interger mask.

Returns:

EventMask class

Return type:

EventMask

static get_full_mask()[source]

Get full event mask

Returns:

All events in event mask

Return type:

EventMask

class EventMaskLE(value)[source]

Bases: Flag

LE Event Mask

ADVERTISING_SET_TERMINATED = 131072
ADV_REPORT = 2
BIG_INFO_ADV_REPORT = 8589934592
BIG_SYNC_ESTABLISHED = 268435456
BIG_SYNC_LOST = 536870912
CHANNEL_SELECTION_ALGORITHM = 524288
CIS_ESTABLISHED = 16777216
CIS_REQUEST = 33554432
CONNECTIONLESS_IQ_REPORT = 1048576
CONNECTION_COMPLETE = 1
CONNECTION_IQ_REPORT = 2097152
CONN_UPDATE_COMPLETE = 4
CREATE_BIG_COMPLETE = 67108864
CTE_REQUEST_FAILED = 4194304
DATA_LEN_CHANGE = 64
DIRECTED_ADV_REPORT = 1024
ENHANCED_CONNECTION_COMPLETE = 512
EXTENDED_ADVERTISING_REPORT = 4096
GEN_DHKEY_CMPLT = 256
LTK_REQUEST = 16
PATH_LOSS_THRESHOLD = 2147483648
PERIODIC_ADV_REPORT = 16384
PERIODIC_ADV_SYNC_EST = 8192
PERIODIC_ADV_SYNC_LOST = 32768
PERIODIC_ADV_SYNC_XFER_LOST = 8388608
PHY_UPDATE_COMPLETE = 2048
READ_LOCAL_P256_PUB_KEY_CMPLT = 128
READ_REMOTE_FEAT_CMPLT = 8
REMOTE_CONN_PARAM_REQ = 32
REQUEST_PEER_SCA_COMPLETE = 1073741824
SCAN_REQUEST_RECEIVED = 262144
SCAN_TIMEOUT = 65536
SUBRATE_CHANGE = 17179869184
TERMINATE_BIG_COMPLETE = 134217728
TX_POWER_REPORTING = 4294967296
as_str_list() List[str][source]

List of flags as strings

Returns:

List of flags as string

Return type:

List[str]

static from_int(mask: int) EventMaskLE[source]

From int to EventMaskLE class

Parameters:

mask (int) – Integer mask

Returns:

EventMaskLE class

Return type:

EventMaskLE

static get_full_mask() EventMaskLE[source]

Get full LE Event mask

Returns:

Event mask with all events

Return type:

EventMaskLE

class EventMaskPage2(value)[source]

Bases: Flag

Controller Event Mask

AUTH_PAYLOAD_TIMEOUT_EXPIRED = 8388608
CONNECTIONLESS_PERIPH_BROADCAST = 131072
CONNECTIONLESS_PERIPH_BROADCAST_CH_MAP_CHANGE = 2097152
CONNECTIONLESS_PERIPH_TIMEOUT = 262144
ENC_CHANGED = 33554432
INQUIRY_RESP_NOTIF = 4194304
NUM_CMPLT_DAT_BLOCKS = 256
PERIPH_PAGE_RESP_TIMEOUT = 1048576
SAM_STATUS_CHANGED = 16777216
SYNC_TRAIN_CMPLT = 32768
SYNC_TRAIN_RECEIVED = 65536
TRIG_CLK_CAPTURE = 16384
TRUNCATED_PAGE_CMPLT = 524288
as_str_list() List[str][source]

Get list of event mask strings

Returns:

List of event mask strings

Return type:

List[str]

static from_int(mask: int) EventMaskPage2[source]

From integer mask to EventMask class

Parameters:

mask (int) – Interger mask.

Returns:

EventMask class

Return type:

EventMask

static get_full_mask() EventMaskPage2[source]

Get full event mask page 2

Returns:

Full event mask page 2

Return type:

EventMaskPage2

class EventSubcode(value)[source]

Bases: Enum

Supported LE Meta event subcodes.

ADVERTISING_REPORT = 2

Advertising report event.

ADVERTISING_SET_TERMINATED = 18

Advertising set terminated event.

BIGINFO_ADVERTISING_REPORT = 34

BIGInfo advertising report event.

BIG_SYNC_EST = 29

BIG sync established event.

BIG_SYNC_LOST = 30

BIG sync list event.

CHANNEL_SELECTION_ALGORITHM = 20

Channel selection algorithm event.

CIS_ESTABLISHED = 25

CIS established event.

CIS_REQUEST = 26

CIS request event.

CONNECTIONLESS_IQ_REPORT = 21

Connectionless IQ report event.

CONNECTION_CMPLT = 1

Connection complete event.

CONNECTION_IQ_REPORT = 22

Connection IQ report event.

CONNECTION_UPDATE = 3

Connection update complete event.

CREATE_BIG_CMPLT = 27

Create BIG complete event.

CTE_REQUEST_FAILED = 23

CTE request failed event.

DATA_LENGTH_CHANGE = 7

Data length change event.

DIRECTED_ADVERTISIING_REPORT = 11

Directed advertising report event.

ENHANCED_CONNECTION_CMPLT = 10

Enhanced connection complete event.

EXTENDED_ADVERTISING_REPORT = 13

Extended advertising report event.

GENERATE_DHKEY_CMPLT = 9

Generate DHKey complete event.

LTK_REQUEST = 5

Long term key request event.

PATH_LOSS_THRESHOLD = 32

Path loss threshold event.

PERIODIC_ADVERTISING_REPORT = 15

Periodic advertising report event.

PERIODIC_ADVERTISING_SYNC_ESTABLISHED = 14

Periodic advertising sync established event.

PERIODIC_ADVERTISING_SYNC_LOST = 16

Periodic advertising sync lost event.

PERIODIC_ADVERTISING_SYNC_TRANSER_RECEIVED = 24

Periodic advertising sync transfer received event.

PHY_UPDATE_CMPLT = 12

PHY update complete event.

READ_LOCAL_P256_PUB_KEY_CMPLT = 8

Read local P-256 public key complete event.

READ_REMOTE_FEATURES_COMPLETE = 4

Read remote feature complete event.

REMOTE_CONNECTION_PARAMETER_REQ = 6

Remote connection parameter request event.

REQUEST_PEER_SCA_CMPLT = 31

Request peeer SCA complete event.

SCAN_REQUEST_RECEIVED = 19

Scan request received event.

SCAN_TIMEOUT = 17

Scan timeout event.

TERMINATE_BIG_CMPLT = 28

Terminate BIG complete event.

TRANSMIT_POWER_REPORTING = 33

Transmit power reporting event.

class StatusCode(value)[source]

Bases: Enum

BLE-defined status codes.

DECODE_FAILURE = 255

ADI vendor specific, returns when the status is not properly set.

ERROR_CODE_ACL_CONN_ALREADY_EXISTS = 11

Connection already exists.

ERROR_CODE_ADV_TIMEOUT = 60

Advertising timeout.

ERROR_CODE_AUTH_FAILURE = 5

Authentication failure.

ERROR_CODE_CHAN_ASSESSMENT_NOT_SUPPORTED = 46

Channel classification not supported error.

ERROR_CODE_CMD_DISALLOWED = 12

Command disallowed.

ERROR_CODE_COARSE_CLK_ADJ_REJ = 64

Coarse cloack adjustment rejected but will try to adjust clock using clock dragging.

ERROR_CODE_CONN_ACCEPT_TIMEOUT_EXCEEDED = 16

Connection accept timeout exceeded.

ERROR_CODE_CONN_FAILED_TO_ESTABLISH = 62

Connection failed to be established / Synchronization timeout.

ERROR_CODE_CONN_LIMIT_EXCEEDED = 9

Connection limit exceeded.

ERROR_CODE_CONN_REJECTED_SECURITY_REASONS = 14

Connection rejected due to security reasons.

ERROR_CODE_CONN_REJECTED_UNACCEPTABLE_BDADDR = 15

Connection rejected dur to unacceptable BD address.

ERROR_CODE_CONN_REJ_LIMITED_RESOURCES = 13

connection rejection due to limited resources.

ERROR_CODE_CONN_REJ_NO_SUITABLE_CHAN_FOUND = 57

Connection rejected dur to no suitable channel found.

ERROR_CODE_CONN_TERM_BY_LOCAL_HOST = 22

Connection terminated by local host.

ERROR_CODE_CONN_TERM_MIC_FAILURE = 61

Connection terminated due to MIC failure.

ERROR_CODE_CONN_TIMEOUT = 8

Connection timeout.

ERROR_CODE_CONTROLLER_BUSY = 58

Controller busy.

ERROR_CODE_DIFFERENT_TRANSACTION_COLLISION = 42

Different transaction collision.

ERROR_CODE_ENCRYPT_MODE_NOT_ACCEPTABLE = 37

Encryption mode not acceptable.

ERROR_CODE_EXTENDED_INQUIRY_RESP_TOO_LARGE = 54

Extended inquiry response too large.

ERROR_CODE_HOST_BUSY_PAIRING = 56

Host busy - pairing.

ERROR_CODE_HW_FAILURE = 3

Hardware failure.

ERROR_CODE_INSTANT_PASSED = 40

Instance passed.

ERROR_CODE_INSUFFICIENT_SECURITY = 47

Insufficient security.

ERROR_CODE_INVALID_HCI_CMD_PARAMS = 18

Invalid HCI command parameters.

ERROR_CODE_INVALID_LMP_PARAMS = 30

Invalid LMP parameters / Invalid LL parameters.

ERROR_CODE_LIMIT_REACHED = 67

Limit reached.

Link key cannot be changed.

ERROR_CODE_LMP_ERR_TRANSACTION_COLLISION = 35

LMP error transaction collision / LL procedure collision.

ERROR_CODE_LMP_LL_RESP_TIMEOUT = 34

LMP response timeout / LL response timeout.

ERROR_CODE_LMP_PDU_NOT_ALLOWED = 36

LMP PDU not allowed.

ERROR_CODE_MAC_CONN_FAILED = 63

MAC connection failed [previously used].

ERROR_CODE_MEM_CAP_EXCEEDED = 7

Memory capacity exceeded.

ERROR_CODE_OP_CANCELLED_BY_HOST = 68

Operation cancelled by host.

ERROR_CODE_PAGE_TIMEOUT = 4

Page timeout.

ERROR_CODE_PAIRING_NOT_ALLOWED = 24

Pairing not allowed.

ERROR_CODE_PAIRING_WITH_UNIT_KEY_NOT_SUPPORTED = 41

Pairing with unit key not supported.

ERROR_CODE_PARAM_OUT_OF_MANDATORY_RANGE = 48

Parameter out of mandatory range.

ERROR_CODE_PIN_KEY_MISSING = 6

PIN or key missing.

ERROR_CODE_PKT_TOO_LONG = 69

Packet too long.

ERROR_CODE_QOS_REJ = 45

QoS rejected.

ERROR_CODE_QOS_UNACCEPTABLE_PARAM = 44

QoS unacceptable parameter.

ERROR_CODE_REMOTE_DEVICE_TERM_CONN_LOW_RESOURCES = 20

Remote device terminated connection due to low resources.

ERROR_CODE_REMOTE_DEVICE_TERM_CONN_POWER_OFF = 21

Remote device terminated connection due to power off.

ERROR_CODE_REMOTE_USER_TERM_CONN = 19

Remote user terminated connection.

ERROR_CODE_REPEATED_ATTEMPTS = 23

Repeated attempts.

ERROR_CODE_REQ_QOS_NOT_SUPPORTED = 39

Requested QoS not supported.

ERROR_CODE_RESERVED1 = 43

Reserved for future use.

ERROR_CODE_RESERVED2 = 49

Reserved for future use.

ERROR_CODE_RESERVED3 = 51

Reserved for future use.

ERROR_CODE_RESERVED_SLOT_VIOLATION = 52

Reserved slot violation.

ERROR_CODE_ROLE_CHANGE_NOT_ALLOWED = 33

Role change not allowed.

ERROR_CODE_ROLE_SWITCH_FAILED = 53

Role switch failed.

ERROR_CODE_ROLE_SWITCH_PENDING = 50

Role switch pending.

ERROR_CODE_SCO_AIR_MODE_REJ = 29

SCO air mode rejected.

ERROR_CODE_SCO_INTERVAL_REJ = 28

SCO interval rejected.

ERROR_CODE_SCO_OFFSET_REJ = 27

SCO offset rejected.

ERROR_CODE_SIMPLE_PAIRING_NOT_SUPPORTED_BY_HOST = 55

Secure simple pairing not supported by host.

ERROR_CODE_SYNCH_CONN_LIMIT_EXCEEDED = 10

Synchronous connection limit to a device exceeded.

ERROR_CODE_TYPE0_SUBMAP_NOT_DEF = 65

Type0 submap noot defined.

ERROR_CODE_UNACCEPTABLE_CONN_INTERVAL = 59

Unacceptable connection parameters.

ERROR_CODE_UNKNOWN_ADV_ID = 66

Unknown advertising identifier.

ERROR_CODE_UNKNOWN_CONN_ID = 2

Unknown connection identifier.

ERROR_CODE_UNKNOWN_HCI_CMD = 1

Unknown HCI command error.

ERROR_CODE_UNKNOWN_LMP_PDU = 25

Unknown LMP PDU.

ERROR_CODE_UNSPECIFIED_ERROR = 31

Unspecified error.

ERROR_CODE_UNSUPPORTED_FEATURE_PARAM_VALUE = 17

Unsupported feature or parameter value.

ERROR_CODE_UNSUPPORTED_LMP_PARAM_VAL = 32

Unsupported LMP parameter value / Unsupported LL parameter value.

ERROR_CODE_UNSUPPORTED_REMOTE_FEATURE = 26

Unsupported remote feature.

SUCCESS = 0

Success.