Skip to main content
Associate III
July 10, 2026
Question

No BLE ADV Sent Out in the Zephyr TMAP peripheral project

  • July 10, 2026
  • 0 replies
  • 12 views

HI,

   I am using stm32wba65i_dk1 board to develop my ble audio application.  I choose zephyr as my software platform and tmap as ble audio profile.

 

However, when the TMAP application initiates advertising, the Pixel 9 cannot detect the device name broadcast by the TMAP peripheral. I also captured over-the-air packets using the professional BLE sniffer X240, which confirmed that no BLE advertising packets were transmitted from the STM32WBA65I_DK1 board.

I enabled logging for all HCI commands sent by the HCI Core and all received HCI events, yet no obvious anomalies were observed in the HCI logs. I am unable to identify the root cause of this issue.

 

# 1. LE Set Extended Advertising Parameters [v1]
Send Command:
[00:00:03.106,000] <dbg> bt_hci_core: bt_hci_cmd_send_sync: buf 0x20010c18 opcode 0x2036 len 25
[00:00:03.110,000] <dbg> bt_hci_core: bt_hci_cmd_send_sync: cmd params
00 01 00 20 00 00 30 00 00 07 01 00 00 00 00 00
00 00 00 7f 01 00 02 00 00

00 // Advertising_Handle: 0x00

01 00 // Advertising_Event_Properties: 0x0001 (little-endian)
// Bit0 = 1: Connectable advertising
// Bit1 = 0: Scannable advertising disabled
// Bit2 = 0: Directed advertising disabled
// Bit3 = 0: High duty cycle directed connectable advertising disabled
// Bit4 = 0: Legacy advertising PDUs disabled (extended advertising)
// Bit5 = 0: Anonymous advertising disabled
// Bit6 = 0: Include TX Power in advertising PDU disabled
// Bit7..15 = 0: reserved

20 00 00 // Primary_Advertising_Interval_Min: 0x000020
// 32 * 0.625 ms = 20.000 ms
30 00 00 // Primary_Advertising_Interval_Max: 0x000030
// 48 * 0.625 ms = 30.000 ms

07 // Primary_Advertising_Channel_Map: 0x07
// Bit0 = 1: Channel 37 enabled
// Bit1 = 1: Channel 38 enabled
// Bit2 = 1: Channel 39 enabled
// Bit3..7 = 0: RFU

01 // Own_Address_Type: 0x01 (Random Device Address)
00 // Peer_Address_Type: 0x00 (Public Device Address; ignored when not directed)
00 00 00 00 00 00 // Peer_Address: 00:00:00:00:00:00 (ignored when not directed)

00 // Advertising_Filter_Policy: 0x00
// Process scan and connection requests from all devices
7f // Advertising_TX_Power: 0x7F (Host has no preference)
01 // Primary_Advertising_PHY: 0x01 (LE 1M PHY)
00 // Secondary_Advertising_Max_Skip: 0x00 (no skip)
02 // Secondary_Advertising_PHY: 0x02 (LE 2M PHY)
00 // Advertising_SID: 0x00
00 // Scan_Request_Notification_Enable: 0x00 (disabled)

Recv Command Complete:
[00:00:03.144,000] <dbg> bt_hci_core: bt_hci_cmd_send_sync: rsp 0x20010c18 opcode 0x2036 len 2
[00:00:03.146,000] <dbg> bt_hci_core: bt_hci_cmd_send_sync: rsp data
00 0a

00 // Status: 0x00 (Success)
0a // Selected_TX_Power: +10 dBm (signed int8)

# 2. LE Set Advertising Set Random Address
Send Command:
[00:00:03.152,000] <dbg> bt_hci_core: bt_hci_cmd_send_sync: buf 0x20010c18 opcode 0x2035 len 7
[00:00:03.154,000] <dbg> bt_hci_core: bt_hci_cmd_send_sync: cmd params
00 71 ba b7 45 73 67

00 // Advertising_Handle: 0x00
71 ba b7 45 73 67 // Random_Address (LSB first in payload)
// Address: 67:73:45:B7:BA:71

Recv Command Complete:
[00:00:03.191,000] <dbg> bt_hci_core: bt_hci_cmd_send_sync: rsp 0x20010c18 opcode 0x2035 len 1
[00:00:03.194,000] <dbg> bt_hci_core: bt_hci_cmd_send_sync: rsp data
00

