I was able to decipher the advertising UUID this weekend in the gatts_server example. Below is a copy of my notes and explanation for each hex value. I am currently working to understand how to send the characteristic description and value using the UUID format for Heart rate measurement....its proving to be difficult.
//This data is sent in the advertisment broadcast
//static uint8_t raw_adv_data[] = {
// 0x02, 0x01, 0x06, 0x0f, 0x09, 0x45, 0x53, 0x50, 0x5f, 0x47, 0x41, 0x54, 0x54, 0x53, 0x5f, 0x44,
// 0x45, 0x4d, 0x4f, 0x02, 0x0a, 0xeb, 0x05, 0x03, 0x04, 0x13, 0x03, 0x13
//};
// 0x02 is the length/number of positions next in the UUID string that will be used to communicate the <<FLAGS>> parameter and its value.
// (1) 0x01 is the <<FLAGS>> parameter per the GAP spec - see
https://www.bluetooth.com/specification ... ss-profile
// (2) 0x10 is the decimal value of the FLAG parameter - google "Supplement to Bluetooth Core Specification Section 1.3 FLAGS"
// This value can be set to match the binary value of the 8-bit FLAG parameter. The decimal value determines which bits are set. A decimal value fo 10 give me "General Discoverable Mode"
// and "Simulataneous LE and BR/EDR to Same Device Capable (COntroller)""
// 0x0f is the length/number of positions (fithteen) next in the UUID that will be used to communicate the <<COMPLETE LOCAL NAME>> parameter and its value.
// (1) 0x09 is the <<COMPLETE LOCAL NAME>> parameter per the spec - see
https://www.bluetooth.com/specification ... ss-profile
// The next 14 are hex values that spell the ESP_GATTS_DEMO:
// (2) 0x45='E'
// (3) 0x53='S'
// (4) 0x50='P'
// (5) 0x5f='-'
// (6) 0x47='G'
// (7) 0x41='A'
// (8) 0x54='T'
// (9) 0x54='T'
// (10) 0x53='S'
// (11) 0x5f='-'
// (12) 0x44='D'
// (13) 0x45='E'
// (14) 0x4d='M'
// (15) 0x4f='O'
// 0x02 is the length or umber of positions (two) next in the UUID that will be used to communicate the <TX POWER LEVEL>> parameter and its value.
// (1) 0x0a is the <<TX POWER LEVEL>> parameter per the GAP spec - see
https://www.bluetooth.com/specification ... ss-profile
// (2) 0xeb is the hex value that represents the reading of power. This value translates in -22 in RFConnector but I am not sure why
// 0x05 is the length or number of positions (three) next in the UUID that will be used to communicate the <<COMPLETE LIST OF 16-BIT SERVICE CLASS UUIDs>>
// parameter and its values.
// (1) 0x03 is the <<COMPLETE LIST OF 16-BIT SERVICE CLASS UUIDs>> parameter per the GAP spec - see
https://www.bluetooth.com/specification ... ss-profile
// (2) 0x04
// (3) 0x13
// (4) 0x03
// (5) 0x13
//