【发布时间】:2011-12-23 06:38:49
【问题描述】:
我正在尝试在我的 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 在 115200 连接到 BlueSMiRF。
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);
}
}
我可以通过输入$$$ 来使用Putty 访问blueSMiRF 的命令模式。一切似乎都还好。我只是对服务类和设备类的设置有一点担心。这些分别设置为0x0000 和0x1f00 的出厂默认值,我想知道服务类是否可能需要设置为0x1101(SSP 的UUID)。
其他信息: 安卓版本 2.3.3 SL4A r4
【问题讨论】:
-
您可能想尝试在 Py4A 邮件列表中询问或检查 Py4A 问题。
标签: android python bluetooth arduino sl4a