Audio system stops working after some resume from sleep while connected to usb-c dock

After some time, usually after several resumes from sleep the audio system seems to be broken. The symptoms are:

  • no sound output
  • cannot change sound output from dock to laptop’s own speaker, but there is no sound to the dock audio.
  • videos in firefox do not start, probably it is waiting to the audio system

It started a few weeks ago when I have updated tumbleweed after several months. Before it was running without problems, my install is 4 years old. I almost always have my laptop connected to a usb-c dock and I use hybrid-sleep. I run Tumbleweed.

The only solution is to do a systemctl --user restart pipewire.service switch devices back and forth and it works again. What can be the problem?

It might be interesting to query the journal for events following the resume perhaps. If you know the time of the resume, you could use something like
journalctl --user -u pipewire -u wireplumber --since "2025-09-20 20:42:00"

Also it might be useful to compare the output before and after the hybrid sleep / resume cycle…
wpctl status

Does plain suspend / resume behave the same with respect to the audio services?

I have the same problem and I think it started a week ago, from time to time after resuming from sleep audio do not work ( some applications like web browsers do lag because of that ) trying to put the computer to sleep again and resuming again while in this state do not solve the issue, restarting the user session or restarting the pipewire service ( plus all applications using audio running ) do solve the issue.

In my end the relevant logs when running journalctl --user -u pipewire -u wireplumber

sept. 21 07:32:55 noname-opensuse wireplumber[2884]: [0:01:54.851393609] [2884]  INFO Camera camera_manager.cpp:330 libcamera v0.5.2
sept. 21 12:46:58 noname-opensuse wireplumber[2884]: wplua: [string "device-info-cache.lua"]:36: attempt to call a nil value (field 'critical')
                                                     stack traceback:
                                                             [string "device-info-cache.lua"]:36: in function 'device-info-cache.get_device_info'
                                                             [string "state-routes.lua"]:185: in function <[string "state-routes.lua"]:179>
                                                             [C]: in ?
                                                             [C]: in method 'advance'
                                                             [string "state-routes.lua"]:172: in function <[string "state-routes.lua"]:167>
sept. 21 16:19:27 noname-opensuse wireplumber[2884]: spa.bluez5: BlueZ system service is not available
sept. 21 16:24:10 noname-opensuse wireplumber[2884]: spa.bluez5: BlueZ system service is not available
sept. 21 16:27:20 noname-opensuse systemd[2598]: Stopping Multimedia Service Session Manager...
sept. 21 16:27:20 noname-opensuse systemd[2598]: Stopped Multimedia Service Session Manager.
sept. 21 16:27:20 noname-opensuse systemd[2598]: wireplumber.service: Consumed 3.041s CPU time.
sept. 21 16:27:20 noname-opensuse systemd[2598]: Stopping PipeWire Multimedia Service...
sept. 21 16:27:20 noname-opensuse systemd[2598]: Stopped PipeWire Multimedia Service.
sept. 21 16:27:20 noname-opensuse systemd[2598]: pipewire.service: Consumed 31.082s CPU time.
sept. 21 16:27:20 noname-opensuse systemd[2598]: Started PipeWire Multimedia Service.
sept. 21 16:27:20 noname-opensuse systemd[2598]: Started Multimedia Service Session Manager.
sept. 21 16:27:20 noname-opensuse wireplumber[12158]: spa.bluez5: BlueZ system service is not available
sept. 21 16:27:20 noname-opensuse wireplumber[12158]: [5:23:51.627937061] [12158]  WARN IPAManager ipa_manager.cpp:148 No IPA found in '/usr/lib64/libcamera/ipa'
sept. 21 16:27:20 noname-opensuse wireplumber[12158]: [5:23:51.627957789] [12158]  INFO Camera camera_manager.cpp:330 libcamera v0.5.2

Here the computer was put to sleep arround 12:46 and resumed from sleep at 16:19, also I’ve check the status of the pipewire service before and after restarting it

(noname|~) systemctl --user status pipewire                                                                                                                                                                 16:26:25 
● pipewire.service - PipeWire Multimedia Service
     Loaded: loaded (/usr/lib/systemd/user/pipewire.service; disabled; preset: disabled)
     Active: active (running) since Sun 2025-09-21 07:32:55 CEST; 8h ago
 Invocation: e3d241e3b4604fb9b5dfe8f6cf44df3f
