我在使用 Arduino 将 Android 设备连接到我的 HM10 时遇到问题。我已经设法将它与 iPhone 连接,但问题是在尝试使用 Android 时。它到达 function public boolean connect(final String address)
,这是一个在尝试连接到设备时调用的函数,但实际上并没有连接到设备。
我在这个项目中使用的代码之前已与 RedBearLabs BLE Shield 一起使用,并且该代码适用于该 BLE 设备。我的 iPhone Swift 代码也是如此,但是当更改为 HM10 时,我只需要更改 UUID,然后一切都很好。然而,这似乎不是我必须为 Android 做的唯一改变。
这些是我用于 Android 的 UUID:
public static String CLIENT_CHARACTERISTIC_CONFIG = "00002902-0000-1000-8000-00805f9b34fb";
public static String BLE_SHIELD_RX_TX = "0000FFF1-0000-1000-8000-00805f9b34fb";
public static String BLE_SHIELD_SERVICE = "0000FFF0-0000-1000-8000-00805f9b34fb";
我向制造商 (Feasycom) 询问了 BLE_SHIELD_SERVICE 和 BLE_SHIELD_RX_TX 的 UUID。
这些UUID用于iPhone(应该是一样的?):
var characteristicUUID = CBUUID(string:"FFF1")
var serviceUUID = CBUUID(string:"FFF0")
可能我忘了提一些重要的事情,所以请询问是否有什么不清楚的地方。