Home > Uncategorized > Connecting Skullcandy Hesh 2 Wireless Headphones to Bluetooth on ArchLinux

Connecting Skullcandy Hesh 2 Wireless Headphones to Bluetooth on ArchLinux


skullcandy-hesh-2-wireless_600

Skullcandy Hesh 2 Wireless

I’ve been struggling with this one for 3 months and finally got the time to fix this mothafucka’.

# PACKAGE VERSIONS AT THE TIME OF WRITING:
gnome 3.24.1
gdm 3.24.2-1
linux 4.11.3-1

# bluetooth
bluez 5.45-1
bluez-libs 5.45-1
bluez-utils 5.45-1

After faithfully following the bluetooth tutorial from ArchWiki (install bluez, bluez-utils, bluez-libs), when trying to connect Headphones via bluetooth, sometimes the BlueZ daemon was throwing “Bluez daemon is not running, blueman-manager cannot continue” eventhough the Bluetooth was powered on.

Apparently bluez 5.45 was throwing segfaults all over the place… Found the bug issued on bugs.archlinux.org with a good suggestion, to revert to bluez 5.41-2, which I did.

Downloaded the PKGBUILD from SVN repo and build the trunk from source via makepkg –skippgpcheck, then:

  • removed via pacman -Rdd bluez bluez-libs bluez-utils v5.45 ones that were segfaulting
  • installed the v5.41-2 ones via pacman -U bluez-x86_64.tar.xz etc….

Issue was fixed, but then I got into another loophole: device was successfully pairing, but could only use the HSP/HFP audio profile (not to mention, sometimes  I couldn’t even select the goddamn profile!).

Since the video quality on HSP/HFP is like being inside a cow’s womb, I had to switch from that crap to A2DP, but everytime I was trying to switch, blueman-applet was throwing “Failed to switch profile to a2dp_sink” (very detailed error, asshole).

Time for some log tracing!

$ journalctl -fu bluetooth

# 2nd pane
$ journalctl -fk

Guess what, nothing weird found… just Bluetooth connecting and disconnecting.

After doing some research, I finally found the solution on Arch Wiki. As this man suggested on the forums, I had to disable pulseaudio to start for the gdm user. Done that via:

vim ~/.config/pulse/audio.conf
# added these lines:
autospawn = no
daemon-binary = /bin/true

# prevent systemd from starting Pulseaudio anyway with socket activation
sudo -ugdm mkdir -p /var/lib/gdm/.config/systemd/user
sudo -ugdm ln -s /dev/null /var/lib/gdm/.config/systemd/user/pulseaudio.socket

Rebooted and then I could finally switch to the A2DP profile successfully. Audio works awesome now 😉

Advertisements
Categories: Uncategorized
  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: