> HCI Event: LE Meta Event (0x3e) plen 3 LE Periodic Advertising Sync Lost (0x10) Sync handle: 0 --- monitor/bt.h | 5 +++++ monitor/packet.c | 10 +++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/monitor/bt.h b/monitor/bt.h index 8622ea4d4..8edc895e8 100644 --- a/monitor/bt.h +++ b/monitor/bt.h @@ -3114,6 +3114,11 @@ struct bt_hci_le_per_adv_report { uint8_t data[0]; } __attribute__ ((packed)); +#define BT_HCI_EVT_LE_PER_SYNC_LOST 0x10 +struct bt_hci_evt_le_per_sync_lost { + uint16_t handle; +} __attribute__ ((packed)); + #define BT_HCI_EVT_LE_ADV_SET_TERM 0x12 struct bt_hci_evt_le_adv_set_term { uint8_t status; diff --git a/monitor/packet.c b/monitor/packet.c index 8b2671edb..ab8bbdee5 100644 --- a/monitor/packet.c +++ b/monitor/packet.c @@ -9674,6 +9674,13 @@ static void le_per_adv_report_evt(const void *data, uint8_t size) packet_hexdump(evt->data, evt->data_len); } +static void le_per_adv_sync_lost(const void *data, uint8_t size) +{ + const struct bt_hci_evt_le_per_sync_lost *evt = data; + + print_field("Sync handle: %d", evt->handle); +} + static void le_adv_set_term_evt(const void *data, uint8_t size) { const struct bt_hci_evt_le_adv_set_term *evt = data; @@ -9791,7 +9798,8 @@ static const struct subevent_data le_meta_event_table[] = { le_per_adv_sync, 15, true }, { 0x0f, "LE Periodic Advertising Report", le_per_adv_report_evt, 7, false}, - { 0x10, "LE Periodic Advertising Sync Lost" }, + { 0x10, "LE Periodic Advertising Sync Lost", + le_per_adv_sync_lost, 2, true}, { 0x11, "LE Scan Timeout" }, { 0x12, "LE Advertising Set Terminated", le_adv_set_term_evt, 5, true}, -- 2.20.1