<!--
{
  "availability" : [
    "iOS: 26.4.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "AudioAccessoryKit",
  "identifier" : "/documentation/AudioAccessoryKit/AccessoryControlDevice",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "AudioAccessoryKit"
    ],
    "preciseIdentifier" : "s:17AudioAccessoryKit0B13ControlDeviceC"
  },
  "title" : "AccessoryControlDevice"
}
-->

# AccessoryControlDevice

A configuration object that manages audio accessory capabilities and state.

```
final class AccessoryControlDevice
```

## Overview

This class registers your paired audio accessory with the system and provides updates about your device’s state changes. The configuration lets the system intelligently switch the audio output device, based on information you provide the system, such as placement and connected devices.

## Topics

### Accessing the current configuration

[`static func current(for: ASAccessory) throws -> AccessoryControlDevice`](/documentation/AudioAccessoryKit/AccessoryControlDevice/current(for:))

Retrieves the accessory’s current configuration.

### Registering the device

[`static func register(ASAccessory, AccessoryControlDevice.Configuration) async throws`](/documentation/AudioAccessoryKit/AccessoryControlDevice/register(_:_:))

Registers the audio accessory with the system and activates its configured capabilities.

### Updating device state

[`func update(AccessoryControlDevice.Configuration) async throws`](/documentation/AudioAccessoryKit/AccessoryControlDevice/update(_:))

Updates the accessory’s configuration.

### Inspecting the accessory

[`let accessory: ASAccessory`](/documentation/AudioAccessoryKit/AccessoryControlDevice/accessory)

An AccessorySetupKit accessory that represents the audio device.

[`var configuration: AccessoryControlDevice.Configuration`](/documentation/AudioAccessoryKit/AccessoryControlDevice/configuration-swift.property)

The current configuration of the device.

### Defining device characteristics

[`enum Placement`](/documentation/AudioAccessoryKit/AccessoryControlDevice/Placement)

The physical placement of an audio accessory.

[`struct Capabilities`](/documentation/AudioAccessoryKit/AccessoryControlDevice/Capabilities)

A set of capabilities that an audio accessory supports.

[`struct Configuration`](/documentation/AudioAccessoryKit/AccessoryControlDevice/Configuration-swift.struct)

The configuration for an accessory.

### Handling errors

[`enum Error`](/documentation/AudioAccessoryKit/AccessoryControlDevice/Error)

An error that occurs during audio accessory configuration operations.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)