CoreBluetooth didDiscoverPeripheral não está sendo chamado no Swift

Tenho 99% de certeza de que segui as instruções para configurarCoreBluetooth corretamente. Não importa o que eu faça, quando executo este aplicativo no meu iPad mini, o Bluetooth está dizendo que está ligado. Ele está dizendo que está procurando dispositivos, mas não encontra absolutamente nenhum dispositivo. Se eu for ao menu Bluetooth no dispositivo, vejo outros dispositivos sendo descobertos. Eu inicializo oCBCentralManager. ConfigureicentralManagerDidUpdateState. Quando isso está certo, o bluetooth está pronto, ele chamacentralManager.scanForPeripheralsWithServices. Tudo isso está acontecendo corretamente. Mas minha função delegadacentralManager(central: CBCentralManager!, didDiscoverPeripheral peripheral: CBPeripheral!, advertisementData: [NSObject : AnyObject]!, RSSI: NSNumber!) nunca é chamado. Meu código é muito simples. Talvez esteja faltando alguma coisa, mas fui capaz de confirmar que meu Macbook é um dispositivo BTLE e meu ipad mini também é um dispositivo BTLE. Aqui está o meu código.

import UIKit
import CoreBluetooth

class ViewController: UIViewController, CBCentralManagerDelegate {

    var centralManager:CBCentralManager!
    var blueToothReady = false

    override func viewDidLoad() {
        super.viewDidLoad()
        startUpCentralManager()
    }

    func startUpCentralManager() {
        println("Initializing central manager")
        centralManager = CBCentralManager(delegate: self, queue: nil)
    }

    func discoverDevices() {
        println("discovering devices")
        centralManager.scanForPeripheralsWithServices(nil, options: nil)
    }

    func centralManager(central: CBCentralManager!, didDiscoverPeripheral peripheral: CBPeripheral!, advertisementData: [NSObject : AnyObject]!, RSSI: NSNumber!) {
        println("Discovered \(peripheral.name)")
    }

    func centralManagerDidUpdateState(central: CBCentralManager!) {
        println("checking state")
        switch (central.state) {
            case .PoweredOff:
            println("CoreBluetooth BLE hardware is powered off")

            case .PoweredOn:
            println("CoreBluetooth BLE hardware is powered on and ready")
            blueToothReady = true;

            case .Resetting:
            println("CoreBluetooth BLE hardware is resetting")

            case .Unauthorized:
            println("CoreBluetooth BLE state is unauthorized")

            case .Unknown:
            println("CoreBluetooth BLE state is unknown");

            case .Unsupported:
            println("CoreBluetooth BLE hardware is unsupported on this platform");

        }
        if blueToothReady {
            discoverDevices()
        }
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

}

questionAnswers(1)

yourAnswerToTheQuestion