Bluetooth remotes stopped working after upgrading TV to Android 14

8 views
Skip to first unread message

Kamil

unread,
Dec 16, 2025, 1:55:37 PM (3 days ago) Dec 16
to btstack-dev
Hello there, I'm aware this is not the perfect place to submit my problem but all my 3rd party bluetooth remotes (G40S) stopped working after the Android update from 12 to 14 on my TCL TV and though you can push me in the right direction in that matter, the most important thing I want to know is: this is Android problem or remote manufacturer problem and if there is any workaround for now?

When attempting to pair 3rd party remote G40S Air Mouse (original TCL remote is working great), the pairing process taking really long but eventually it kind of pairs after second confirmation, remote provides the signal properly, tv receives it but there is no action on the screen. no input - key presses are ignored. On Android 12 everything is working perfectly because I downgraded second TV.

Also I allowed Gemini to point for the most important lines in logcat:

// 1. Successful Pairing (Bonding)
12-15 02:33:53.068  5163  5213 I BluetoothBondStateMachine: Bond address is:XX:XX:XX:XX:D9:E4
12-15 02:33:53.070  5163  5194 I bt_btif_dm: bond_state_changed: Bond state changed to state=1 [0:none, 1:bonding, 2:bonded]
12-15 02:33:53.072  5163  5202 I BluetoothBondStateMachine: bondStateChangeCallback: Status: 0 Address: XX:XX:XX:XX:D9:E4 newState: 1 hciReason: 0
12-15 02:33:54.538  5163  5194 I bt_btif_dm: bond_state_changed: Bond state changed to state=2 [0:none, 1:bonding, 2:bonded]
12-15 02:33:54.545  5163  5213 D AdapterProperties: Adding bonded device:XX:XX:XX:XX:D9:E4
12-15 02:33:54.547  5163  5213 I BluetoothBondStateMachine: XX:XX:XX:XX:D9:E4 is bonded, wait for SDP complete to broadcast bonded intent

// 2. GATT Service Discovery (Finding HID features)
12-15 02:33:54.743  5163  5194 I bt_bta_dm: bta_dm_discover_device: bta_dm_discovery: starting GATT discovery on xx:xx:xx:xx:d9:e4
12-15 02:33:56.033  5163  5194 I bt_stack: [INFO:bta_gattc_cache.cc(292)] bta_gattc_explore_srvc_finished: service discovery finished
12-15 02:33:56.034  5163  5194 I bt_btif_dm: btif_dm_search_services_evt: New GATT over LE UUIDs for xx:xx:xx:xx:d9:e4:
12-15 02:33:56.034  5163  5194 I bt_btif_dm: btif_dm_search_services_evt: index:0 uuid:0000180f-0000-1000-8000-00805f9b34fb
12-15 02:33:56.034  5163  5194 I bt_btif_dm: btif_dm_search_services_evt: index:1 uuid:00001812-0000-1000-8000-00805f9b34fb
12-15 02:33:56.091  5163  5180 I BluetoothAdapterService: connectEnabledProfiles: Connecting Hid Host Profile

// 3. Connection Establishment
12-15 02:33:56.096  5163  5163 D BluetoothHidHostService: Connection state XX:XX:XX:XX:D9:E4: 0->1
12-15 02:33:56.099  1378  1440 D CachedBluetoothDevice: connect CachedBluetoothDevice{anonymizedAddress=XX:XX:XX:XX:D9:E4, name=G40BTSV, groupId=-1, member=[]}
12-15 02:33:56.771  5163  5202 I bt_btif_hh: hh_open_handler: Found device, getting dscp info for handle 16

// 4. THE CRASH (Packet Size Mismatch & UHID Driver Failure)
12-15 02:33:56.260  5163  5194 E bt_stack: [ERROR:gatt_cl.cc(1265)] gatt_client_handle_server_rsp: invalid response pkt size: 229, PDU size: 140
12-15 02:33:56.260  5163  5194 E bt_btif : packages/modules/Bluetooth/system/main/bte_logmsg.cc:113 LogMsg: read_hid_report_map_cb: error reading characteristic: 133
12-15 02:33:56.771  5163  5194 W bt_bta_hh: bta_hh_le_get_dscp_act: hid_srvc.descriptor.dl_len is 0
12-15 02:33:56.772  5163  5202 W bt_btif : LogMsg: bta_hh_co_send_hid_info: fd = 193, name = [G40BTSV], dscp_len = 0
12-15 02:33:56.772  5163  5202 E bt_btif : LogMsg: uhid_write: Cannot write to uhid:Invalid argument
12-15 02:33:56.772  5163  5202 W bt_btif : LogMsg: bta_hh_co_send_hid_info: Error: failed to send DSCP, result = -22
12-15 02:33:56.824  5163 11429 E bt_btif : LogMsg: uhid_read_event: Cannot read uhid-cdev: Bad file descriptor
12-15 02:33:56.824  5163 11429 E bluetooth: btif_hh_poll_event_thread: Unhandled UHID event
12-15 02:33:56.824  5163 11429 I bluetooth: btif_hh_poll_event_thread: Polling thread stopped for device xx:xx:xx:xx:d9:e4

// 5. System UI reacting to failure
12-15 02:34:56.125  7217 11379 D AddAccessoryPreferenceFragment: updateList: devices size = 2 currentTargetStatus = Nie udało się sparować oldTargetStatus = Łączę…

Later after all of this kind of "pairing", every button press I receive this in logcat:
bte_logmsg.cc:116 LogMsg: bta_hh_co_data: Error: fd = -1, ready 0, len = 4

Matthias Ringwald

unread,
Dec 18, 2025, 8:35:40 AM (yesterday) Dec 18
to btsta...@googlegroups.com
Hi Kamil

It's hard to say from your observation. However, as you cannot modify any of your devices, there's probably no easy workaround.
Given that the chances that you can get Google to look at your problem are rather slim, you could try to contact the remote control vendor and ask them to check with Android 14.

If it works with Android 14 but not Android 14, my guess would be that Android slightly modified the order of Bluetooth messages or use different methods and the remote expects the old methods.

You could try some other keyboards / mouse and if they work, your G40S device is probably to blame.
Similarly, you can also try our hog_keyboard / hog_mouse demos to see if you can (partially) control your TV with that.

Good luck,
Matthias
> --
> You received this message because you are subscribed to the Google Groups "btstack-dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to btstack-dev...@googlegroups.com.
> To view this discussion visit https://groups.google.com/d/msgid/btstack-dev/e411df69-c357-4b43-9ac3-11c27e06a6e0n%40googlegroups.com.

Kamil

unread,
Dec 18, 2025, 9:19:29 AM (yesterday) Dec 18
to btstack-dev
Thanks so much for your reply Matthias! Yeah my devices don't have root and I don't want to root them so only adb commands are possible for me but I guess that won't help.
I already contacted remote manufacturer and I let them know about the problems, however the same remote works properly on my phone with Android 15... BUT also other bluetooth keyboard and bluetooth mouse are working on that Android 14 TV, so it seems like really specific case of THIS remote and THIS Android 14 on my TV or it even might be kernel issue of TCL TV new update..

Can you let me know more of hog_keyboard / hog_mouse please?
Reply all
Reply to author
Forward
0 new messages