00 // Status: 0x00 (Success)

# 3. LE Set Extended Advertising Data [v1]
Send Command:
[00:00:03.197,000] <dbg> bt_hci_core: bt_hci_cmd_send_sync: buf 0x20010c18 opcode 0x2037 len 57
[00:00:03.205,000] <dbg> bt_hci_core: bt_hci_cmd_send_sync: cmd params
00 03 01 35 02 01 06 03 19 41 09 07 02 4e 18 53
18 55 18 05 16 55 18 0a 00 04 16 53 18 01 09 16
4e 18 01 1f 00 1f 00 10 09 54 4d 41 50 20 50 65
72 69 70 68 65 72 61 6c 00

00 // Advertising_Handle: 0x00
03 // Operation: 0x03 (Complete extended advertising data)
01 // Fragment_Preference: 0x01 (Controller should not fragment)
35 // Advertising_Data_Length: 0x35 (53 bytes)

02 01 06 // AD Structure #1
// Len=0x02, Type=0x01 (Flags), Data=0x06
// LE General Discoverable Mode + BR/EDR Not Supported

03 19 41 09 // AD Structure #2
// Len=0x03, Type=0x19 (Appearance), Data=0x0941 (little-endian)

07 02 4e 18 53 18 55 18 // AD Structure #3
// Len=0x07, Type=0x02 (Incomplete List of 16-bit Service UUIDs)
// UUIDs: 0x184E(Audio Stream Control Service), 0x1853(Common Audio Service), 0x1855(Telephony and Media Audio Profile Service)

05 16 55 18 0a 00 // AD Structure #4
// Len=0x05, Type=0x16 (Service Data - 16-bit UUID)
// UUID=0x1855 (Telephony and Media Audio Profile Service)
// Service Data=0x000A (TMAP Role, little-endian)
// Bit1 = 1: Call Terminal (CT)
// Bit3 = 1: Unicast Media Receiver (UMR / Unicast Sink)

04 16 53 18 01 // AD Structure #5
// Len=0x04, Type=0x16 (Service Data - 16-bit UUID)
// UUID=0x1853 (Common Audio Service)
// Service Data=0x01 (CAP Announcement, little-endian)
// Bit0 = 1: CAP Announcement targetted advertising supported

09 16 4e 18 01 1f 00 1f 00 // AD Structure #6
// Len=0x09, Type=0x16 (Service Data - 16-bit UUID)
// UUID=0x184E (Audio Stream Control Service)
// Service Data=01 1F 00 1F 00
// 0x01: Announcement Type / ASE context flag
// 0x001F: Sink Audio Contexts bitmask
// 0x001F: Source Audio Contexts bitmask

10 09 54 4d 41 50 20 50 65 72 69 70 68 65 72 61 6c
// AD Structure #7
// Len=0x10, Type=0x09 (Complete Local Name)
// "TMAP Peripheral"

Recv Command Complete:
[00:00:03.238,000] <dbg> bt_hci_core: bt_hci_cmd_send_sync: rsp 0x20010c18 opcode 0x2037 len 1
[00:00:03.240,000] <dbg> bt_hci_core: bt_hci_cmd_send_sync: rsp data
00

00 // Status: 0x00 (Success)

## 4. LE Set Extended Advertising Enable [v1]
Send Command:
[00:00:03.252,000] <dbg> bt_hci_core: bt_hci_cmd_send_sync: buf 0x20010c18 opcode 0x2039 len 6 // BLE HCI: LE Set Extended Advertising Enable [v1]
[00:00:03.254,000] <dbg> bt_hci_core: bt_hci_cmd_send_sync: cmd params
01 01 00 00 00 00

01 // Enable: 0x01 (Enable advertising)
01 // Number_of_Sets: 0x01
00 // Advertising_Handle[0]: 0x00
00 00 // Duration[0]: 0x0000 (no duration limit)
00 // Max_Extended_Advertising_Events[0]: 0x00 (no event limit)

Recv Command Complete:
[00:00:03.293,000] <dbg> bt_hci_core: bt_hci_cmd_send_sync: rsp 0x20010c18 opcode 0x2039 len 1
[00:00:03.295,000] <dbg> bt_hci_core: bt_hci_cmd_send_sync: rsp data
00

00 // Status: 0x00 (Success)

Following is the HCI interaction sequence.