From: Szymon Janc <szymon.janc@codecoup.pl>
To: linux-bluetooth@vger.kernel.org
Cc: Szymon Janc <szymon.janc@codecoup.pl>
Subject: [PATCH 1/3] monitor: Decode LE Periodic Advertising Sync Established Event
Date: Wed, 22 May 2019 11:24:01 +0200 [thread overview]
Message-ID: <20190522092403.20927-1-szymon.janc@codecoup.pl> (raw)
> HCI Event: LE Meta Event (0x3e) plen 16 #976 [hci1] 607.133703
LE Periodic Advertising Sync Established (0x0e)
Status: Success (0x00)
Sync handle: 0
Advertising SID: 0x06
Advertiser address type: Random (0x01)
Advertiser address: FF:00:00:00:00:AA (Static)
Advertiser PHY: LE 1M (0x01)
Periodic advertising invteral: 50.00 msec (0x0028)
Advertiser clock accuracy: 0x04
---
monitor/bt.h | 12 ++++++++++++
monitor/packet.c | 21 ++++++++++++++++++++-
2 files changed, 32 insertions(+), 1 deletion(-)
diff --git a/monitor/bt.h b/monitor/bt.h
index d32d3a153..6494c928f 100644
--- a/monitor/bt.h
+++ b/monitor/bt.h
@@ -3091,6 +3091,18 @@ struct bt_hci_le_ext_adv_report {
uint8_t data[0];
} __attribute__ ((packed));
+#define BT_HCI_EVT_LE_PER_SYNC_ESTABLISHED 0x0e
+struct bt_hci_evt_le_per_sync_established {
+ uint8_t status;
+ uint16_t handle;
+ uint8_t sid;
+ uint8_t addr_type;
+ uint8_t addr[6];
+ uint8_t phy;
+ uint16_t interval;
+ uint8_t clock_accuracy;
+} __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 30d432316..3235ad004 100644
--- a/monitor/packet.c
+++ b/monitor/packet.c
@@ -9613,6 +9613,24 @@ static void le_ext_adv_report_evt(const void *data, uint8_t size)
}
}
+static void le_per_adv_sync(const void *data, uint8_t size)
+{
+ const struct bt_hci_evt_le_per_sync_established *evt = data;
+
+ print_status(evt->status);
+ print_field("Sync handle: %d", evt->handle);
+ if (evt->sid > 0x0f)
+ print_field("Advertising SID: Reserved (0x%2.2x)", evt->sid);
+ else
+ print_field("Advertising SID: 0x%2.2x", evt->sid);
+
+ print_peer_addr_type("Advertiser address type", evt->addr_type);
+ print_addr("Advertiser address", evt->addr, evt->addr_type);
+ print_le_phy("Advertiser PHY", evt->phy);
+ print_slot_125("Periodic advertising invteral", evt->interval);
+ print_field("Advertiser clock accuracy: 0x%2.2x", evt->clock_accuracy);
+}
+
static void le_adv_set_term_evt(const void *data, uint8_t size)
{
const struct bt_hci_evt_le_adv_set_term *evt = data;
@@ -9726,7 +9744,8 @@ static const struct subevent_data le_meta_event_table[] = {
le_phy_update_complete_evt, 5, true},
{ 0x0d, "LE Extended Advertising Report",
le_ext_adv_report_evt, 1, false},
- { 0x0e, "LE Periodic Advertising Sync Established" },
+ { 0x0e, "LE Periodic Advertising Sync Established",
+ le_per_adv_sync, 15, true },
{ 0x0f, "LE Periodic Advertising Report" },
{ 0x10, "LE Periodic Advertising Sync Lost" },
{ 0x11, "LE Scan Timeout" },
--
2.20.1
next reply other threads:[~2019-05-22 9:24 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-22 9:24 Szymon Janc [this message]
2019-05-22 9:24 ` [PATCH 2/3] monitor: Decode LE Periodic Advertising Report Event Szymon Janc
2019-05-22 9:24 ` [PATCH 3/3] monitor: Decode LE Periodic Advertising Sync Lost Event Szymon Janc
2019-05-24 8:50 ` [PATCH 1/3] monitor: Decode LE Periodic Advertising Sync Established Event Luiz Augusto von Dentz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190522092403.20927-1-szymon.janc@codecoup.pl \
--to=szymon.janc@codecoup.pl \
--cc=linux-bluetooth@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).