Ubuntu 14.04 LTS 上的 Microsoft Designer 鼠标(蓝牙 4.0)

Ubuntu 14.04 LTS 上的 Microsoft Designer 鼠标(蓝牙 4.0)

我刚买了一个微软设计师鼠标,规格在这里,(蓝牙 4.0),无法在 Ubuntu 14.04 中使用它。在 Windows 8(同一台笔记本电脑)上,它运行良好。

所以我搜索了一下,发现很多人都有同样的问题。显然问题是 ubuntu 14.04 目前只有 BlueZ 4.101,需要 BlueZ 5.x 才能支持蓝牙 4.0 低功耗设备,这似乎很难安装。有一个线从 2013 年 4 月开始一直运行到最近,一直存在这个问题,指出很难在 Ubuntu 上整合 Bluez 5.x。

有些人给出了一些不起作用的建议,包括安装PPA 导致我不得不重新安装 ubuntu(蓝牙无法打开并且 ubuntu 在关机时会无限期挂起):

那么,难道就没有解决办法了吗?虽然硬件支持蓝牙 4.0,但我无法在 Ubuntu 14.04 LTS 上使用蓝牙 4.0?还有其他 Linux 发行版支持蓝牙 4.0 吗(比如 Mint 或其他发行版)?

没有人明确地说没有解决方案,可能是因为非常有经验的用户可以根据自己的情况做一些事情。

看起来对 ubuntu 不太赞同。

提前谢谢。

答案1

我使用以下 PPA 和包安装使 Microsoft Designer Mouse 在 Ubuntu 14.04 上运行:

sudo apt-add-repository ppa:vidplace7/bluez5
sudo apt-add-repository ppa:blueman/ppa
sudo apt-get update
sudo apt-get install bluez
sudo apt-get install blueman

那么你需要重新启动 blueman 以防万一。

killall blueman-manager
blueman-applet &

答案2

更新:警告 - 对于某些用户(例如下面的@kalamalka-kid),以下内容已完全破坏了他们的系统设置。请谨慎操作。

我有个好消息——经过一天半的全职黑客攻击和绞尽脑汁,我终于让“低能耗”蓝牙 4.0 Microsoft Designer 鼠标与我的 DELL XPS 13 笔记本电脑(博通蓝牙芯片)可靠地配合使用。Linux 太棒了!:D

在这里记录下来,以便处于同样境况的人不必经历同样的痛苦。

首先,我按照LTS 支持堆栈页面以获得在 14.04 上运行的良好新内核 3.19。

  • sudo apt-get install --install-recommends linux-generic-lts-vivid xserver-xorg-core-lts-vivid xserver-xorg-lts-vivid xserver-xorg-video-all-lts-vivid xserver-xorg-input-all-lts-vivid libwayland-egl1-mesa-lts-vivid
  • apt-get dist-upgrade此后我还必须实际安装新的内核包。

这彻底破坏了我的蓝牙,因为我有一个需要自定义固件的 Broadcom 芯片(请参阅下文以了解如何修复)。

我卸载了笔记本电脑上的所有蓝牙组件,重新开始。卸载时 PPAbluez中的软件包vidplace7/bluez5挂起了。我在/var/lib/dpkg/info/bluez.prerm执行卸载命令之前进行了编辑,删除了该invoke-rc.d行并将其替换为,从而解决了此echo "no bluetooth stopping!"问题。此方法有效,软件包将按照以下步骤卸载:

  • dpkg -l | grep blue将为您提供所有蓝牙软件包的列表。
  • apt-get remove --purge bluez bluetooth blueman...列出的所有软件包将卸载所有内容。

删除所有蓝牙软件包后,删除损坏的 bluez PPA:

  • sudo add-apt-repository --remove ppa:vidplace7/bluez5

然后添加以下 PPA,它具有不崩溃的版本bluez

  • sudo apt-add-repository ppa:timchen119/bluez5-trusty
  • apt-get install bluez

由于 Dell XPS 13 配备了博通芯片,因此需要自定义固件。以下固件安装步骤仅适用于该芯片。我根据系统日志中的以下几行发现了问题:

kernel: bluetooth hci0: Direct firmware load for brcm/BCM20702A0-0a5c-216f.hcd failed with error -2
kernel: Bluetooth: hci0: BCM: patch brcm/BCM20702A0-0a5c-216f.hcd not found

所以我不得不按照这些说明重新安装固件

  • 获取驱动程序微软在这里
  • 用 打开它cabextract
  • 转换文件并保存到固件位置:hex2hcd BCM20702A1_001.002.014.1443.1572.hex /lib/firmware/brcm/BCM20702A0-0a5c-216f.hcd -请注意,对于 LTS 内核 3.19仅有的该版本的固件可以工作。我先尝试了更高版本,但没有工作。
  • 确保你关闭笔记本电脑并重新打开不要只是重新启动。

一旦启动并再次运行,蓝牙应该就可以工作了,您可以安装例如blueman连接到鼠标。您也可以像这样在命令行上手动连接鼠标(首先按住下面的按钮 3 秒钟以将其置于配对模式):

# bluetoothctl 
[NEW] Controller XX:XX:XX:XX:XX:XX YourDevice [default]
[bluetooth]# agent KeyboardOnly 
Agent registered
[bluetooth]# default-agent 
Default agent request successful
[bluetooth]# scan on
Discovery started
[CHG] Controller XX:XX:XX:XX:XX:XX Discovering: yes
[NEW] Device YY:YY:YY:YY:YY:YY Designer Mouse
[bluetooth]# pair YY:YY:YY:YY:YY:YY
Attempting to pair with YY:YY:YY:YY:YY:YY
[CHG] Device YY:YY:YY:YY:YY:YY Connected: yes
[CHG] Device YY:YY:YY:YY:YY:YY Paired: yes
Pairing successful
[bluetooth]# connect YY:YY:YY:YY:YY:YY
[CHG] Device YY:YY:YY:YY:YY:YY Connected: yes

花了很长时间才找出蓝牙固件的问题,因为唯一的症状就是消息org.bluez.Error.AuthenticationFailed以及org.bluez.Error.AuthenticationCancelled我尝试配对或连接时的情况。

答案3

谢谢你的回答。这对我有用...

. apt-add-repository ppa:vidplace7/bluez5
. apt-add-repository ppa:blueman/ppa
. apt-get update
. apt-get install bluez
. apt-get install blueman
. apt-get install bluez-compat

...但另外我必须在实验模式下运行 bluez。用您自己的脚本替换 /usr/sbin/bluetooth:

#!/bin/sh
bluetooth -E

现在我可以连接 blueman-applet 鼠标和键盘。

有什么想法可以在启动时自动连接或者不使用 blueman(仅使用命令行)吗?

答案4

我设法搞死我的 14.04 笔记本电脑遵循非常相似的答案,因此在尝试“撤消”您在此处安装的任何软件包时请小心。请不要删除 bluez 包!(直到事后我才意识到这是一件非常愚蠢的事情。)

不过,我确实设法让我的键盘和鼠标在 16.04 中工作得很好,你可以在这里看到我的答案:https://askubuntu.com/a/1023532/815371

相关内容