<!--
{
  "availability" : [
    "iOS: 8.0.0 -",
    "iPadOS: 8.0.0 -",
    "macCatalyst: 13.1.0 -",
    "visionOS: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "CoreAudioKit",
  "identifier" : "/documentation/CoreAudioKit/CABTMIDICentralViewController",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "CoreAudioKit"
    ],
    "preciseIdentifier" : "c:objc(cs)CABTMIDICentralViewController"
  },
  "title" : "CABTMIDICentralViewController"
}
-->

# CABTMIDICentralViewController

A view controller that displays nearby Bluetooth-based MIDI peripherals.

```
class CABTMIDICentralViewController
```

## Overview

To let the user search for nearby MIDI peripherals, create a new [`CABTMIDICentralViewController`](/documentation/CoreAudioKit/CABTMIDICentralViewController) object and then either present it modally or push it onto a <doc://com.apple.documentation/documentation/UIKit/UINavigationController> view controller. No other configuration of the object is necessary. Once the user interface is visible, the iOS device finds nearby peripherals and displays them to the user. If the user selects a peripheral, it’s automatically paired with this iOS device. The [`CABTMIDICentralViewController`](/documentation/CoreAudioKit/CABTMIDICentralViewController) object manages its own user interface and is dismissed automatically.

Once connected, the peripheral appears as a MIDI device, just like any other connected MIDI device. MIDI commands sent to the peripheral are automatically played. For more information, see <doc://com.apple.documentation/documentation/CoreMIDI>.

## Relationships

### Conforms To

[`Sendable`](/documentation/Swift/Sendable)

[`UIActivityItemsConfigurationProviding`](/documentation/UIKit/UIActivityItemsConfigurationProviding)

[`UIFocusEnvironment`](/documentation/UIKit/UIFocusEnvironment)

[`CustomStringConvertible`](/documentation/Swift/CustomStringConvertible)

[`NSExtensionRequestHandling`](/documentation/Foundation/NSExtensionRequestHandling)

[`UITraitEnvironment`](/documentation/UIKit/UITraitEnvironment)

[`UIUserActivityRestoring`](/documentation/UIKit/UIUserActivityRestoring)

[`UITraitChangeObservable-67e94`](/documentation/UIKit/UITraitChangeObservable-67e94)

[`UIAppearanceContainer`](/documentation/UIKit/UIAppearanceContainer)

[`UIContentContainer`](/documentation/UIKit/UIContentContainer)

[`NSCoding`](/documentation/Foundation/NSCoding)

[`UITableViewDelegate`](/documentation/UIKit/UITableViewDelegate)

[`Equatable`](/documentation/Swift/Equatable)

[`CVarArg`](/documentation/Swift/CVarArg)

[`Hashable`](/documentation/Swift/Hashable)

[`UIStateRestoring`](/documentation/UIKit/UIStateRestoring)

[`UIScrollViewDelegate`](/documentation/UIKit/UIScrollViewDelegate)

[`UITableViewDataSource`](/documentation/UIKit/UITableViewDataSource)

[`NSObjectProtocol`](/documentation/ObjectiveC/NSObjectProtocol)

[`UIPasteConfigurationSupporting`](/documentation/UIKit/UIPasteConfigurationSupporting)

[`UIResponderStandardEditActions`](/documentation/UIKit/UIResponderStandardEditActions)

[`SendableMetatype`](/documentation/Swift/SendableMetatype)

[`NSTouchBarProvider`](/documentation/AppKit/NSTouchBarProvider)

[`CustomDebugStringConvertible`](/documentation/Swift/CustomDebugStringConvertible)

### Inherits From

[`UITableViewController`](/documentation/UIKit/UITableViewController)

---

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)