问题标签 [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 投票
3 回答
4139 浏览

c - Linux蓝牙编程

我正在制作一个桌面应用程序来连接嵌入式设备。我打算使用 Windows,但由于缺乏适当的示例和文档,我决定使用 Linux bluez 开发。有人可以建议一个很好的资源来为 bluez 编程。我找到了麻省理工学院的文档,但仅此而已。

0 投票
1 回答
8889 浏览

android - 为 android 设置一个 pc 蓝牙服务器

可能重复:
在 Android 上使用蓝牙的服务发现失败异常

好吧,过去两三天我一直在阅读很多主题,似乎没有人问这个问题。

我正在为我的安卓设备编写一个 PC 端服务器,这是为了交换一些信息和一般调试。最终,我将连接到 SPP 设备来控制微控制器。

我已经使用以下(Android 到 pc)连接到 rfcomm 通道 11 并在我的 android 设备和我的 pc 之间交换数据。

方法 m = device.getClass().getMethod("createRfcommSocket", new Class[] { int.class }); tmp = (BluetoothSocket) m.invoke(设备, Integer.valueOf(11));

我尝试了 createRfcommSocketToServiceRecord(UUID) 方法,但绝对没有运气。

对于 PC 端,我一直在为 linux 使用 C Bluez 堆栈。我有以下代码注册服务并打开服务器套接字:

还有另一段代码,除了“sdptool browse local”,它可以验证服务记录是否在 pc 上运行:

对于 logcat,我得到了这个:

很抱歉用看似困难的问题和大量阅读内容来轰炸你们,但我已经研究这个问题一段时间了,我已经尝试了很多不同的方法来解决这个问题。

让我重申一下,我可以让它工作,但不能使用服务发现协议。尽管我只有 HTC Incredible 可供测试,但我在两台不同的计算机上尝试了几种不同的 UUID。

我还听到一些传言说 BT 堆栈不适用于 HTC Droid,但至少在 PC 交互方面并非如此。

0 投票
1 回答
943 浏览

bluetooth - BlueZ, do not require authentication

I'm working with BlueZ 3.x. I have a linux embedded device and I need to send and receive files using the bluetooth technology, with Obex. (Note: BlueZ 4.x doesn't even compile on our specific platform.)

I don't need PIN authentication, I even don't want it. It must remain as simple as possible for the end user.

I tried to set security none in hcid.conf but it doesn't seem to work.

So my question is:

  1. Is it possible to send &/ receive files using Obex on bluetooth?
  2. How to do it?
  3. Does bluetooth devices (e.g. mobile phone) requires authentication?
0 投票
1 回答
8661 浏览

android - Bluez 架构:解释这个架构

在这里我想了解bluez(蓝牙堆栈协议)的架构。

我了解如何在模块中启用蓝牙。它通过在这个蓝牙芯片中的 BT_EN 引脚启用。将此设备与HCI UARTBluez 连接后进行通信。

我想了解 bluez 架构及其工作原理。

在这里,我放了一张 bluez 概览图的图像。任何请解释我Bluez Core这张图中的内容。

在此处输入图像描述

请向我解释一下 bluez 在蓝牙设备中的工作原理。

0 投票
1 回答
964 浏览

android - Android 设备名称 == “BlueZ”?

我是 Android 开发新手,从源代码构建 4.0.3。build.prop 确实将我的设备列为“Incredible 2”,但在蓝牙设置中我的设备列为“BlueZ”。当然我可以更改它,但我想知道在源中处理的位置,以便我可以看到如何修复它。

0 投票
0 回答
3038 浏览

android - Android 未发现 Bluez 服务

我不知道会发生什么。我有一个使用 BlueZ 在我的笔记本电脑上开发的蓝牙应用程序。我已经设法创建了一个使用 Bluez 连接到该服务器的客户端,但我无法使用 Android 这样做。

手机似乎找不到设备/端口/服务:

找到以下部分 Bluez 服务器和 Android 的代码:

蓝兹

运行sdptool以检查服务是否已正确注册,我发现 UUID 与预期的不同。我在我的 android 应用程序上尝试了几个。

的输出sdptool browse --tree local

安卓

结果是我在调用时遇到异常connect()

任何帮助都非常受欢迎。我认为问题在于未正确定义但不知道的 UUID。

助教。

0 投票
2 回答
2326 浏览

java - 在 PC 上运行的 Bluez 应用程序用于监听 Android 设备

我想开发一个使用 Linux 蓝牙 API Bluez 的应用程序,意味着允许 Android 设备发送和接收数据。

对于 PC 端,我查看了以下代码: http: //people.csail.mit.edu/albert/bluez-intro/x502.html 因为 Android 使用 RFCOMM 协议,或者我猜因为无法手动设置协议.

由于在 Android 中只能使用 Java API(Bluez API 锁定)并且 SDP 不能很好地工作,所以我必须使用这个调用:

