You are not logged in.

#1 2020-12-08 15:11:05

Mortimer Houghton
Member
Registered: 2014-09-28
Posts: 74

Bluetooth does not work with Pipewire (solved-ish)

My bluetooth headphones work with pulseaudio-bluetooth and bluez, but if I install pipewire, it fails, although bluetoothctl indicates that they have successfully connected.  Bluetooth fails with Pipewire even when I am not using pipewire-pulse.

lsusb:

Bus 001 Device 003: ID 8087:0aa7 Intel Corp. Wireless-AC 3168 Bluetooth

rfkill --output-all:

ID TYPE      DEVICE TYPE-DESC         SOFT      HARD
 0 wlan      phy0   Wireless LAN unblocked unblocked
 1 bluetooth hci0   Bluetooth    unblocked unblocked

bluetoothctl:

Device E9:08:EF:83:4B:EA (public)
        Name: MPOW-059
        Alias: MPOW-059
        Class: 0x00240404
        Icon: audio-card
        Paired: yes
        Trusted: yes
        Blocked: no
        Connected: yes
        LegacyPairing: no
        UUID: Headset                   (00001108-0000-1000-8000-00805f9b34fb)
        UUID: Audio Sink                (0000110b-0000-1000-8000-00805f9b34fb)
        UUID: A/V Remote Control Target (0000110c-0000-1000-8000-00805f9b34fb)
        UUID: Advanced Audio Distribu.. (0000110d-0000-1000-8000-00805f9b34fb)
        UUID: A/V Remote Control        (0000110e-0000-1000-8000-00805f9b34fb)
        UUID: Handsfree                 (0000111e-0000-1000-8000-00805f9b34fb)

systemctl --user status pipewire.service:

● pipewire.service - Multimedia Service
     Loaded: loaded (/usr/lib/systemd/user/pipewire.service; enabled; vendor preset: enabled)
     Active: active (running) since Tue 2020-12-08 08:01:52 CST; 6min ago
TriggeredBy: ● pipewire.socket
   Main PID: 965 (pipewire)
     CGroup: /user.slice/user-1000.slice/user@1000.service/app.slice/pipewire.service
             ├─965 /usr/bin/pipewire
             └─976 /usr/bin/pipewire-media-session -e bluez5

Dec 08 08:01:52 HP-255-G6 systemd[950]: Started Multimedia Service.
Dec 08 08:01:52 HP-255-G6 pipewire[965]: Could not get portal pid: Argument 0 is specified to be of type "uint32", but is actually of type "string"
Dec 08 08:01:52 HP-255-G6 pipewire-media-session[976]: Register() failed: org.freedesktop.DBus.Error.ServiceUnknown
Dec 08 08:01:52 HP-255-G6 pipewire-media-session[976]: core 0x558c2911bce0: proxy 0x558c2913c810 id:4: bound:-1 seq:4 res:-2 (No such file or directory) msg:"can't create device: No such file or directory"
Dec 08 08:01:52 HP-255-G6 pipewire-media-session[976]: error id:4 seq:4 res:-2 (No such file or directory): can't create device: No such file or directory

systemctl --user status pipewire-pulse.service:

● pipewire-pulse.service - PipeWire PulseAudio
     Loaded: loaded (/usr/lib/systemd/user/pipewire-pulse.service; enabled; vendor preset: enabled)
     Active: active (running) since Tue 2020-12-08 08:01:52 CST; 10min ago
TriggeredBy: ● pipewire-pulse.socket
   Main PID: 964 (pipewire-pulse)
     CGroup: /user.slice/user-1000.slice/user@1000.service/app.slice/pipewire-pulse.service
             └─964 /usr/bin/pipewire-pulse

Dec 08 08:01:52 HP-255-G6 systemd[950]: Started PipeWire PulseAudio.
Dec 08 08:06:09 HP-255-G6 pipewire-pulse[964]: Failed to mlock memory 0x7f7b2e298000 32832: This is not a problem but for best performance, consider increasing RLIMIT_MEMLOCK

pw-cli(dump -s Client):

29: ap="pipewire-media-session" ai="976"
30: ap="pipewire-media-session" ai="976"
50: ap="waybar" ai="1013"
57: ap="pw-cli" ai="1790"

/etc/pipewire/pipewire.conf(last 12 lines):

# The bluetooth module is disabled by default because it causes
# conflicts with PulseAudio. If you disable PulseAudio or don't
# load its bluetooth module, you can enable it here with -e bluez5
#
exec /usr/bin/pipewire-media-session -e bluez5
#
# You can optionally start the pulseaudio-server here as well
# but it better to start it as a systemd service.
# It can be interesting to start another daemon here that listens
# on another address with the -a option (eg. -a tcp:4713)
#
#exec /usr/bin/pipewire-pulse

---
EDIT:
Apparently the script mentioned here solves my problem.  So, even though everything is working for pipewire and bluetooth, apparently it is not switching over to the bluetooth sink and/or not directing input to the bluetooth sink.  I suppose for now, I will use the script.  For anyone else reading this, don't forget to edit the udev rule to reflect the bluetooth device you are using.

Last edited by Mortimer Houghton (2020-12-08 17:02:42)

Offline

#2 2020-12-24 19:35:37

gothmog123
Member
Registered: 2012-10-31
Posts: 105

Re: Bluetooth does not work with Pipewire (solved-ish)

What about out of sync BT audio/video with PW? Anyone have that? Contrary to PA you can't set an offset latency sad

Offline

Board footer

Powered by FluxBB