问题标签 [bluez]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
353 浏览

bluetooth - Webos 上的蓝牙架构

webos中用于bluez连接的IPC机制是什么,也用于在webos中开发任何蓝牙配置文件,是公开的正确方法还是蓝牙,有人可以解释一下luna总线与bluez的交互吗?

0 投票
1 回答
1712 浏览

qt - QDBusAbstractAdaptor 对象不导出实现的 dbus 接口

我正在尝试使用 Qt 及其 DBus 功能为 BlueZ v5.5 实现配对代理。

我有一个由我称为 PairingAgentAdaptor 的 qdbusxml2cpp 工具生成的适配器类和一个具有实现方法 (PairingAgent) 的类,我在适配器类的实例化时作为参数给出。

我可以将对象注册为新代理,BlueZ 守护进程说我的代理已注册。如果我尝试将手机与计算机配对,BlueZ 守护程序会显示:“对象路径 '/pairing/agent' 中没有这样的接口 'org.bluez.Agent1'。”

我不知道我做错了什么。你能给我一些提示吗?

亲切的问候迈克尔


代码:

主文件

配对代理适配器.h

0 投票
2 回答
3382 浏览

python - Python PyBluez 连接到受密码保护的设备

我正在使用 Python 开发一个应用程序(当前为 2.7,如有必要可以切换到 3.3),它应该:

  1. 检测蓝牙设备(指夹脉搏血氧仪,如果您有兴趣)。
  2. 与设备建立连接(受密码保护)
  3. 将设备中的数据流式传输到我的计算机
  4. 对数据进行更多(当前无关的)编程

为此,我使用 Python 的 PyBluez 库,因为它可能是我找到的与 Windows 和 Python2.7 兼容的文档最多的库(遗憾的是仍然很少)。

我对套接字编程很陌生,所以这可能是一个简单的问题。我遇到的问题是我似乎无法弄清楚如何连接到设备,因为它受密码保护。我可以毫无问题地找到它并检索它的地址,我只是不知道连接时使用哪个端口或如何输入密码。

谢谢你的帮助!

参考信息:使用的
脉搏血氧仪: http: //www.echostore.com/wireless-oximeter-cms50e.html
PyBluez 库:http ://pybluez.googlecode.com/svn/www/docs-0.7/index.html

0 投票
1 回答
8047 浏览

android - Android 和 Linux (RPi) 之间的蓝牙连接在第一次写入操作时丢失

所以我一直在做一个项目,其中运行 Android(API 级别 = 14)的设备必须通过蓝牙连接到运行 Linux(具体来说:Raspberry Pi)的服务器。建立连接后,应用程序会向 RPi 发送加密的 XML 字符串。RPi 必须解密此字符串、解析 XML 并执行相应的操作。操作的结果将发送回 Android 设备。

到目前为止,我已经设法在应用程序和 RPi(运行最新版本的Bluez 包)之间建立了连接。RPi 有一个来自 Targus 的蓝牙 4.0 加密狗。我被困在的地方是当我尝试将字符串从应用程序发送到 RPi 时。到那时,蓝牙套接字似乎已关闭。Logcat 给出消息Connection reset by peer

用于创建套接字的代码如下:

Logcat输出如下:

在 RPi 方面,我实际上是从PyBluez包中运行以下示例服务器脚本:

我已经尝试了我在 SO 上阅读的帖子建议的各种 UUID,包括00001101-0000-1000-8000-00805F9B34FB,94f39d29-7d6d-437d-973b-fba39e49d4ee00000003-0000-1000-8000-00805F9B34FB(在连接的两端总是相同的)。似乎第一个是正确的,因为在使用其他 UUID 时我什至无法建立连接。

RPi 重置连接的原因可能是什么?如果有人能指出我正确的方向,我将不胜感激。

0 投票
1 回答
3551 浏览

android - 如何在 Debian 上连接 pybluez RFCOMM 服务器套接字?

我在带有 pybluez 框架的 python 中有这些片段:

而且我在Android中有这个其他片段来连接pybluez rfcomm服务器套接字:

我的问题是 Android 设备无法连接到 pybluez 套接字。我认为我用来连接的方式是错误的,我不知道如何正确连接或宣传我的服务器套接字

0 投票
0 回答
2971 浏览

android - 如何使用 Bluez 将 Android 手机连接到 PC

我正在开发一个简单地将手机与计算机连接起来的 Android 应用程序。

我已经用这个命令(从命令行/控制台)连接了两台计算机:服务器监听这个:

客户端通过以下方式连接到服务器:

这工作正常。(我正在使用带有 bluez 的 Linux)它在每台机器的 /dev 中生成一个 rfcomm4 设备,我可以像串行端口一样发送和接收它。

