我正在尝试在我的 Andorid 手机(使用 SL4A)上运行一个简单的 python 脚本来连接到 BlueSMiRF 蓝牙调制解调器(基于 RN41 设备),但是无论我尝试什么,当我尝试时我都会收到以下错误连接。
java.io.IOException:无法启动服务发现
python脚本如下所示
import android
droid = android.Android()
droid.toggleBluetoothState(True)
result = droid.bluetoothConnect()
#result = droid.bluetoothConnect('00001101-0000-1000-8000-00805f9B34fb')
#result = droid.bluetoothConnect('00001101-0000-1000-8000-00805f9B34fb', '00:06:66:07:AE:44')
print repr(result)
droid.toggleBluetoothState(False)
我已经尝试bluetoothConnect()
了上面代码中显示的所有三种变体。如果我尝试前两种连接方法,我也可以blueSMiRF
在要连接的设备列表中看到 。
我的 arduino 草图(在 Arduino Mega 上运行)如下所示。它只是将字符从一个端口转发到另一个端口。Serial
在 9600 连接到我的笔记本电脑,Serial1
连接到BlueSMiRF
115200。
void setup ()
{
// initialise serial
Serial.begin(9600);
Serial1.begin(115200);
}
void loop ()
{
if (Serial1.available())
{
char c = Serial1.read();
Serial.print(c);
}
if (Serial.available())
{
char c = Serial.read();
Serial1.print(c);
}
}
我可以使用 PuttyblueSMiRF
通过键入来访问 的命令模式$$$
。一切似乎都还好。我对 Service Class 和 Device Class 的设置只有些担心。0x0000
这些分别设置为和的出厂默认值,0x1f00
我想知道是否需要将服务类设置为0x1101
(SSP 的 UUID)。
其他信息:Android 版本 2.3.3 SL4A r4