AccessorySetupKit

I am trying to setup AccessorySetupKit. I have several questions:

  1. Is it possible to setup classic Bluetooth accessory?
  2. In documentation you say:

"Each display item’s ASDiscoveryDescriptor needs to have a bluetoothCompanyIdentifier or bluetoothNameSubstring, and at least one of the following accessory identifiers: bluetoothServiceUUID Either ssid or ssidPrefix, which needs to have a non-zero length. It’s an error to supply both SSID and SSIDPrefix, and your app crashes if you do. A bluetoothManufacturerDataBlob and bluetoothManufacturerDataMask that are the same length. A bluetoothServiceDataBlob and bluetoothServiceDataMask that are the same length."

Is it possible to have only bluetoothCompanyIdentifier and UUID ?

Answered by Engineer in 796482022

Hello and thank you for reaching out.

  1. Bluetooth classic devices cannot be set up by their own with ASK. If an LE device supports Cross Transport Key Derivation, its counterpart classic device will be set up as part of the process
  2. It's possible to have both bluetoothCompanyIdentifier and bluetoothServiceUUID in the same display item. Keep in mind that having that, means that the accessory must advertise with both of those in the payload at the same time to qualify for setup. Also remember that you can add blob/mask for each of these fields as well. bluetoothNameSubstring is optional and may be added if either bluetoothCompanyIdentifier or bluetoothServiceUUID are specified.

I hope this clears up things, let me know if you need any further assistance !

Accepted Answer

Hello and thank you for reaching out.

  1. Bluetooth classic devices cannot be set up by their own with ASK. If an LE device supports Cross Transport Key Derivation, its counterpart classic device will be set up as part of the process
  2. It's possible to have both bluetoothCompanyIdentifier and bluetoothServiceUUID in the same display item. Keep in mind that having that, means that the accessory must advertise with both of those in the payload at the same time to qualify for setup. Also remember that you can add blob/mask for each of these fields as well. bluetoothNameSubstring is optional and may be added if either bluetoothCompanyIdentifier or bluetoothServiceUUID are specified.

I hope this clears up things, let me know if you need any further assistance !

@Engineer Can you please provide a way or piece of sample code how classic device will be set up as part of the process an LE device I do have a bluetooth device supports classic and LE both, LE connection is easy to be done but not classic as part of LE setup.

AccessorySetupKit
 
 
Q