如何使用Swift iOS将自定义蓝牙命令发送到ST17H26?

时间:2019-07-23 04:25:03

标签: ios swift bluetooth bluetooth-lowenergy

我正在尝试连接到设备(使用ST17H26 LE蓝牙IC的SP107E),该设备通过扬声器接收音频,并使连接的LED灯带对音乐产生反应。我正在制作一个测试版软件,可以连接到光带并覆盖此功能,并使自己的音乐反应从其硬件中piggy带。

我已使我的iOS Swift应用程序发现SP107E并与其连接。一旦与设备连接,它就会发现服务和外围设备的特征。 Console Output

这是发现外围设备特征的代码。发现不同的特征后,将其输出到控制台,如上图所示。

    func peripheral(_ peripheral: CBPeripheral, didDiscoverCharacteristicsFor service: CBService, error: Error?) {
        guard let characteristics = service.characteristics else {return}

        for characteristic in characteristics {
            print(characteristic)
            print("Properties \(characteristic.uuid): \(characteristic.properties) ")

            if(characteristic.properties.contains(.read)){
                print("\(characteristic.uuid): properties contains .read")
                peripheral.readValue(for: characteristic)
            }
            if(characteristic.properties.contains(.notify)){
                print("\(characteristic.uuid): properties contains .notify")
                peripheral.setNotifyValue(true, for: characteristic)
            }
        }
    }

现在我想将数据发送到SP107E;但是,Bluetooth并未使用UUIDFFE1的{​​{1}}记录此特性。我希望能够将数据发送到设备并更改LED从音乐中点亮的方式。该公司已经创建了一个应用程序,可以使用LE蓝牙与他们的设备配对,但是它已经过时了,不想做我需要做的事情。我应该如何使用这些服务并将数据发送到SP107E?

0 个答案:

没有答案