【发布时间】:2017-05-14 20:40:45
【问题描述】:
我正在尝试使用 bash 脚本将 ePuck 机器人与 Linux 自动绑定/配对(不连接)。我对 bluetoothctl 进行了很多研究,但没有发现任何真正有用的东西。问题是 ePuck 使用固定针,所以每次我想绑定/配对它时我都必须手动输入针(我每次完成工作后都会移除/取消配对 ePuck,这就是我必须重新输入针的原因每次)。
它不应该是一个 bashscript。我听说我也可以用 python 做到这一点。但我是 Linux 和编码方面的新手,所以这就是我问的原因。
这是我目前所拥有的(2228 是 ePuck 的引脚):
#!/bin/bash
##first tried with EOF
bluetoothctl <<EOF
power on
agnet on
scan on
pair 10:00:E8:AD:77:31
2228
EOF
##then with echo -e
echo -e 'power on\nagent on\nscan on\npair 10:00:E8:AD:77:31\n2228\n' | bluetoothctl
我不确切知道如何使用 EOF 或 echo -e,但我从互联网上获得了这个解决方案。在这两种方式中,都没有进行配对。好像 bluetoothctl 退出太快了。
【问题讨论】:
-
如何手动配对?
-
首先打开 bluetoothctl 然后输入所有命令和 pin ..就像在 EOF 中的 echo -e 语句或上面一样.. 手动它可以正常工作
-
那不一样,估计有提示。您可能会发现
expect很有用。 -
expect 似乎很有趣,但以前从未使用或知道它。我试试,谢谢
标签: linux bash bluetooth bluez