Custom integration of DIS service fails on Android 16

I had a fully working BLE setup on my nRF52 (Zephyr), which worked fine on older Android versions. After updating a phone to Android 16 (tested on Google Pixel 7 and Samsung S24), a problem appeared: the nRF Connect app (version 2.9.2) stopped discovering any BLE services.

After investigating and disabling individual services in my project, it turned out that the Device Information Service (DIS) is causing the issue. When DIS is disabled, Android 16 correctly discovers all other services.

Currently, my application only has DIS enabled, and I cannot determine why Android 16 fails to discover any services, while older Android version work correctly.

I also ran the Zephyr DIS example directly and  Android 16 correctly discovers all services. This suggests that the problem is likely in my implementation, but I have not been able to identify the cause.

From RTT logs, I was able to observe that Android 16 discovers services differently compared to older Android versions, which might be related to the issue. Any help or suggestions would be greatly appreciated .

Attachments:

  • RTT logs from older Android (working correctly)

  • RTT logs from Android 16 (services not discovered)

  • Screenshot from nRF Connect showing no services

  • [00:00:08.517,059] <inf> ble: Bluetooth ready.[00:00:31.260,009] <dbg> bt_att: bt_att_accept: conn 0x20004570 handle 0
    [00:00:31.260,070] <dbg> bt_att: att_chan_attach: att 0x2000e9d8 chan 0x2000c400 flags 0
    [00:00:31.260,070] <dbg> bt_att: bt_att_connected: chan 0x2000c404 cid 0x0004
    [00:00:31.260,101] <dbg> bt_gatt: bt_gatt_connected: conn 0x20004570
    [00:00:31.260,162] <dbg> bt_att: bt_att_status: chan 0x2000c404 status 0x2000c414
    [00:00:31.260,192] <inf> ble: Connected
    [00:00:31.260,192] <inf> ble: Connection parameters: interval 45.00 ms, latency 0 intervals, timeout 5000 ms
    [00:00:32.260,467] <dbg> bt_att: bt_att_req_alloc: Timeout discarded. No blocking on bt_recv thread.
    [00:00:32.260,498] <dbg> bt_att: bt_att_req_alloc: req 0x2000ea04
    [00:00:32.260,528] <dbg> bt_gatt: gatt_exchange_mtu_encode: Client MTU 247
    [00:00:32.260,528] <dbg> bt_att: bt_att_req_send: conn 0x20004570 req 0x2000ea04
    [00:00:32.260,559] <dbg> bt_att: bt_att_chan_req_send: req 0x2000ea04
    [00:00:32.260,559] <dbg> bt_att: chan_req_send: chan 0x2000c400 req 0x2000ea04 len 3
    [00:00:32.260,589] <dbg> bt_att: bt_att_chan_send: chan 0x2000c400 flags 1 code 0x02
    [00:00:32.260,589] <dbg> bt_att: chan_send: code 0x02
    [00:00:32.260,711] <inf> ble: Data length updated. Length 251/27 bytes, time 2120/328 us
    [00:00:32.260,803] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.260,833] <dbg> bt_att: att_on_sent_cb: opcode 0x2
    [00:00:32.260,833] <dbg> bt_att: att_on_sent_cb: UATT bearer, calling att_sent
    [00:00:32.260,864] <dbg> bt_att: att_sent: conn 0x20004570 chan 0x2000c404
    [00:00:32.260,864] <dbg> bt_att: bt_att_sent: chan 0x2000c400
    [00:00:32.260,894] <dbg> bt_att: chan_rebegin_att_timeout: chan 0x2000c400 chan->req 0x2000ea04
    [00:00:32.260,955] <dbg> bt_att: bt_att_recv: Received ATT chan 0x2000c400 code 0x08 len 6
    [00:00:32.261,047] <dbg> bt_att: att_read_type_req: start_handle 0x0001 end_handle 0xffff type 2b3a
    [00:00:32.261,138] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.261,199] <dbg> bt_att: chan_send: code 0x01
    [00:00:32.261,260] <inf> ble: Connection parameters updated: interval 7.00 ms, latency 0 intervals, timeout 5000 ms
    [00:00:32.261,352] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.261,352] <dbg> bt_att: att_on_sent_cb: opcode 0x1
    [00:00:32.261,383] <dbg> bt_att: att_on_sent_cb: UATT bearer, calling att_sent
    [00:00:32.261,383] <dbg> bt_att: att_sent: conn 0x20004570 chan 0x2000c404
    [00:00:32.261,413] <dbg> bt_att: bt_att_sent: chan 0x2000c400
    [00:00:32.274,719] <dbg> bt_att: bt_att_recv: Received ATT chan 0x2000c400 code 0x03 len 2
    [00:00:32.274,749] <dbg> bt_att: att_mtu_rsp: Server MTU 247
    [00:00:32.274,749] <dbg> bt_att: att_mtu_rsp: Negotiated MTU 247
    [00:00:32.274,810] <dbg> bt_att: att_handle_rsp: chan 0x2000c400 err 0 len 2: f700
    [00:00:32.274,810] <dbg> bt_att: bt_att_req_free: req 0x2000ea04
    [00:00:32.274,841] <dbg> bt_gatt: att_err_from_int: 0
    [00:00:32.274,871] <inf> ble: MTU exchange successful
    [00:00:32.274,871] <inf> ble: New MTU: 244 bytes
    [00:00:32.282,196] <dbg> bt_att: bt_att_recv: Received ATT chan 0x2000c400 code 0x10 len 6
    [00:00:32.282,287] <dbg> bt_att: att_read_group_req: start_handle 0x0001 end_handle 0xffff type 2800
    [00:00:32.282,348] <dbg> bt_att: read_group_cb: handle 0x0001
    [00:00:32.282,348] <dbg> bt_gatt: bt_gatt_attr_read: handle 0x0000 offset 0 length 2
    [00:00:32.282,409] <dbg> bt_att: read_group_cb: handle 0x0009
    [00:00:32.282,409] <dbg> bt_gatt: bt_gatt_attr_read: handle 0x0000 offset 0 length 2
    [00:00:32.282,440] <dbg> bt_att: read_group_cb: handle 0x0010
    [00:00:32.282,470] <dbg> bt_gatt: bt_gatt_attr_read: handle 0x0000 offset 0 length 2
    [00:00:32.282,531] <dbg> bt_att: chan_send: code 0x11
    [00:00:32.282,623] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.282,653] <dbg> bt_att: att_on_sent_cb: opcode 0x11
    [00:00:32.282,653] <dbg> bt_att: att_on_sent_cb: UATT bearer, calling att_sent
    [00:00:32.282,684] <dbg> bt_att: att_sent: conn 0x20004570 chan 0x2000c404
    [00:00:32.282,684] <dbg> bt_att: bt_att_sent: chan 0x2000c400
    [00:00:32.297,729] <inf> ble: Data length updated. Length 200/27 bytes, time 2120/328 us
    [00:00:32.304,565] <dbg> bt_att: bt_att_recv: Received ATT chan 0x2000c400 code 0x10 len 6
    [00:00:32.304,779] <dbg> bt_att: att_read_group_req: start_handle 0x001d end_handle 0xffff type 2800
    [00:00:32.304,809] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.304,840] <dbg> bt_att: chan_send: code 0x01
    [00:00:32.304,962] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.304,962] <dbg> bt_att: att_on_sent_cb: opcode 0x1
    [00:00:32.304,992] <dbg> bt_att: att_on_sent_cb: UATT bearer, calling att_sent
    [00:00:32.304,992] <dbg> bt_att: att_sent: conn 0x20004570 chan 0x2000c404
    [00:00:32.305,023] <dbg> bt_att: bt_att_sent: chan 0x2000c400
    [00:00:32.319,763] <dbg> bt_att: bt_att_recv: Received ATT chan 0x2000c400 code 0x08 len 6
    [00:00:32.319,854] <dbg> bt_att: att_read_type_req: start_handle 0x0001 end_handle 0x0008 type 2802
    [00:00:32.319,915] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.319,946] <dbg> bt_att: chan_send: code 0x01
    [00:00:32.320,037] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.320,068] <dbg> bt_att: att_on_sent_cb: opcode 0x1
    [00:00:32.320,068] <dbg> bt_att: att_on_sent_cb: UATT bearer, calling att_sent
    [00:00:32.320,098] <dbg> bt_att: att_sent: conn 0x20004570 chan 0x2000c404
    [00:00:32.320,098] <dbg> bt_att: bt_att_sent: chan 0x2000c400
    [00:00:32.334,747] <dbg> bt_att: bt_att_recv: Received ATT chan 0x2000c400 code 0x08 len 6
    [00:00:32.334,838] <dbg> bt_att: att_read_type_req: start_handle 0x0001 end_handle 0x0008 type 2803
    [00:00:32.334,899] <dbg> bt_att: read_type_cb: handle 0x0002
    [00:00:32.334,899] <dbg> bt_gatt: bt_gatt_attr_read: handle 0x0000 offset 0 length 5
    [00:00:32.334,930] <dbg> bt_att: read_type_cb: handle 0x0005
    [00:00:32.334,960] <dbg> bt_gatt: bt_gatt_attr_read: handle 0x0000 offset 0 length 5
    [00:00:32.334,991] <dbg> bt_att: read_type_cb: handle 0x0007
    [00:00:32.335,021] <dbg> bt_gatt: bt_gatt_attr_read: handle 0x0000 offset 0 length 5
    [00:00:32.335,021] <dbg> bt_att: chan_send: code 0x09
    [00:00:32.335,144] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.335,144] <dbg> bt_att: att_on_sent_cb: opcode 0x9
    [00:00:32.335,174] <dbg> bt_att: att_on_sent_cb: UATT bearer, calling att_sent
    [00:00:32.335,174] <dbg> bt_att: att_sent: conn 0x20004570 chan 0x2000c404
    [00:00:32.335,205] <dbg> bt_att: bt_att_sent: chan 0x2000c400
    [00:00:32.349,761] <dbg> bt_att: bt_att_recv: Received ATT chan 0x2000c400 code 0x08 len 6
    [00:00:32.349,853] <dbg> bt_att: att_read_type_req: start_handle 0x0008 end_handle 0x0008 type 2803
    [00:00:32.349,884] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.349,914] <dbg> bt_att: chan_send: code 0x01
    [00:00:32.350,036] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.350,036] <dbg> bt_att: att_on_sent_cb: opcode 0x1
    [00:00:32.350,067] <dbg> bt_att: att_on_sent_cb: UATT bearer, calling att_sent
    [00:00:32.350,067] <dbg> bt_att: att_sent: conn 0x20004570 chan 0x2000c404
    [00:00:32.350,097] <dbg> bt_att: bt_att_sent: chan 0x2000c400
    [00:00:32.364,746] <dbg> bt_att: bt_att_recv: Received ATT chan 0x2000c400 code 0x04 len 4
    [00:00:32.364,746] <dbg> bt_att: att_find_info_req: start_handle 0x0004 end_handle 0x0004
    [00:00:32.364,776] <dbg> bt_att: find_info_cb: handle 0x0004
    [00:00:32.364,807] <dbg> bt_att: chan_send: code 0x05
    [00:00:32.364,898] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.364,929] <dbg> bt_att: att_on_sent_cb: opcode 0x5
    [00:00:32.364,929] <dbg> bt_att: att_on_sent_cb: UATT bearer, calling att_sent
    [00:00:32.364,959] <dbg> bt_att: att_sent: conn 0x20004570 chan 0x2000c404
    [00:00:32.364,959] <dbg> bt_att: bt_att_sent: chan 0x2000c400
    [00:00:32.379,760] <dbg> bt_att: bt_att_recv: Received ATT chan 0x2000c400 code 0x08 len 6
    [00:00:32.379,852] <dbg> bt_att: att_read_type_req: start_handle 0x0009 end_handle 0x000f type 2802
    [00:00:32.379,913] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.379,943] <dbg> bt_att: chan_send: code 0x01
    [00:00:32.380,035] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.380,065] <dbg> bt_att: att_on_sent_cb: opcode 0x1
    [00:00:32.380,065] <dbg> bt_att: att_on_sent_cb: UATT bearer, calling att_sent
    [00:00:32.380,096] <dbg> bt_att: att_sent: conn 0x20004570 chan 0x2000c404
    [00:00:32.380,096] <dbg> bt_att: bt_att_sent: chan 0x2000c400
    [00:00:32.394,744] <dbg> bt_att: bt_att_recv: Received ATT chan 0x2000c400 code 0x08 len 6
    [00:00:32.394,866] <dbg> bt_att: att_read_type_req: start_handle 0x0009 end_handle 0x000f type 2803
    [00:00:32.394,897] <dbg> bt_att: read_type_cb: handle 0x000a
    [00:00:32.394,927] <dbg> bt_gatt: bt_gatt_attr_read: handle 0x0000 offset 0 length 5
    [00:00:32.394,927] <dbg> bt_att: read_type_cb: handle 0x000c
    [00:00:32.394,958] <dbg> bt_gatt: bt_gatt_attr_read: handle 0x0000 offset 0 length 5
    [00:00:32.394,989] <dbg> bt_att: read_type_cb: handle 0x000e
    [00:00:32.395,019] <dbg> bt_gatt: bt_gatt_attr_read: handle 0x0000 offset 0 length 5
    [00:00:32.395,019] <dbg> bt_att: chan_send: code 0x09
    [00:00:32.395,141] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.395,141] <dbg> bt_att: att_on_sent_cb: opcode 0x9
    [00:00:32.395,172] <dbg> bt_att: att_on_sent_cb: UATT bearer, calling att_sent
    [00:00:32.395,172] <dbg> bt_att: att_sent: conn 0x20004570 chan 0x2000c404
    [00:00:32.395,202] <dbg> bt_att: bt_att_sent: chan 0x2000c400
    [00:00:32.409,759] <dbg> bt_att: bt_att_recv: Received ATT chan 0x2000c400 code 0x08 len 6
    [00:00:32.409,851] <dbg> bt_att: att_read_type_req: start_handle 0x000f end_handle 0x000f type 2803
    [00:00:32.409,881] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.409,942] <dbg> bt_att: chan_send: code 0x01
    [00:00:32.410,034] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.410,064] <dbg> bt_att: att_on_sent_cb: opcode 0x1
    [00:00:32.410,064] <dbg> bt_att: att_on_sent_cb: UATT bearer, calling att_sent
    [00:00:32.410,095] <dbg> bt_att: att_sent: conn 0x20004570 chan 0x2000c404
    [00:00:32.410,095] <dbg> bt_att: bt_att_sent: chan 0x2000c400
    [00:00:32.424,774] <dbg> bt_att: bt_att_recv: Received ATT chan 0x2000c400 code 0x08 len 6
    [00:00:32.424,835] <dbg> bt_att: att_read_type_req: start_handle 0x0010 end_handle 0x001c type 2802
    [00:00:32.424,926] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.424,957] <dbg> bt_att: chan_send: code 0x01
    [00:00:32.425,048] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.425,079] <dbg> bt_att: att_on_sent_cb: opcode 0x1
    [00:00:32.425,079] <dbg> bt_att: att_on_sent_cb: UATT bearer, calling att_sent
    [00:00:32.425,109] <dbg> bt_att: att_sent: conn 0x20004570 chan 0x2000c404
    [00:00:32.425,109] <dbg> bt_att: bt_att_sent: chan 0x2000c400
    [00:00:32.439,758] <dbg> bt_att: bt_att_recv: Received ATT chan 0x2000c400 code 0x08 len 6
    [00:00:32.439,849] <dbg> bt_att: att_read_type_req: start_handle 0x0010 end_handle 0x001c type 2803
    [00:00:32.439,910] <dbg> bt_att: read_type_cb: handle 0x0011
    [00:00:32.439,910] <dbg> bt_gatt: bt_gatt_attr_read: handle 0x0000 offset 0 length 5
    [00:00:32.439,941] <dbg> bt_att: read_type_cb: handle 0x0013
    [00:00:32.439,971] <dbg> bt_gatt: bt_gatt_attr_read: handle 0x0000 offset 0 length 5
    [00:00:32.440,002] <dbg> bt_att: read_type_cb: handle 0x0015
    [00:00:32.440,002] <dbg> bt_gatt: bt_gatt_attr_read: handle 0x0000 offset 0 length 5
    [00:00:32.440,032] <dbg> bt_att: read_type_cb: handle 0x0017
    [00:00:32.440,063] <dbg> bt_gatt: bt_gatt_attr_read: handle 0x0000 offset 0 length 5
    [00:00:32.440,093] <dbg> bt_att: read_type_cb: handle 0x0019
    [00:00:32.440,124] <dbg> bt_gatt: bt_gatt_attr_read: handle 0x0000 offset 0 length 5
    [00:00:32.440,124] <dbg> bt_att: read_type_cb: handle 0x001b
    [00:00:32.440,155] <dbg> bt_gatt: bt_gatt_attr_read: handle 0x0000 offset 0 length 5
    [00:00:32.440,185] <dbg> bt_att: chan_send: code 0x09
    [00:00:32.440,277] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.440,307] <dbg> bt_att: att_on_sent_cb: opcode 0x9
    [00:00:32.440,307] <dbg> bt_att: att_on_sent_cb: UATT bearer, calling att_sent
    [00:00:32.440,338] <dbg> bt_att: att_sent: conn 0x20004570 chan 0x2000c404
    [00:00:32.440,338] <dbg> bt_att: bt_att_sent: chan 0x2000c400
    [00:00:32.454,772] <dbg> bt_att: bt_att_recv: Received ATT chan 0x2000c400 code 0x08 len 6
    [00:00:32.454,833] <dbg> bt_att: att_read_type_req: start_handle 0x001c end_handle 0x001c type 2803
    [00:00:32.454,895] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.454,925] <dbg> bt_att: chan_send: code 0x01
    [00:00:32.455,017] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:00:32.455,047] <dbg> bt_att: att_on_sent_cb: opcode 0x1
    [00:00:32.455,078] <dbg> bt_att: att_on_sent_cb: UATT bearer, calling att_sent
    [00:00:32.455,078] <dbg> bt_att: att_sent: conn 0x20004570 chan 0x2000c404
    [00:00:32.455,108] <dbg> bt_att: bt_att_sent: chan 0x2000c400
    [00:00:32.529,724] <inf> ble: Connection parameters updated: interval 45.00 ms, latency 0 intervals, timeout 5000 ms
    [00:00:36.699,645] <inf> ble: Connection parameters updated: interval 30.00 ms, latency 0 intervals, timeout 20000 ms
    [00:00:08.520,874] <inf> ble_cp: BLE calib cal[00:04:28.349,639] <dbg> bt_att: bt_att_accept: conn 0x20004570 handle 0
    [00:04:28.349,700] <dbg> bt_att: att_chan_attach: att 0x2000e9d8 chan 0x2000c400 flags 0
    [00:04:28.349,700] <dbg> bt_att: bt_att_connected: chan 0x2000c404 cid 0x0004
    [00:04:28.349,731] <dbg> bt_gatt: bt_gatt_connected: conn 0x20004570
    [00:04:28.349,792] <dbg> bt_att: bt_att_status: chan 0x2000c404 status 0x2000c414
    [00:04:28.349,792] <inf> ble: Connected
    [00:04:28.349,822] <inf> ble: Connection parameters: interval 20.00 ms, latency 0 intervals, timeout 5000 ms
    [00:04:29.350,067] <dbg> bt_att: bt_att_req_alloc: Timeout discarded. No blocking on bt_recv thread.
    [00:04:29.350,097] <dbg> bt_att: bt_att_req_alloc: req 0x2000ea04
    [00:04:29.350,128] <dbg> bt_gatt: gatt_exchange_mtu_encode: Client MTU 247
    [00:04:29.350,128] <dbg> bt_att: bt_att_req_send: conn 0x20004570 req 0x2000ea04
    [00:04:29.350,158] <dbg> bt_att: bt_att_chan_req_send: req 0x2000ea04
    [00:04:29.350,158] <dbg> bt_att: chan_req_send: chan 0x2000c400 req 0x2000ea04 len 3
    [00:04:29.350,189] <dbg> bt_att: bt_att_chan_send: chan 0x2000c400 flags 1 code 0x02
    [00:04:29.350,189] <dbg> bt_att: chan_send: code 0x02
    [00:04:29.350,311] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:04:29.350,341] <dbg> bt_att: att_on_sent_cb: opcode 0x2
    [00:04:29.350,341] <dbg> bt_att: att_on_sent_cb: UATT bearer, calling att_sent
    [00:04:29.350,372] <dbg> bt_att: att_sent: conn 0x20004570 chan 0x2000c404
    [00:04:29.350,372] <dbg> bt_att: bt_att_sent: chan 0x2000c400
    [00:04:29.350,402] <dbg> bt_att: chan_rebegin_att_timeout: chan 0x2000c400 chan->req 0x2000ea04
    [00:04:29.350,494] <dbg> bt_att: bt_att_recv: Received ATT chan 0x2000c400 code 0x08 len 6
    [00:04:29.350,585] <dbg> bt_att: att_read_type_req: start_handle 0x0001 end_handle 0xffff type 2a00
    [00:04:29.350,616] <dbg> bt_att: read_type_cb: handle 0x000b
    [00:04:29.350,646] <dbg> bt_gatt: bt_gatt_attr_read: handle 0x0000 offset 0 length 15
    [00:04:29.350,677] <dbg> bt_att: chan_send: code 0x09
    [00:04:29.350,799] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:04:29.350,830] <dbg> bt_att: att_on_sent_cb: opcode 0x9
    [00:04:29.350,830] <dbg> bt_att: att_on_sent_cb: UATT bearer, calling att_sent
    [00:04:29.350,860] <dbg> bt_att: att_sent: conn 0x20004570 chan 0x2000c404
    [00:04:29.350,860] <dbg> bt_att: bt_att_sent: chan 0x2000c400
    [00:04:29.408,294] <dbg> bt_att: bt_att_recv: Received ATT chan 0x2000c400 code 0x03 len 2
    [00:04:29.408,325] <dbg> bt_att: att_mtu_rsp: Server MTU 517
    [00:04:29.408,325] <dbg> bt_att: att_mtu_rsp: Negotiated MTU 247
    [00:04:29.408,386] <dbg> bt_att: att_handle_rsp: chan 0x2000c400 err 0 len 2: 0502
    [00:04:29.408,386] <dbg> bt_att: bt_att_req_free: req 0x2000ea04
    [00:04:29.408,416] <dbg> bt_gatt: att_err_from_int: 0
    [00:04:29.408,447] <inf> ble: MTU exchange successful
    [00:04:29.408,447] <inf> ble: New MTU: 244 bytes
    [00:04:29.408,508] <inf> ble: Data length updated. Length 200/200 bytes, time 2120/2120 us
    [00:04:29.428,100] <dbg> bt_att: bt_att_recv: Received ATT chan 0x2000c400 code 0x08 len 6
    [00:04:29.428,314] <dbg> bt_att: att_read_type_req: start_handle 0x0001 end_handle 0xffff type 2b2a
    [00:04:29.428,375] <dbg> bt_att: read_type_cb: handle 0x0008
    [00:04:29.428,375] <dbg> bt_gatt: bt_gatt_attr_read: handle 0x0000 offset 0 length 16
    [00:04:29.428,436] <dbg> bt_att: chan_send: code 0x09
    [00:04:29.428,558] <dbg> bt_att: att_tx_destroy: 0x2000e960
    [00:04:29.428,558] <dbg> bt_att: att_on_sent_cb: opcode 0x9
    [00:04:29.428,588] <dbg> bt_att: att_on_sent_cb: UATT bearer, calling att_sent
    [00:04:29.428,588] <dbg> bt_att: att_sent: conn 0x20004570 chan 0x2000c404
    [00:04:29.428,619] <dbg> bt_att: bt_att_sent: chan 0x2000c400
    [00:04:29.588,256] <inf> ble: Connection parameters updated: interval 50.00 ms, latency 0 intervals, timeout 5000 ms
    [00:04:33.727,600] <inf> ble: Connection parameters updated: interval 50.00 ms, latency 0 intervals, timeout 20000 ms

Parents Reply
  • Hi,

    I am sorry for the delay. We have not seen or heard about any such issue. My understanding is that you are testing with nRF Connect for Mobile, and not your own Android app. Is that correct? If so, there is something else that somehow trigger this, but I am not able to say what.

    Which exact Android 16 version are you using now? And are there any Android 16 devices where you do not see this issue? Do you have firmware that can reproduce this on a DK so that we can see if we are able to reproduce with that?

Children
  • We have tested this on two Android 16 devices using three different applications: nRF Connect, our own app, and another BLE application (BLE Scanner – Connect & Notify). On both devices, none of the applications were able to detect any services.

    For reference, the build number for one of the Android 16 devices is BP4A.251205.006.

    Currently, we do not have a minimal example project that reproduces this issue, but I will prepare one and share it with you as soon as possible.

Related