1# Below are the guidelines/instructions for editing this database file. 2# Note 1: User should turn of the BT, before updating this database file. 3# Note 2: Line started with the # is treated as comments. 4# Note 3: Comment lines in between the entries are not allowed. 5# Note 4: All duplicated entries including main BL types will be ignored. 6# 7#1. Below are the four tags for denylist 8# A. Address_Based C. Manufacturer_based 9# B. Name_Based D. Vndr_Prdt_Based 10# E. SSR_Max_Lat_Based F. Version_Based 11# G. LMP_Version_Based H. Address_Range_Based 12## 13# A. Address_Based : This tag refers to Address based denylist 14# Input Type : Input value should be only 3 to 4 bytes of BD address 15# Format Type : Address should be in XX:XX:XX format 16# Examples : 00:01:03 = Address_Based 17### 18# B. Name_Based : This tag refers to Name based denylist. 19# Input type : Input should be only string and length of the string 20# should not be more than 248 characters. 21# Format Type : string 22# Examples : Sample Headset name = Name_Based 23#### 24# C. Manufacturer_Based : This tag refers to Manufacturer based denylist 25# Input type : Input should be in Hexadecimal Number of Manufacturer 26# Format Type : 2 Bytes Hexadecimal Value 27# Examples : 0X0023 = Manufacturer_Based 28##### 29# D. Vndr_Prdt_Based : This tag refers to vendor and product based denylist 30# Input type : Input should be in Hexadecimal value 31# Format Type : 4 bytes hex value( 2 bytes of vendor and 2 bytes of product), 32# Vendor and product hex values should be separated with delimiter(-). 33# Examples : 0X00AB-0X00BC = Vndr_Prdt_Based 34##### 35# E. SSR_Max_Lat_Based : This tag refers to SSR Max Latency based denylist 36# Input type : Input value should be combination of first 3 bytes of BD address and 37# Hexadecimal value of SSR Max Latency 38# Format Type : Address should be in XX:XX:XX format followed by 2 bytes hex value 39# of max latency Address and Max Latency should be separated with delimiter(-). 40# Examples : 00:01:03-0X00AB = SSR_Max_Lat_Based 41##### 42# F. Version_Based : This tag refers to DID Version based denylist 43# Input type : Input value should be Hexadecimal value 44# Format Type : 2 bytes hex value 45# Examples : 0X00AB = Version_Based 46##### 47# G. LMP_Version_Based : This tag refers to LMP Version based denylist 48# Input type : Input value should be combination of first 3 bytes of BD address and 49# Hexadecimal value of LMP version and Sub version 50# Format Type : Address should be in XX:XX:XX format followed by 1 bytes hex value 51# of LMP versiion and 2 bytes of sub version 52# Address, LMP version and sub version should be separated with delimiter(-). 53# Examples : 00:01:03-0X01-0XABCD = LMP_Version_Based 54## 55# H. Address_Range_Based : This tag refers to Address Range based denylist 56# Input Type : Input value should be only 6 bytes of start BD address 57# & 6 bytes of end BD address. 58# Format Type : Start Address should be XX:XX:XX:XX:XX:XX format followed by 59# End BD address should be XX:XX:XX:XX:XX:XX format 60# Examples : 00:0f:59:50:00:00-00:0f:59:6f:ff:ff = Address_Range_Based 61##### 62# ******************************* Start of denylist Database ******************************** 63#Disable secure connections 64#This is for pre BT 4.1/2 devices that do not handle secure mode very well. 65[INTEROP_DISABLE_LE_SECURE_CONNECTIONS] 6608:62:66 = Address_Based 6738:2C:4A:C9 = Address_Based 6838:2C:4A:E6 = Address_Based 6954:A0:50:D9 = Address_Based 70AC:9E:17 = Address_Based 71F0:79:59 = Address_Based 7280:E4:DA:70 = Address_Based 731C:96:5A = Address_Based 7480:EA:CA = Address_Based 7551:01:00 = Address_Based 7661:01:00 = Address_Based 77 78# Devices requiring this workaround do not handle Bluetooth Absolute Volume 79# control correctly, leading to undesirable (potentially harmful) volume levels 80# or general lack of controlability. 81[INTEROP_DISABLE_ABSOLUTE_VOLUME] 82A0:E9:DB = Address_Based 8300:14:02 = Address_Based 841C:48:F9 = Address_Based 8544:5E:F3 = Address_Based 86D4:9C:28 = Address_Based 8700:18:6B = Address_Based 88B8:AD:3E = Address_Based 8900:11:B1 = Address_Based 90A4:15:66 = Address_Based 9100:14:F1 = Address_Based 9200:26:7E = Address_Based 9390:03:B7 = Address_Based 9404:F8:C2 = Address_Based 9500:18:91 = Address_Based 9600:24:1C = Address_Based 9700:08:8b = Address_Based 9894:16:25 = Address_Based 9900:25:DB = Address_Based 100A0:C9:A0 = Address_Based 1014C:BC:42 = Address_Based 102EC:41:18 = Address_Based 103C8:FD:19 = Address_Based 10404:7F:0E = Address_Based 1050C:A6:94 = Address_Based 10600:0f:59:50:00:00-00:0f:59:6f:ff:ff = Address_Range_Based 107 108# Disable automatic pairing with headsets/car-kits 109# Some car kits do not react kindly to a failed pairing attempt and 110# do not allow immediate re-pairing. Denylist these so that the initial 111# pairing attempt makes it to the user instead 112[INTEROP_DISABLE_AUTO_PAIRING] 11334:C7:31 = Address_Based 11400:07:04 = Address_Based 115E0:75:0A = Address_Based 116Audi = Name_Based 117BMW = Name_Based 118Parrot = Name_Based 119Car = Name_Based 120NISSAN = Name_Based 121CAR = Name_Based 122 123# Use a fixed pin for specific keyboards 124# Keyboards should use a variable pin at all times. However, some keyboards 125# require a fixed pin of all 0000. This workaround enables auto pairing for 126# those keyboards. 127[INTEROP_KEYBOARD_REQUIRES_FIXED_PIN] 12800:0F:F6 = Address_Based 129 130# Some headsets have audio jitter issues because of increased re-transmissions as the 131# 3 Mbps packets have a lower link margin, and are more prone to interference. We can 132# disable 3DH packets (use only 2DH packets) for the ACL link to improve sensitivity 133# when streaming A2DP audio to the headset. Air sniffer logs show reduced 134# re-transmissions after switching to 2DH packets. 135# Disable 3Mbps packets and use only 2Mbps packets for ACL links when streaming audio. 136[INTEROP_2MBPS_LINK_ONLY] 13700:18:91 = Address_Based 13800:21:4F = Address_Based 13920:15:06 = Address_Based 1409C:DF:03 = Address_Based 14104:52:C7 = Address_Based 14230:14:4A = Address_Based 14300:54:AF = Address_Based 1447C:1C:4E = Address_Based 14550:65:83 = Address_Based 14600:1E:7C = Address_Based 147C8:84:47 = Address_Based 148D0:8A:55 = Address_Based 14948:F0:7B = Address_Based 15000:0A:08 = Address_Based 15100:11:2D = Address_Based 152A8:54:B2 = Address_Based 153AC:7A:4D = Address_Based 154E8:EC:A3 = Address_Based 15598:52:3D = Address_Based 156 157# Some HID pointing devices have proven problematic behaviour if pairing is initiated with 158# them, resulting in no response for authentication request and ultimately resulting 159# in connection failure. 160# To avoid degrading the user experience with those devices, authentication request 161# is not requested explicitly. 162[INTEROP_DISABLE_AUTH_FOR_HID_POINTING] 16300:12:A1 = Address_Based 164Targus BT Laser Notebook Mouse = Name_Based 165 166# HID Keyboards that claim support for multitouch functionality have issue with 167# normal functioning of keyboard because of issues in USB HID kernel driver. 168# To avoid degrading the user experience with those devices, digitizer record 169# is removed from the report descriptor. 170[INTEROP_REMOVE_HID_DIG_DESCRIPTOR] 171Motorola Keyboard KZ500 = Name_Based 172Motorola Keyboard KZ500 v122 = Name_Based 1730x22b8-0x093D = Vndr_Prdt_Based 174 175# Some HID devices have problematic behaviour where when hid link is in Sniff 176# and DUT is in Slave role for SCO link ( not eSCO) any solution cannot maintain 177# the link as SCO scheduling over a short period will overlap with Sniff link due to 178# slave drift. 179# To avoid degrading the user experience with those devices, sniff is disabled from 180# link policy when sco is active, and enabled when sco is disabled. 181[INTEROP_DISABLE_SNIFF_DURING_SCO] 18220:4C:10 = Address_Based 1830x004C = Manufacturer_Based 184 185# Few carkits take long time to start sending AT commands 186# Increase AG_CONN TIMEOUT so that AG connection go through 187[INTEROP_INCREASE_AG_CONN_TIMEOUT] 18800:14:09 = Address_Based 18900:06:F5 = Address_Based 190 191# Some HOGP devices do not respond well when we switch from default LE conn parameters 192# to preferred conn params immediately post connection. Disable automatic switching to 193# preferred conn params for such devices and allow them to explicitly ask for it. 194[INTEROP_DISABLE_LE_CONN_PREFERRED_PARAMS] 195BSMBB09DS = Name_Based 196ELECOM = Name_Based 197 198# Disable role switch for headsets/car-kits 199# Some car kits allow role switch but when DUT initiates role switch 200# Remote will go to bad state and its leads to LMP time out. 201[INTEROP_DISABLE_ROLE_SWITCH] 202FC:C2:DE = Address_Based 20300:26:B4 = Address_Based 20400:04:3E = Address_Based 20500:23:01 = Address_Based 2061C:48:F9 = Address_Based 20700:54:AF = Address_Based 20800:26:E8 = Address_Based 20900:37:6D = Address_Based 2109C:3A:AF = Address_Based 21100:18:91 = Address_Based 2120C:E0:E4 = Address_Based 21300:07:04 = Address_Based 214A4:15:66 = Address_Based 215D0:13:1E = Address_Based 2168F:20:B4 = Address_Based 217A8:B9:B3 = Address_Based 21800:0D:F0 = Address_Based 21900:08:E0 = Address_Based 22000:25:52 = Address_Based 2211C:52:16 = Address_Based 22200:06:66 = Address_Based 22300:24:E4 = address_Based 22400:1C:D8 = Address_Based 225AC:FD:CE = Address_Based 22608:76:95 = Address_Based 22700:00:45 = Address_Based 228EB:06:EF = Address_Based 22974:95:EC = Address_Based 230AC:FD:93 = Address_Based 231AA:A8:AC = Address_Based 232B8:D5:0B = Address_Based 23350:1A:A5 = Address_Based 234E4:22:A5 = Address_Based 2354C:BC:42 = Address_Based 2369C:DF:03 = Address_Based 23700:0A:30 = Address_Based 23800:1D:86 = Address_Based 239 240# Disable role switch policy for headsets/car-kits 241# Some car kits initiate a role switch but won't initiate encryption 242# after role switch complete 243# B8:69:C2:9C:20:A8 - JBL Charge 2+ 244[INTEROP_DISABLE_ROLE_SWITCH_POLICY] 24500:0D:FD = Address_Based 24600:1B:DC = Address_Based 24700:07:04 = Address_Based 248A4:15:66 = Address_Based 24900:54:AF = Address_Based 25000:23:7F = Address_Based 251B8:69:C2 = Address_Based 252 253# certain remote A2DP sinks have issue playing back Music in AAC format. 254# disable AAC for those headsets so that it switch to SBC 255# 1. byte alignment issues with encoder (solo3::20:3c:ae,airpods::4c:32:75) 256# 2. remote sending 128 instead of 128k as bitrate (cadillac::28:a1:83, Chevrolet Tahoe, 257# buick_verano::ac:7a:4d(moved to name based, maruti_brezzai:28:a1:83, 258# cadillac cue::e0:75:0a, 30:C3:D9) 259# 3. remote supporting only 44.1Khz (BIG-JAM-BOX::00-21-3c,JVC CK::00:1D:86,BMW CK::9C:DF:03) 260[INTEROP_DISABLE_AAC_CODEC] 26128:A1:83 = Address_Based 262A0:14:3D = Address_Based 26390:03:B7 = Address_Based 26400:21:3c = Address_Based 2659C:DF:03 = Address_Based 266E0:75:0A = Address_Based 26748:F0:7B = Address_Based 26804:52:C7 = Address_Based 26930:C3:D9 = Address_Based 27000:E0:4C = Address_Based 271abramtek M1 = Name_Based 272Buick Verano = Name_Based 273 274# certain remote A2DP sinks have issue playing back Music in AAC VBR mode. 275# disable AAC VBR for those headsets so that it switch to either AAC CBR 276# or SBC codec 277# 0xb0-00-73-e2-61-dd ==> Name: Audi_MMI_2781 278# 0x28-83-35-7a-5f-23 ==> Name: SS Level Pro 279 280[INTEROP_DISABLE_AAC_VBR_CODEC] 281B0:00:73 = Address_Based 282Audi_MMI_2781 = Name_Based 28328:83:35 = Address_Based 284 285#Enable AAC encoder only for allowlist devices 286 287#0xb8-ad-3e-d2-4b-4b ==> Name: LG HBSA100 288#0xb8-ad-3e-e7-13-84 ==> Name: LG HBS1100 289#0x00-18-09-95-04-c1 ==> Name: MDR-XB80BS 290#0x00-18-09-95-04-c1 ==> Name: MDR-1RBT 291#0x7c-04-d0-9a-75-ad ==> Name: AirPods 292#24:F6:77:A7:57:F7 ==> Name: AirPods 293#A8:BE:27:03:4A:2F ==> Name: BeatsX 294#E0:D1:E6:09:AB:B2 ==> Name: MINIJAMBOX by Jawbone 295#2C:41:A1:3D:2B:B9 ==> Name: Bose SoundSport 296#2C:41:A1:48:FB:9A ==> Name: Bose QC35 II 297#94:B2:CC:42:C9:59 ==> Name: AVH-A208BT 298#DC:A4:CA:C0:C6:0B ==> Name: Beats Solo³ 299#BB:27:4D:41:BB:FC ==> Name: PH300 300#C4:30:18:9C:9F:C7 ==> Name: LG-PL7(C7) 301#6C:DD:BC:62:F3:75 ==> Name: Galaxy Buds+ (F375) 302#2C:4C:C6:AA:51:CC ==> Name: KW-V950BW 303#C6:58:19:40:88:EC ==> Name: S8 304#23:05:21:08:7E:12 ==> Name: TOZO-T10 305#2C:FD:B3:66:C2:27 ==> Name: Soundcore Life Q20 306#04:21:44:0C:0F:15 ==> Name: JBL Quantum800 307#6C:47:60:3D:2E:4F ==> Name: Sony SRS-XB13 308#B0:F1:A3:74:D1:D6 ==> Name: Ear Fun Free Pro 309#b4:9a:95:55:56:47 ==> Name: Realme Buds Air 2 Neo 310#00:88:79:59:F5:F6 ==> Name: TAOTRONICS Soundliberty 53 311#70:BF:92:5E:82:48 ==> Name: Jabra Elite 75t 312#9C:64:8B:5D:0D:0B ==> Name: Beats Pill+ 313#0x48-d6-d5-bc-79-43 ==> Name: Pixel Buds 7943 314#0x8c-de-52-df-79-8e ==> Name: SRS-X33 315#0x04-5d-4b-ec-2c-4c ==> Name: WH-1000XM2 316#0x04-5d-4b-40-e7-1e ==> Name: h.ear (MDR-100ABN) 317#0x04-5d-4b-df-3e-70 ==> Name: WI-1000X 318#0x04-5d-4b-eb-69-87 ==> Name: WH-H800 (h.ear) 319#0x04-5d-4b-66-bd-26 ==> Name: MDR-1000X 320#0x04-5d-4b-66-c1-f6 ==> Name: WI-H700 (h.ear) 321#0x04-5d-4b-99-f0-5d ==> Name: WH-H900N (h.ear) 322#0x10-4f-a8-e9-79-eb ==> Name: MDR-1ABT 323#0x10-4f-a8-15-b9-5a ==> Name: h.ear (MDR-EX750BT) 324#0xac-9b-0a-bd-1f-20 ==> Name: MDR-ZX770BN 325#0x04-52-c7-c5-d2-94 ==> Name: Bose QuietComfort 35 326#0x0c-e0-e4-64-26-a3 ==> Name: PLT_BBTPRO 327#0xa4-15-66-4b-4d-24 ==> Name: Tracks Air 328#0x00-1a-7d-82-36-4b ==> Name: 66 Audio BTS 329#0x88-e6-03-80-48-6b ==> Name: XB10 330#0xb8-69-c2-eb-ae-66 ==> Name: SRS-XB3 331#0x58-e2-8f-e9-09-7b ==> Name: BeatsStudio Wireless 332#0xE4-19-C1-DC-10-10 ==> Name: FreeBuds 3 333#0xa0-56-b2-2b-43-ec ==> Name: MB Bluetooth 334#0x1c-e6-1d-93-83-b5 ==> Name: Galaxy Buds pro(83B5) 335 336#CarKits 337#0x94-b2-cc-28-99-77 ==> Name: AVH-X5890BT ==>pioneer 338#0x74-5e-1c-98-88-64 ==> Name: AVH-X5790BT ==>pioneer 339#0x00-1d-86-a4-ea-a6 ==> Name: Car Multimedia ===>JVC 340#0x00-1d-86-a0-79-c2 ==> Name: DDX6 ==>kenwood 341#0x90-03-b7-6c-89-aa ==> Name: Parrot ASTEROID 342#0x30-c3-d9-85-34-ce ==> Name: MB Bluetooth 84389 343#0x00-02-5b-00-85-ca ==> Name: HATS_00025B0085E9 344#0xa0-56-b2-5b-cc-00 ==> Name: BMW Europe 345#0x94-e3-6d-dc-e4-d4 ==> Name: BMW Evo 346 347[INTEROP_ENABLE_AAC_CODEC] 348B8:AD:3E = Address_Based 349LG HBSA100 = Name_Based 350LG HBS1100 = Name_Based 35100:18:09 = Address_Based 352MDR-XB80BS = Name_Based 35300:18:09 = Address_Based 354MDR-1RBT = Name_Based 3557C:04:D0 = Address_Based 35624:F6:77 = Address_Based 357AirPods = Name_Based 35848:D6:D5 = Address_Based 359Pixel Buds 7943 = Name_Based 3608C:DE:52 = Address_Based 361SRS-X33 = Name_Based 36204:5D:4B = Address_Based 363WH-1000XM2 = Name_Based 364h.ear (MDR-100ABN) = Name_Based 365WI-1000X = Name_Based 366WH-H800 (h.ear) = Name_Based 367MDR-1000X = Name_Based 368WI-H700 (h.ear) = Name_Based 369WH-H900N (h.ear) = Name_Based 37010:4F:A8 = Address_Based 371MDR-1ABT = Name_Based 372h.ear (MDR-EX750BT) = Name_Based 373AC:9B:0A = Address_Based 374MDR-ZX770BN = Name_Based 37504:52:C7 = Address_Based 376Bose QuietComfort 35 = Name_Based 37794:B2:CC = Address_Based 378AVH-X5890BT = Name_Based 379AVH-A208BT = Name_Based 38074:5E:1C = Address_Based 381AVH-X5790BT = Name_Based 38200:1D:86 = Address_Based 383Car Multimedia = Name_Based 384DDX6 = Name_Based 38590:03:B7 = Address_Based 386Parrot ASTEROID = Name_Based 3870C:E0:E4 = Address_Based 388PLT_BBTPRO = Name_Based 389A4:15:66 = Address_Based 390Tracks Air = Name_Based 39100:1A:7D = Address_Based 39266 Audio BTS = Name_Based 39388:E6:03 = Address_Based 394XB10 = Name_Based 395B8:69:C2 = Address_Based 396SRS-XB3 = Name_Based 39730:C3:D9 = Address_Based 398MB Bluetooth 84389 = Name_Based 39900:02:5B = Address_Based 400HATS_00025B0085E9 = Name_Based 401A8:BE:27 = Address_Based 402BeatsX = Name_Based 403E0:D1:E6 = Address_Based 404MINIJAMBOX by Jawbone = Name_Based 4052C:41:A1 = Address_Based 406Bose SoundSport = Name_Based 407Bose QC35 II = Name_Based 408DC:A4:CA = Address_Based 409Beats Solo³ = Name_Based 41058:E2:8F = Address_Based 411BeatsStudio Wireless = Name_Based 412FC:4B:BC = Address_Based 413XAV-AX100 = Name_Based 41400:18:6b = Address_Based 415LG HBS730 = Name_Based 4168C:57:9B = Address_Based 417h.ear go (SRS-HG1) = Name_Based 41840:ED:98 = Address_Based 419FiiO BTR1K = Name_Based 4200C:A6:94 = Address_Based 421HK Soho Wireless = Name_Based 42200:09:A7 = Address_Based 423Beoplay H4 = Name_Based 42470:26:05 = Address_Based 425WF-SP700N = Name_Based 42648:D6:D5 = Address_Based 427Pixel Buds = Name_Based 42800:09:a7 = Address_Based 429Beoplay E8 = Name_Based 4302C:41:A1 = Address_Based 431Bose SoundWear = Name_Based 4322C:41:A1 = Address_Based 433Bose Free SoundSport = Name_Based 43400:18:09 = Address_Based 435Samsung Level On = Name_Based 436a0:56:b2 = Address_Based 437BMW 08939 = Name_Based 438MB Bluetooth = Name_Based 43994:e3:6d = Address_Based 440BMW 99999 = Name_Based 441E4:19:C1 = Address_Based 442FreeBuds 3 = Name_Based 44328:83:35 = Address_Based 444Level U Pro (5F23) = Name_Based 4451C:E6:1D = Address_Based 446Galaxy Buds Pro (83B5) = Name_Based 447BB:27:4D = Address_Based 448PH300 = Name_Based 449C4:30:18 = Address_Based 450LG-PL7(C7) = Name_Based 4516C:DD:BC = Address_Based 452Galaxy Buds+ (F375) = Name_Based 4532C:4C:C6 = Address_Based 454KW-V950BW = Name_Based 455C6:58:19 = Address_Based 456S8 = Name_Based 45723:05:21 = Address_Based 458TOZO-T10 = Name_Based 4592C:FD:B3 = Address_Based 460Soundcore Life Q20 = Name_Based 46104:21:44 = Address_Based 462JBL Quantum800 = Name_Based 4636C:47:60 = Address_Based 464Sony SRS-XB13 = Name_Based 465B0:F1:A3 = Address_Based 466Ear Fun Free Pro = Name_Based 467b4:9a:95 = Address_Based 468Realme Buds Air 2 Neo = Name_Based 46900:88:79 = Address_Based 470TAOTRONICS Soundliberty 53 = Name_Based 47170:BF:92 = Address_Based 472Jabra Elite 75t = Name_Based 4739C:64:8B = Address_Based 474Beats Pill+ = Name_Based 475#E0:D1:E6 = Address_Based 476#00:18:6b = Address_Based 477#20:3c:ae = Address_Based 478#04:88:e2 = Address_Based 479#4c:32:75 = Address_Based 480#00:14:07 = Address_Based 481#94:20:53 = Address_Based 482 483# Devices requiring this workaround do not handle Bluetooth PBAP 1.2 484# version correctly, leading them to go in bad state. So for better 485# interoperability respond with PBAP 1.1 as supported version. 486[INTEROP_ADV_PBAP_VER_1_1] 487 488# Devices requiring this workaround do not handle Bluetooth PBAP 1.1 489# version correctly, leading them to go in bad state. So for better 490# interoperability respond with PBAP 1.2 as supported version. 491[INTEROP_ADV_PBAP_VER_1_2] 492PTS = Name_Based 493 494# Devices requiring this workaround do not handle PBAP SDP request correctly, 495# and lead to connection failures. To prevent this scenario, device requiring this 496# workaorund need to avoid sending SDP request during pairing time 497[INTEROP_DISABLE_PCE_SDP_AFTER_PAIRING] 498AC:FD:CE = Address_Based 499 500# Devices requiring this workaround do not handle SSR max latency values as mentioned, 501# in their SDP HID Record properly and lead to connection timeout or lags. To prevent 502# such scenarios, device requiring this workaorund need to use specific ssr max latency 503# values. 504[INTEROP_UPDATE_HID_SSR_MAX_LAT] 50500:1B:DC-0x0012 = SSR_Max_Lat_Based 506DC:2C:26-0x0000 = SSR_Max_Lat_Based 50754:46:6B-0x0001 = SSR_Max_Lat_Based 508 509#Some device reports support for hf indicator, but it's HFP version as 1.5. The 510#behaviour violates spec and shall cause problem when DUT support HFP1.7, thus 511#denylisting such devices and remove remote's hf indicator bit if not support HFP1.7. 512[INTEROP_DISABLE_HF_INDICATOR] 51398:7b:f3 = Address_Based 514 515#Ensure that call active indicator is sent prior to SCO connection 516#request by adding some delay. Some remotes are very strict in the 517#order of call indicator and SCO connection request. 518#1 04:52:c7 - Bose Mini II sound link 519#2 24:A8:7D - Maruti Suzuki CIAZ 2018 - Delta 520[INTEROP_DELAY_SCO_FOR_MT_CALL] 52104:52:c7 = Address_Based 522AirPods Pro = Name_Based 52324:A8:7D = Address_Based 524f0:45:da = Address_Based 525 526# Some remotes ara taking longer to respond to +BCS during codec negotiation. 527# Disable codec negotiation and directly initiate SCO connection for those. 528# 1. M12 - 00:08:8a:f0:1d:8a 529# 2. HAVIT I39 - 55:55:55:67:0b:d7 530[INTEROP_DISABLE_CODEC_NEGOTIATION] 53100:08:8a = Address_Based 532JABRA EASYGO = Name_Based 53355:55:55 = Address_Based 534LG HBSF110 Master = Name_Based 535 536# Disallow sending Player Application Setting Commands for some CK as they are unable 537# to send Passthrough Command while Streaming is in progress 538# Porsche Panamera :: 74:6f:f7:8c:bf:61 539# BMW X3 :: a0:56:b2:4f:86:a8 540# Land Rover :: 00:00:2e:b0:12:5c 541# BMW USAX5 :: a0:56:b2:5a:7f:b0 542[INTEROP_DISABLE_PLAYER_APPLICATION_SETTING_CMDS] 54300:09:93 = Address_Based 54474:6f:f7 = Address_Based 545A0:56:B2:4F = Address_Based 54600:54:AF = Address_Based 54700:00:2E = Address_Based 548A0:56:B2:5A = Address_Based 549 550[INTEROP_DISABLE_CONNECTION_AFTER_COLLISION] 551A0:14:3D = Address_Based 552 553# Do not use supervision timeout value received from preferred connection 554# parameters, use 3s instead. Use with HID only. 555[INTEROP_HID_PREF_CONN_SUP_TIMEOUT_3S] 55608:62:66 = Address_Based 55738:2C:4A:C9 = Address_Based 55838:2C:4A:E6 = Address_Based 55954:A0:50:D9 = Address_Based 560AC:9E:17 = Address_Based 561F0:79:59 = Address_Based 562 563# Do not use AVDTP RECONFIGURE when reconfiguring A2DP streams. 564# Some A2DP Sink devices report SUCCESS to the AVDTP RECONFIGURE command, 565# but fail to play the reconfigured audio stream. 566[INTEROP_DISABLE_AVDTP_RECONFIGURE] 56700:1D:86 = Address_Based 568KMM-BT51*HD = Name_Based 569 570[INTEROP_GATTC_NO_SERVICE_CHANGED_IND] 571Pixel C Keyboard = Name_Based 572MiMouse = Name_Based 573HTC Fetch = Name_Based 574 575#Some LE devices have proven problematic behaviour if LE connection update is initiated with 576#them, resulting in no response after initiating LE connection update and ultimately resulting 577#in connection timeout. To avoid degrading the user experience with those devices, 578#LE connection update is not requested explicitly for those devices. 579[INTEROP_DISABLE_LE_CONN_UPDATES] 580LG Lighting = Name_Based 581KS_5w4Zu = Name_Based 582ZUK = Name_Based 583ITAG = Name_Based 584Pokemon GO Plus = Name_Based 585FeiZhiX8/X8Pro = Name_Based 586FeiZhiAPEX = Name_Based 587FeiZhiWee = Name_Based 588FeiZhi Wee 2T = Name_Based 589#Few remote sends avrcp browsing request just after host sends avrcp browsing request leading 590#collision which results in browsing channel open failure. For such devices, collision timer 591#of 1 sec is used avoid collision. 592#Porsche Macan 2018 :: 2c:dc:ad:08:91:89 593#Porsche Panamera :: 74:6f:f7:8c:bf:61 594[INTEROP_AVRCP_BROWSE_OPEN_CHANNEL_COLLISION] 5952c:dc:ad:08 = Address_Based 59674:6f:f7 = Address_Based 59790:03:b7 = Address_Based 59800:06:F5 = Address_Based 599 600#Some remote devices don't support sniff mode when the SCO is connected. 601#For such devices, disable sniff mode after SCO is connected and make 602#the link as active. 603#Benz Car kit :: 50:65:83:8e:1d:43 604#Sony Ear Duo :: 28:3f:69:ff:50:bd 605#AirPods 606#Airoha Technology Corp --> 0x0094 607[INTEROP_DISABLE_SNIFF_LINK_DURING_SCO] 60850:65:83 = Address_Based 60928:3f:69 = Address_Based 610AirPods = Name_Based 6110x0094 = Manufacturer_Based 612 613#For some remote devices, disable sniff mode during the call 614#as some remotes need call indicators in active mode 615#Leviathan Mini :: 10:b7:f6:03:38:b0 616[INTEROP_DISABLE_SNIFF_DURING_CALL] 61710:b7:f6 = Address_Based 618AirPods = Name_Based 619 620#Skip sending incoming call state to denylisted devices 621# 00:0E:9F : Porsche Carkit 622[INTEROP_SKIP_INCOMING_STATE] 62300:0E:9F = Address_Based 624 625#Nintendo Switch Pro Controller - does not set sniff interval dynamically. 626#Requires custom HID report command to change mode. 627[INTEROP_HID_HOST_LIMIT_SNIFF_INTERVAL] 62898:B6:E9 = Address_Based 629Pro Controller = Name_Based 630Joy-Con = Name_Based 631 632#For some remote devices disable setting of refresh_sig_timer while responding 633#to incoming AVDTP signalling. While incoming connection remote device is sending 634#set_config and delay report back to back, which is violating spec(As per the spec, 635#remote should wait for set_config response and then it should send delay report). 636#Due to which HOST is responding BAD_STATE for delay_report sent by remote, which 637#resulted in remote is going to bad state and sent AVDTP_OPEN with ACP Stream 638#Endpoint ID: 0, for which DUT responded with Error Code: BAD_ACP_SEID 639#04:4e:af:a8:a0:01 ==> Name: HB20 640[INTEROP_DISABLE_REFRESH_ACCEPT_SIG_TIMER] 64104:4E:AF = Address_Based 642HB20 = Name_Based 643HB 20 = Name_Based 644 645# List of Media Players allowed to be considered as potential 646# candidates of supporting AVRCP Browsing featute are to be 647# included in this Name Based Allowlist 648# Name Based Format addition must be made with the string having 649# Player's package Name (Not Player's displayable Name) like below: 650# Player's Package Name = Name Based 651# 652# Like below players are part of our Allowlist 653# Youtube(YT) Music = Name Based 654# Gaana = Name Based 655[INTEROP_BROWSE_PLAYER_ALLOW_LIST] 656com.google.android.apps.youtube.music = Name_Based 657com.gaana = Name_Based 658 659# For some certain remote devices, when a2dp is playing and music 660# player is paused, if we update avrcp paused to remote device, remote device will 661# not output audio even after avrcp becomes playing again. Denylist these devices 662# to not update avrcp paused to them when a2dp is playing. 663# This denylist is migrated from playerStateUpdateBlackListed of Avrcp_ext.java 664# bc-30-7e-5e-f6-27 => Name: Porsche BT 0310 665# bc-30-7e-8c-22-cb => Name: Audi MMI 1193 666# 2C-DC-AD-BB-2F-25 => Name: PORSCHE 667# 00-1e-43-14-f0-68 => Name: Audi MMI 4365 668# 9C:DF:03:D3:C0:17 => Name: Benz S600L 669# 00:0A:08:51:1E:E7 => Name: BMW530 670# 00-04-79-00-06-bc => Name: radius HP-BTL01 671# 28-A1-83-94-90-AE => Name: VW Radio 672# 24-df-6a-f4-0a-7e => Name: HUAWEI WATCH 673# 30-c3-d9-8d-5b-83 => Name: VW RadioBin 674[INTEROP_NOT_UPDATE_AVRCP_PAUSED_TO_REMOTE] 675BC:30:7E = Address_Based 6762C:DC:AD = Address_Based 67700:1E:43 = Address_Based 6789C:DF:03 = Address_Based 67900:0A:08 = Address_Based 68000:04:79 = Address_Based 68128:A1:83 = Address_Based 68224:df:6a = Address_Based 68330:C3:D9 = Address_Based 684Audi = Name_Based 685Porsche = Name_Based 686 687# Some certain devices reject DUT initiated connection 688# when DUT tries to connect other auto-connectable profiles 6s after 689# peer connects the first one. To avoid such race condition, raised 690# connect other profiles timeout to 10s to make sure there is no 691# connection rejection from remote because of connection collision. 692# This denylist is migrated from delayConnectTimeoutDevice 693# of PhonePolicy.java. 694# 00:23:3D => Name: volkswagen carkit 695[INTEROP_PHONE_POLICY_INCREASED_DELAY_CONNECT_OTHER_PROFILES] 69600:23:3D = Address_Based 697 698# As per the implementation for the incoming connection scenario if one 699# profile got connected and other profile didn't get connected, DUT starts 700# connect other profiles after 6sec timeout. For some certain device, 701# this timeout has been reduced to 2sec for triggering auto connect to 702# otherprofiles from DUT. So that Audio will get routed to BT device with 703# reduced delay. 704# This denylist is migrated from delayReducedConnectTimeoutDevice 705# of PhonePolicy.java. 706# 10:4F:A8 => Name: h.ear (MDR-EX750BT) 707[INTEROP_PHONE_POLICY_REDUCED_DELAY_CONNECT_OTHER_PROFILES] 70810:4F:A8 = Address_Based 709 710# Some remote devices are misbehaving when there is an active 711# call and MT call is in progress. We send call indicators for 712# active call and MT Call in progess. When active call is 713# terminated, we send call end indicator only to remote. This 714# is confusing remote and remotes are going into bad state. 715# Denylist remote devices to disconnect SCO when active call is 716# ended, fake MT call indicator again with some delay. 717# This denylist is migrated from BlacklistDeviceAddrToDelayCallInd 718# of HeadsetStateMachine.java. 719# 00:15:83 => Name: Beiqi Carkit 720# 2a:eb:00 => Name: BIAC Carkit 721# 30:53:00 => Name: BIAC series 722# 00:17:53 => Name: ADAYO Carkit 723# 40:ef:4c => Name: Road Rover Carkit 724# 00:07:04 => Name: Tiguan RNS315 725[INTEROP_HFP_FAKE_INCOMING_CALL_INDICATOR] 72600:15:83 = Address_Based 7272a:eb:00 = Address_Based 72830:53:00 = Address_Based 72900:17:53 = Address_Based 73040:ef:4c = Address_Based 73100:07:04 = Address_Based 73218:48:ca = Address_Based 733 734# Some certain devices not rendering VOIP call audio if call indicators 735# are sent with a delay. Denylist the devices to send call 736# indicators back to back. 737# This denylist is migrated from BlacklistDeviceForSendingVOIPCallIndsBackToBack 738# of HeadsetStateMachine.java. 739# f4:15:fd => Name: Rongwei 360 Car 740[INTEROP_HFP_SEND_CALL_INDICATORS_BACK_TO_BACK] 741f4:15:fd = Address_Based 74294:B2:CC:52 = Address_Based 74394:B2:CC:4C = Address_Based 744 745# Some CKs need SCO immediately after SLC if there is an ongoing call on phone 746[INTEROP_SETUP_SCO_WITH_NO_DELAY_AFTER_SLC_DURING_CALL] 747Geely_BT = Name_Based 748#Some LE mouses need preferred connection parameters 749[INTEROP_ENABLE_PREFERRED_CONN_PARAMETER] 750Microsoft Bluetooth Mouse = Name_Based 751 752# Some CKs drop SCO connection immediately after accept, 753# Retry setup SCO once for those remote devices. 754[INTEROP_RETRY_SCO_AFTER_REMOTE_REJECT_SCO] 755Bose Mini II SoundLink = Name_Based 756Honda HFT = Name_Based 757HAVAL M6 = Name_Based 758 759# some remotes not able to render the voice for VOIP calls if call 760# ougoing indicators are sent and sco is opened immediately. 761# Adding such devices to denylist, to do the sco open after 762# indicators are sent with slight delay. 763# BD_ADDR: 00:09:93:a6:c5:4d => Name: VW Radio 764[INTEROP_DELAY_SCO_FOR_MO_CALL] 76500:09:93 = Address_Based 766 767# some remote hid devices cannot work properly as they laod special hid usb driver in kernel, 768# so modify their vid/pid so that generic hid driver are loaded. 769[INTEROP_CHANGE_HID_VID_PID] 770RK-Bluetooth keyboard = Name_Based 771CK87BT = Name_Based 7720x05ac-0x0255 = Vndr_Prdt_Based 773 774# Some remote always set DUT as slave during connection which restricts 775# setting supervision timeout to the required value. This interop will allow 776# local device to be only master as role switch would be restricted during connection. 777[INTEROP_DISABLE_ROLE_SWITCH_DURING_CONNECTION] 77848:eb:62 = Address_Based 779 780# Disable auto repairing 781[INTEROP_AUTO_RETRY_PAIRING] 7829c:df:03 = Address_Based 783 784# Disable Name Request 785[INTEROP_DISABLE_NAME_REQUEST] 786d4:7a:e2 = Address_Based 787 788# AVRCP 1_4 Only device 789[INTEROP_AVRCP_1_4_ONLY] 79048:f0:7b = Address_Based 79190:03:b7 = Address_Based 79228:A1:83 = Address_Based 79364:d4:bd = Address_Based 794fc:35:e6 = Address_Based 79500:17:53 = Address_Based 7969c:8d:7c = Address_Based 7970c:d9:c1 = Address_Based 798 799# Few remote devices do not understand AVRCP version greater than 1.3. For these 800# devices, we would like to denylist them and advertise AVRCP version as 1.3 801[INTEROP_AVRCP_1_3_ONLY] 80200:0a:08 = Address_Based 8039c:df:03 = Address_Based 80434:38:fe = Address_Based 805 806# Disable Sniff 807[INTEROP_DISABLE_SNIFF] 80844:ea:d8 = Address_Based 809 810# HFP AT+BIND missing 811[INTEROP_SLC_SKIP_BIND_COMMAND] 81294:b2:cc:30 = Address_Based 813 814# Some remote devices have LMP version in [5.0, 5.2] but do not support robust caching 815# or correctly response with an error. We disable the database hash lookup for such devices. 816[INTEROP_DISABLE_ROBUST_CACHING] 81708:9b:f1 = Address_Based 81820:be:cd = Address_Based 81930:34:22 = Address_Based 8203c:5c:f1 = Address_Based 82140:47:5e = Address_Based 82250:27:a9 = Address_Based 82364:97:14 = Address_Based 82464:c2:69 = Address_Based 82568:4a:76 = Address_Based 8266c:ae:f6 = Address_Based 82778:76:89 = Address_Based 82878:d6:d6 = Address_Based 82984:70:d7 = Address_Based 83098:ed:7e = Address_Based 8319c:0b:05 = Address_Based 8329c:57:bc = Address_Based 8339c:a5:70 = Address_Based 834a0:8e:24 = Address_Based 835ac:ec:85 = Address_Based 836b4:20:46 = Address_Based 837b4:b9:e6 = Address_Based 838c0:36:53 = Address_Based 839c4:f1:74 = Address_Based 840c8:b8:2f = Address_Based 841c8:e3:06 = Address_Based 842d4:05:de = Address_Based 843d4:3f:32 = Address_Based 844ec:74:27 = Address_Based 845f0:21:e0 = Address_Based 846f0:b6:61 = Address_Based 847fc:3f:a6 = Address_Based