diff --git a/monitor/bt.h b/monitor/bt.h
index d06101f..63a0443 100644
--- a/monitor/bt.h
+++ b/monitor/bt.h
#define BT_LMP_HOST_CONNECTION_REQ 51
+#define BT_LMP_SLOT_OFFSET 52
+struct bt_lmp_slot_offset {
+ uint16_t offset;
+ uint8_t bdaddr[6];
+} __attribute__ ((packed));
+
#define BT_LMP_PAGE_SCAN_MODE_REQ 54
struct bt_lmp_page_scan_mode_req {
uint8_t scheme;
diff --git a/monitor/lmp.c b/monitor/lmp.c
index bbb7a06..6e8070b 100644
--- a/monitor/lmp.c
+++ b/monitor/lmp.c
{
}
+static void slot_offset(const void *data, uint8_t size)
+{
+ const struct bt_lmp_slot_offset *pdu = data;
+
+ print_field("Offset: %u usec", le16_to_cpu(pdu->offset));
+ packet_print_addr("Address", pdu->bdaddr, false);
+}
+
static void page_scan_mode_req(const void *data, uint8_t size)
{
const struct bt_lmp_page_scan_mode_req *pdu = data;
{ 49, "LMP_setup_complete", setup_complete, 0, true },
{ 50, "LMP_use_semi_permanent_key", use_semi_permanent_key, 0, true },
{ 51, "LMP_host_connection_req", host_connection_req, 0, true },
- { 52, "LMP_slot_offset" },
+ { 52, "LMP_slot_offset", slot_offset, 8, true },
{ 53, "LMP_page_mode_req" },
{ 54, "LMP_page_scan_mode_req", page_scan_mode_req, 2, true },
{ 55, "LMP_supervision_timeout" },