From c1d1ac5a3bf5510a75e21e3181499b0eac531d8a Mon Sep 17 00:00:00 2001 From: Matthias Ringwald Date: Thu, 11 Feb 2016 15:46:51 +0100 Subject: [PATCH] gap_le_advertisements: fix endianess for services with UUID128 in advertisement --- example/embedded/gap_le_advertisements.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/example/embedded/gap_le_advertisements.c b/example/embedded/gap_le_advertisements.c index 9a251fbe3..1976552ff 100644 --- a/example/embedded/gap_le_advertisements.c +++ b/example/embedded/gap_le_advertisements.c @@ -129,6 +129,8 @@ static char * flags[] = { /* LISTING_START(GAPLEAdvDataParsing): Parsing advertising data */ static void dump_advertisement_data(uint8_t * adv_data, uint8_t adv_size){ ad_context_t context; + bd_addr_t address; + uint8_t uuid_128[16]; for (ad_iterator_init(&context, adv_size, adv_data) ; ad_iterator_has_more(&context) ; ad_iterator_next(&context)){ uint8_t data_type = ad_iterator_get_data_type(&context); uint8_t size = ad_iterator_get_data_len(&context); @@ -166,7 +168,8 @@ static void dump_advertisement_data(uint8_t * adv_data, uint8_t adv_size){ case 0x06: // Incomplete List of 128-bit Service Class UUIDs case 0x07: // Complete List of 128-bit Service Class UUIDs case 0x15: // List of 128-bit Service Solicitation UUIDs - printUUID128(data); + swap128(data, uuid_128); + printUUID128(uuid_128); break; case 0x08: // Shortened Local Name case 0x09: // Complete Local Name @@ -185,7 +188,8 @@ static void dump_advertisement_data(uint8_t * adv_data, uint8_t adv_size){ break; case 0x17: // Public Target Address case 0x18: // Random Target Address - print_bd_addr(data); + bt_flip_addr(address, data); + print_bd_addr(address); break; case 0x19: // Appearance // https://developer.bluetooth.org/gatt/characteristics/Pages/CharacteristicViewer.aspx?u=org.bluetooth.characteristic.gap.appearance.xml