Is the Accessory Picker designed to show duplicates of the same display item?

Like in the case that two products are advertising with the same company identifier, both matching a single display item passed in when displaying the accessory picker. Would it be expected for two items to show in the accessory picker, one for each advertising product?

Answered by Engineer in 890670022

If the discovered accessories have different OTA names broadcast by Bluetooth / Wi-Fi Aware, or Wi-Fi SSID, they will show up as different accessories in a swipe-able carousel.

If 2 discovered accessories have the same OTA name (the label shown below the image asset), we will only show one item, and whichever accessory was discovered last would be the one we connect to when user taps set up.

Accepted Answer

If the discovered accessories have different OTA names broadcast by Bluetooth / Wi-Fi Aware, or Wi-Fi SSID, they will show up as different accessories in a swipe-able carousel.

If 2 discovered accessories have the same OTA name (the label shown below the image asset), we will only show one item, and whichever accessory was discovered last would be the one we connect to when user taps set up.

OTA name? What would that be for a Bluetooth Peripheral advertising over BLE? I thought the label shown below the image asset came from the name provided in the display items passed in when displaying the accessory picker? Same as the asset itself.

As you can see in this UI, there are 2 names shown for a discovered accessory. the custom friendly name in the subtitle is the name you provided in your display item, while the OTA (Over the Air) hardware name label below the image is the over the air name the system discovered from the accessory's advertisement, which is not configured by your app, but directly read from the accessory itself.

Note: the OS does a best effort hardware name lookup. For a bluetooth accessory, we first check if there's a valid, non-empty string for the name from your BLE advertisement payload, if none, we fall back to the GAP name of the accessory, which could also be empty because it's only available to us after we've connected to it. In that case, we will not show the OTA hardware name in the UI under the image asset.

For a Wi-Fi Aware accessory, we extract the OTA hardware name from the accessory txtRecord using the key "pairingName" that you should implement on the accessory per our accessory guidelines.

Is the Accessory Picker designed to show duplicates of the same display item?
 
 
Q