TriggeredBy: ● pipewire.socket
   Main PID: 2883 (pipewire)
      Tasks: 3 (limit: 28597)
        CPU: 31.077s
     CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire.service
             └─2883 /usr/bin/pipewire

sept. 21 07:32:55 noname-opensuse systemd[2598]: Started PipeWire Multimedia Service.
(noname|~) systemctl --user restart pipewire                                                                                                                                                                16:27:09 
(noname|~) systemctl --user status pipewire                                                                                                                                                                 16:27:20 
● pipewire.service - PipeWire Multimedia Service
     Loaded: loaded (/usr/lib/systemd/user/pipewire.service; disabled; preset: disabled)
     Active: active (running) since Sun 2025-09-21 16:27:20 CEST; 4s ago
 Invocation: b152b57b5dbe4ac2ad79f4072e25837e
TriggeredBy: ● pipewire.socket
   Main PID: 12157 (pipewire)
      Tasks: 3 (limit: 28597)
        CPU: 50ms
     CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire.service
             └─12157 /usr/bin/pipewire

sept. 21 16:27:20 noname-opensuse systemd[2598]: Started PipeWire Multimedia Service.

Will do next time I face the issue, all the tests mentioned above were made before finding this thread, I’ve just tried again to go to sleep then wake up but everything went fine except that it did take longer than usual for the computer to go to sleep but it could be normal since I’ve manually restarted the pipewire service and did not restarted the session since …

When checking the journal with journalctl --user

