1

我正在尝试使用我的摩托罗拉 RAZR 连接到基于 TI 的 CC2540 的 BLE 设备(我有来自 TI 的密钥卡,以及来自 connectblue OLP425 的另一个设备),到目前为止,我唯一的成功是市场上名为 Propagation 的应用程序我无权访问源代码。

我试图用这段代码连接到设备,但我最不明白的是 UUID,

我在 iPad 3 上下载了一个应用程序,发现一个设备具有以下 UUID 00000000-0000-0000-ff31-1a064f8c5966

private static final UUID SPP_UUID = UUID.fromString("00000000-0000-0000-ff31-1a064f8c5966");
BluetoothDevice bd  =BluetoothAdapter.getDefaultAdapter().getBondedDevices().iterator().next();
//I only have I device paired that is the Bluetooth Low Energy Device so using the first Device returned by the iterator is fine.
    try {
        BluetoothSocket bs = bd.createRfcommSocketToServiceRecord(UUID);
        bs.connect();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

我得到的只是 logcat 中的服务发现失败

在几乎所有的例子中,每个人都在使用

00000000-0000-1000-8000-00805f9b34fb

如果我在应用程序中走得更远,电池服务是 UUID 0x180f

我只想创建一个应用程序来读取此服务的值,这是一个简单的十进制值

过去有人成功与 BLE 设备配对吗?

谢谢你

乔纳森

4

1 回答 1

0

我已经能够使用心率监测器连接到我的 CC2540。我使用 CCDebugger 刷新了固件,并使用 0000180d-0000-1000-8000-00805f9b34fbas 的 UUID,我已经能够读取一个值。

使用 Motorola_BLE_profile 示例应用并进行一些修改。

primaryServices = mGattService.getGattPrimaryServices(device);
if (primaryServices == null) {
  String message = "Connection failed !";
  Toast.makeText(mContext, message, Toast.LENGTH_SHORT).show();
  return;
}
for (i = 0; i < primaryServices.length; i++) {
  Log.v(TAG, "primary service " + primaryServices[i]);
  if (primaryServices[i].equalsIgnoreCase(hrmUUID)) {
    try {
      status = mGattService.connectGatt(device, hrmUUID, callback1);
      if (status == true){
        mDevice = device;
        mLeState = CONNECTING;
        BluetoothLeReceiver.isDevicePickerPending = false;
      } else {
        String message = "Connection failed !";
        Toast.makeText(mContext, message, Toast.LENGTH_SHORT).show();   
      }

} catch (Exception e) {
  Log.e(TAG,"Exception while calling gatt Connect");
}
return;
if (i == primaryServices.length) {
 Log.v(TAG,"Primary Service not found");
 String message = "Connection failed !";
 Toast.makeText(mContext, message, Toast.LENGTH_SHORT).show();

}

于 2012-09-19T19:11:17.773 回答