当我想从安卓手机上做到这一点时,问题就来了。首先,在一台计算机上,我像这样启动服务器:

然后,在一个新线程中的 android 应用程序(使用 eclipse 和 android sdk 制作)中,我执行以下操作:

但是连接永远不会出现在服务器上......有些变量我无法完全理解。那个 UUID ......什么是精确的?我已经阅读并阅读,它说频道进入那个长字符串......但是......如何?如何将频道 15(我在服务器中收听的频道)放入 uuid。其他文章说 uuid 是预先建立的。而对于 rfcomm 它去那个 uuid ......

我不确定我是否正在使用 bluez 2.25 在 android 手机和 linux PC 之间进行简单的通信(如聊天)。(不能更改服务器中的此版本)。如果我的方法是错误的,我会感谢有人告诉我该怎么做。

非常感谢!


@ashish 谢谢回复!!

我像你在电脑上说的那样做 hcidump,当我用 hciconfig hci0 up 设备时,如果给我这个:

然后......当我尝试连接(从 android-phone 到带有我在第一篇文章中使用通用 RFCOMM UUID 提供的代码的计算机)时,hcidump 给了我这个:

但是计算机服务器保持不变:

所以电话设备无法与计算机连接......(显然)但是......为什么?你知道我做错了什么吗?

我的目标是在每个设备中获得一个 rfcommX 端口来更改消息...(就像聊天一样)

0 投票
6 回答
35488 浏览

linux - 在 Linux 命令行上以编程方式删除所有蓝牙设备

我可以使用 hcitool 或我的 C 程序扫描所有可用的蓝牙设备。

我可以将设备的地址与简单代理 python 脚本配对。

我想知道我是否也可以使用 hcitool、hciconfig 或某种蓝牙命令删除配对设备。

我知道 hci0 控制器检测到的设备信息存储在 /var/lib/bluetooth/XX:XX:XX:XX:XX:XX 中,其中 XX:XX:XX:XX:XX 是 hci 控制器的地址.

这对于测试配对、连接和断开设备很有用。

0 投票
1 回答
1266 浏览

python - pyBluez python 服务器 - 手机看不到我的服务器

首先,如果我的英语不是很好,我很抱歉,因为我是法国人。

我是使用 pyBluez 进行蓝牙开发的初学者(我已经知道 TCP 和 UDP 套接字),我的服务器有点问题。当我运行以下代码时,我的计算机似乎处于监听状态,但是当我的手机(诺基亚 xpress 音乐 5800)尝试检测它时,它什么也看不到!

对我来说有两件令人惊讶的事情:1)我的代码中没有配置像“我的电脑”这样的名称的功能。也许我的手机找到了我的地址,但是因为它无法通过类似lookup_name() 的函数解析名称,它认为我的电脑没有打开?

2)当我替换serversock.bind(("",PORT_ANY))serversock.bind(("00:12:34:56:78:9A",PORT_ANY))00:12:34:56:78:9A 是 hciconfig 工具为我的蓝牙设备提供的地址时,我得到: _bluetooth.error: (98, 'Address already in use'

只是一个愚蠢的问题,因为我认为答案是肯定的,因为频道:是否可以在相同的蓝牙接口上监听多个程序。

我在root上运行程序

谢谢你

0 投票
1 回答
6683 浏览

linux - 如何开始使用适用于 Ubuntu 的蓝牙

我真的需要帮助开始。我想制作一个基本程序(用 C 语言),它可以读取蓝牙套接字并打印它发送的任何内容。我试图让 Bluez(按照这个:http ://hackgnar.com/article/installing-the-latest-bluez-software-in-ubuntu-12/它一直很好,直到最后的“make”然后没有运气, 不会使示例程序找不到蓝牙/bluetooth.h)。

我想我有希望的选择是:

  1. 有人可以告诉我 Bluez 的安装缺少什么以及如何开始使用它(编译等)
  2. bluez的替代品?笔记本电脑可以在我安装 bluez 之前进行蓝牙文件传输,所以我什至需要它来使用这个应用程序吗?
  3. 任何类型的综合 hello world(下载、安装、示例、编译和运行)

我有很强的编程背景,只是不是在 Linux 中(你可以掩盖 C 的东西,但请不要忽略 Linux/Ubuntu 的东西)。

谢谢!

0 投票
1 回答
2813 浏览

android - 从 android JB 4.1.1 中的命令行进行蓝牙配对

在我的参考板上,我使用的是 Android Jelly Bean 4.1.1。我想从命令行使用蓝牙。我知道启用/禁用蓝牙、扫描设备等命令,但我不知道如何从命令行与扫描的设备配对。Android Jelly Bean 4.1.1 正在为蓝牙使用 Bluez 堆栈。谁能帮助我,这样我就可以从命令行将我的板与其他蓝牙设备配对。谢谢。