sept. 21 16:48:17 noname-opensuse plasmashell[3027]: Connecting to deprecated signal QDBusConnectionInterface::serviceOwnerChanged(QString,QString,QString)
sept. 21 16:48:17 noname-opensuse kwin_wayland[2831]: qt.dbus.integration: QDBusConnection: couldn't handle call to Teardown, no slot matched
sept. 21 16:48:17 noname-opensuse kwin_wayland[2831]: qt.dbus.integration: QDBusConnection: couldn't handle call to Teardown, no slot matched
sept. 21 16:48:17 noname-opensuse kwin_wayland[2831]: qt.dbus.integration: Could not find slot Krunner1Adaptor::Teardown
sept. 21 16:48:18 noname-opensuse systemd[2598]: Started Kate - Advanced Text Editor.
sept. 21 16:48:34 noname-opensuse kwin_wayland[2831]: kwin_core: Failed to delay sleep: Sender is not authorized to send message
sept. 21 16:48:34 noname-opensuse kwin_wayland[2831]: kwin_core: Failed to delay sleep: Sender is not authorized to send message
sept. 21 16:48:34 noname-opensuse kwin_wayland[2831]: kwin_core: Failed to delay sleep: Sender is not authorized to send message
sept. 21 16:48:35 noname-opensuse kded6[2926]: org.kde.pulseaudio: No object for name "alsa_input.usb-Kingston_HyperX_Virtual_Surround_Sound_00000000-00.analog-stereo"
sept. 21 16:48:35 noname-opensuse kded6[2926]: org.kde.pulseaudio: No object for name "alsa_output.usb-Kingston_HyperX_Virtual_Surround_Sound_00000000-00.analog-stereo"
sept. 21 16:48:35 noname-opensuse kded6[2926]: org.kde.pulseaudio: No object for name "alsa_input.usb-Kingston_HyperX_Virtual_Surround_Sound_00000000-00.analog-stereo"
sept. 21 16:48:35 noname-opensuse kded6[2926]: org.kde.pulseaudio: No object for name "@DEFAULT_SINK@"
sept. 21 16:48:35 noname-opensuse kded6[2926]: org.kde.pulseaudio: No object for name "@DEFAULT_SOURCE@"
sept. 21 16:48:35 noname-opensuse plasmashell[3027]: org.kde.pulseaudio: No object for name "alsa_input.usb-Kingston_HyperX_Virtual_Surround_Sound_00000000-00.analog-stereo"
sept. 21 16:48:35 noname-opensuse plasmashell[3027]: org.kde.pulseaudio: No object for name "alsa_output.usb-Kingston_HyperX_Virtual_Surround_Sound_00000000-00.analog-stereo"
sept. 21 16:48:35 noname-opensuse plasmashell[3027]: org.kde.pulseaudio: No object for name "alsa_input.usb-Kingston_HyperX_Virtual_Surround_Sound_00000000-00.analog-stereo"
sept. 21 16:48:35 noname-opensuse plasmashell[3027]: org.kde.pulseaudio: No object for name "@DEFAULT_SINK@"
sept. 21 16:48:35 noname-opensuse plasmashell[3027]: org.kde.pulseaudio: No object for name "@DEFAULT_SOURCE@"
sept. 21 16:49:45 noname-opensuse kwin_wayland[2831]: kwin_wayland_drm: Atomic modeset test failed! Permission denied
sept. 21 16:49:45 noname-opensuse kwin_wayland[2831]: kwin_core: Applying output configuration failed!
sept. 21 16:49:45 noname-opensuse kwin_wayland[2831]: kwin_wayland_drm: Could not find edid for connector DrmConnector(id=37, gpu="/dev/dri/card0", name="Unknown-1", connection="Connected", countMode=1)
sept. 21 16:49:45 noname-opensuse kwin_wayland[2831]: kwin_wayland_drm: Could not find edid for connector DrmConnector(id=37, gpu="/dev/dri/card0", name="Unknown-1", connection="Connected", countMode=1)
sept. 21 16:49:45 noname-opensuse kded6[2926]: kf.notifications: Failed to notify "Created too many similar notifications in quick succession"
sept. 21 16:49:45 noname-opensuse wireplumber[12158]: spa.bluez5: BlueZ system service is not available
sept. 21 16:49:45 noname-opensuse plasmashell[3027]: org.kde.pulseaudio: No object for name "@DEFAULT_SINK@"
sept. 21 16:49:45 noname-opensuse plasmashell[3027]: org.kde.pulseaudio: No object for name "@DEFAULT_SOURCE@"
sept. 21 16:49:45 noname-opensuse kded6[2926]: org.kde.pulseaudio: No object for name "@DEFAULT_SINK@"
sept. 21 16:49:45 noname-opensuse kded6[2926]: org.kde.pulseaudio: No object for name "@DEFAULT_SOURCE@"
sept. 21 16:49:45 noname-opensuse kded6[2926]: org.kde.pulseaudio: No object for name "alsa_input.pci-0000_00_1b.0.analog-stereo"
sept. 21 16:49:45 noname-opensuse plasmashell[3027]: org.kde.pulseaudio: No object for name "alsa_input.pci-0000_00_1b.0.analog-stereo"
sept. 21 16:49:45 noname-opensuse plasmashell[3027]: org.kde.pulseaudio: No object for name "alsa_input.usb-Kingston_HyperX_Virtual_Surround_Sound_00000000-00.analog-stereo"
sept. 21 16:49:45 noname-opensuse kded6[2926]: org.kde.pulseaudio: No object for name "alsa_input.usb-Kingston_HyperX_Virtual_Surround_Sound_00000000-00.analog-stereo"
sept. 21 16:49:48 noname-opensuse DiscoverNotifier[3185]: packagekitqt.offline: Cannot process "org.freedesktop.PackageKit" as "org.freedesktop.PackageKit.Offline"
sept. 21 16:49:48 noname-opensuse kscreenlocker_greet[13008]: pam_kwallet5(kde:auth): pam_kwallet5: pam_sm_authenticate
sept. 21 16:49:48 noname-opensuse kscreenlocker_greet[13008]: pam_kwallet5(kde:auth): pam_kwallet5: we were already executed
sept. 21 16:49:52 noname-opensuse kscreenlocker_greet[13008]: pam_kwallet5(kde:setcred): pam_kwallet5: pam_sm_setcred
sept. 21 16:49:52 noname-opensuse kscreenlocker_greet[13008]: qt.qpa.wayland: Could not create EGL surface (EGL error 0x3003)
sept. 21 16:49:52 noname-opensuse kscreenlocker_greet[13008]: qt.qpa.wayland: Could not create EGL surface (EGL error 0x3003)
sept. 21 16:49:52 noname-opensuse kscreenlocker_greet[13008]: Failed to write to the pipe: Transport endpoint is not connected.

So the issue happen again, when looking at the journal journalctl --user -u pipewire -u wireplumber the same error as before with wireplumber that occur when putting the computer to sleep happen.

sept. 22 21:07:58 noname-opensuse wireplumber[12158]: wplua: [string "device-info-cache.lua"]:36: attempt to call a nil value (field 'critical')
                                                      stack traceback:
                                                              [string "device-info-cache.lua"]:36: in function 'device-info-cache.get_device_info'
                                                              [string "state-routes.lua"]:185: in function <[string "state-routes.lua"]:179>
                                                              [C]: in ?
                                                              [C]: in method 'advance'
                                                              [string "state-routes.lua"]:172: in function <[string "state-routes.lua"]:167>
sept. 22 21:07:58 noname-opensuse wireplumber[12158]: wp-event-dispatcher: <WpAsyncEventHook:0x55f812ec4930> failed: failed to activate item: Object activation aborted: proxy destroyed
sept. 23 14:56:29 noname-opensuse wireplumber[12158]: spa.bluez5: BlueZ system service is not available

This time I’ve looked the status of the wireplumber service while in the broken state

systemctl --user status wireplumber.service                                                                                                                                                      14:59:51 
● wireplumber.service - Multimedia Service Session Manager
     Loaded: loaded (/usr/lib/systemd/user/wireplumber.service; enabled; preset: enabled)
     Active: active (running) since Sun 2025-09-21 16:27:20 CEST; 1 day 22h ago
 Invocation: 84ceee7d26ff470884cae11163a11ebb
   Main PID: 12158 (wireplumber)
      Tasks: 7 (limit: 28597)
        CPU: 10.134s
     CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/wireplumber.service
             └─12158 /usr/bin/wireplumber -p main

And I’ve tried to restart only the wireplumber service and it did fix the problem, I didn’t even had to restart any running application to have the audio working again.

As for the wpctl status before and after restarting wireplumber openSUSE Paste

So far I could not catch the moment when it goes wrong since I do not use the audio system constantly. When I resumed today it was wrong, however there was nothing in journalctl.

I have realized now, that the problem appears when I connect and disconnect a bluetooth device, journal says:

szept 23 15:37:39 Laptop wireplumber[248122]: spa.bluez5.native: RFCOMM receive command but modem not available: AT+NREC=0
szept 23 15:37:43 Laptop wireplumber[248122]: spa.bluez5.sink.media: 0x564df0c84cf8: error 24
szept 23 15:37:43 Laptop wireplumber[248122]: pw.node: (bluez_output.F8_4E_17_CC_57_D2.1-143) running -> error (Received error event)
szept 23 15:37:43 Laptop wireplumber[248122]: spa.bluez5: Failure in Bluetooth audio transport /org/bluez/hci0/dev_F8_4E_17_CC_57_D2/fd9
szept 23 15:37:43 Laptop pipewire[248121]: pw.node: (bluez_output.F8_4E_17_CC_57_D2.1-143) running -> error (Received error event)
szept 23 15:37:43 Laptop wireplumber[248122]: wplua: [string "device-info-cache.lua"]:36: attempt to call a nil value (field 'critical')
                                               stack traceback:
                                                       [string "device-info-cache.lua"]:36: in function 'device-info-cache.get_device_info'
                                                       [string "state-routes.lua"]:185: in function <[string "state-routes.lua"]:179>
                                                       [C]: in ?
                                                       [C]: in method 'advance'
                                                       [string "state-routes.lua"]:172: in function <[string "state-routes.lua"]:167>

The stack traceback seems to be the same as for Aboutduck

Have the same problem.
When I disconnect my bluetooth headphone, or when my system comes out of sleep.
When I try to play a song (strawberry) nothing happens and after a few seconds this appears:

…/gstreamer/subprojects/gst-plugins-base/gst/playback/gstplaysink.c(2961): gen_audio_chain (): /GstPlayBin3:pipeline-4-pipeline/GstPlaySink:playsink: Failed to configure the audio sink.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.