例如,当我将频道设置为 0xC (12) 时,这是命令返回的频道之一:

android应用程序可以正确连接到PC。

问题是我无法弄清楚允许两个应用程序通信的参数是什么。对于 PC 端,我只有一个值为 1 的端口号。对于 Android 端,我有一个分配给 SDP 可用服务的通道。但是 SDP 在 Android 中不起作用,所以我该怎么做呢?

任何帮助表示赞赏。谢谢

0 投票
2 回答
10291 浏览

c - C & socket.h 中的 Linux 蓝牙编程

我是新的 stackoverflow 用户!我之所以写,是因为在我的 KUbuntu 12.04 上使用 C 编程蓝牙时遇到了一些问题。

我正在尝试通过我在此 pdf 中找到的程序(启动连接)将设备(LEGO Mindstorm Brick)连接到我的笔记本: NXT_Bluetooth_Handout

我安装了以下软件包: - bluez-hcidump,通信调试工具 - bluez,Linux 蓝牙堆栈和相关工具 - libBluetooth3,BlueZ 库 - libBluetooth-dev,用于链接到 BlueZ 库的开发文件

主要是我遇到了两个问题:1)如果我只是尝试编译我得到的程序:

str2ba 是一个 BlueZ 函数,它应该可以工作...... ba2str 是这个库提供的另一个函数,它可以正常工作。

2)如果我修改代码以使用 ba2str 而不是 str2ba 函数,则会收到与套接字相关的错误:

问题是我没有套接字头是 sys/,实际上如果我运行:

有没有人知道如何解决这些问题?我希望以足够清晰的方式描述所有情况......我为我糟糕的英语道歉!

非常感谢!!

0 投票
2 回答
4619 浏览

c++ - 蓝牙:使用 Bluez 检测事件

  • 我们正在尝试检测 C/C++ 中的事件。
  • 我们在 Linux 上使用 Bluez 作为我们的蓝牙库。
  • 我们的目标是在触发该事件时运行外部脚本。
  • 具体来说,我们有一个摩托罗拉 H730 耳机,上面有一个按钮,我们正在寻找检测该按钮的按下。
  • 我们已经配对了蓝牙设备 (hcitool),我们可以连接到它 (bluez-test-audio),但有兴趣将该方法迁移到 C/C++。
  • 连接设备并按下按钮时 hcidump 的输出为:

    HCI 嗅探器 - 蓝牙数据包分析器 2.2 版
    设备:hci0 snap_len:1028 过滤器:0xffffffff

    HCI 事件:模式更改 (0x14) plen 6
    状态 0x00 句柄 21 模式 0x00 间隔 0
    模式:活动
    ACL 数据:句柄 21 个标志 0x02 dlen 17
    L2CAP(d):cid 0x0041 len 13 [psm 0]
    < ACL 数据:句柄 21 个标志0x00 dlen 14
    L2CAP(d):cid 0x0047 len 10 [psm 0]
    < ACL 数据:处理 21 个标志 0x00 dlen 22
    L2CAP(d):cid 0x0047 len 18 [psm 0]
    < ACL 数据:处理 21 个标志 0x00 dlen 22
    L2CAP (d):cid 0x0047 len 18 [psm 0]
    HCI 事件:已完成数据包的数量 (0x13) plen 5
    处理 21 个数据包 1
    ACL 数据:处理 21 个标志 0x02 dlen 18
    L2CAP(d):cid 0x0041 len 14 [psm 0]
    < ACL 数据:句柄 21 标志 0x00 dlen 14
    L2CAP(d):cid 0x0047 len 10 [psm 0]
    HCI 事件:已完成数据包数 (0x13) plen 5
    处理 21 个数据包 1
    HCI 事件:已完成数据包数 (0x13) plen 5
    处理 21 个数据包 1
    HCI 事件:数量已完成数据包 (0x13) plen 5
    处理 21 个数据包 1
    HCI 事件:模式更改 (0x14) plen 6
    状态 0x00 处理 21 模式 0x02 间隔 2048
    模式:嗅探

  • 我们一直在寻找蓝牙文档并没有取得太大的成功。
    我们如何使用 Bluez 在 C/C++ 中检测蓝牙事件?
0 投票
4 回答
30311 浏览

linux - c语言中的linux蓝牙编程

我正在尝试在 linux[ubuntu] 中运行 c 的基本代码来搜索蓝牙设备,但我遇到了一些问题。

通过使用 commandsudo apt-get install bluez来安装所需的 blueZ 库,表示 bluez 已经是最新版本。

bluetooth.h但是错误来了,在编译 C 源代码时无法找到和其他文件,与gcc -o simplescan simplescan.c -lbluetooth

是否有完整的库包,还是我必须下载这些头文件?

我正在关注这个链接