Logitech G930 drops connection and reconnects in 17.10 (But not in 17.04)

Bug #1725863 reported by Luis Alvarado
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Fix Released
Undecided
Unassigned
pulseaudio (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

Every so many seconds / minutes the Wireless headset Logitech G930 simply drops connection. It always reconnects but when doing a recording, a meeting, listening to music or a movie it simply drops the connection for 1 to 3 second. This happens several times an hour. If it helps, it was not happening in 17.04 (Never happened in more than 200+ hours of using the headset).

ProblemType: Bug
DistroRelease: Ubuntu 17.10
Package: pulseaudio 1:10.0-2ubuntu3
ProcVersionSignature: Ubuntu 4.13.0-16.19-generic 4.13.4
Uname: Linux 4.13.0-16-generic x86_64
NonfreeKernelModules: nvidia_uvm nvidia_drm nvidia_modeset nvidia
ApportVersion: 2.20.7-0ubuntu3
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC1: cyrex 1288 F.... pulseaudio
 /dev/snd/controlC2: cyrex 1288 F.... pulseaudio
 /dev/snd/controlC0: cyrex 1288 F.... pulseaudio
Date: Sat Oct 21 17:55:42 2017
InstallationDate: Installed on 2017-10-19 (2 days ago)
InstallationMedia: Ubuntu 17.10 "Artful Aardvark" - Release amd64 (20171018)
PulseList:
 Error: command ['pacmd', 'list'] failed with exit code 1: Home directory not accessible: Permission denied
 No PulseAudio daemon running, or not running as session daemon.
SourcePackage: pulseaudio
Symptom: audio
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 06/30/2017
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: 3504
dmi.board.asset.tag: Default string
dmi.board.name: MAXIMUS VIII HERO ALPHA
dmi.board.vendor: ASUSTeK COMPUTER INC.
dmi.board.version: Rev 1.xx
dmi.chassis.asset.tag: Default string
dmi.chassis.type: 3
dmi.chassis.vendor: Default string
dmi.chassis.version: Default string
dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvr3504:bd06/30/2017:svnSystemmanufacturer:pnSystemProductName:pvrSystemVersion:rvnASUSTeKCOMPUTERINC.:rnMAXIMUSVIIIHEROALPHA:rvrRev1.xx:cvnDefaultstring:ct3:cvrDefaultstring:
dmi.product.family: To be filled by O.E.M.
dmi.product.name: System Product Name
dmi.product.version: System Version
dmi.sys.vendor: System manufacturer

Revision history for this message
Luis Alvarado (luisalvarado) wrote :
summary: - Logitech G930 Fails in 17.10 (But not in 17.04)
+ Logitech G930 drops connection and reconnects in 17.10 (But not in
+ 17.04)
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

AFAICT, the Logitech G930 uses its own wireless dongle (not Bluetooth). Is that correct?...

So it looks like a generic USB audio device. Therefore this is probably the issue:

Oct 21 17:23:33 hostname pulseaudio[1288]: [alsa-sink-USB Audio] alsa-sink.c: ALSA woke us up to write new data to the device, but there was actually nothing to write.
Oct 21 17:23:33 hostname pulseaudio[1288]: [alsa-sink-USB Audio] alsa-sink.c: Most likely this is a bug in the ALSA driver 'snd_usb_audio'. Please report this issue to the ALSA developers.
Oct 21 17:23:33 hostname pulseaudio[1288]: [alsa-sink-USB Audio] alsa-sink.c: We were woken up with POLLOUT set -- however a subsequent snd_pcm_avail() returned 0 or another value < min_avail.

So your kernel is hung periodically (possibly for reasons unrelated to USB or audio). Please try installing a newer kernel (or an older one!) to see if that resolves the problem:

http://kernel.ubuntu.com/~kernel-ppa/mainline/?C=N;O=D

Changed in pulseaudio (Ubuntu):
status: New → Incomplete
Changed in linux (Ubuntu):
status: New → Incomplete
Revision history for this message
Luis Alvarado (luisalvarado) wrote :

Yes correct, it uses it's own wireless dongle. But since this is the issue, shouldn't I update pulseaudio instead of the kernel?

I already have the latest stable one, 4.13, and the 4.14 is not out yet (To avoid issues like Nvidia Module compatibility). I will try installing 4.12 to see what happens. I also checked to see if PulseAudio had a new version and the 11.1 (and 11.0) sure look like they fixed the issue by checking out their changes (Not tried it yet).

Revision history for this message
Luis Alvarado (luisalvarado) wrote :

OK so instead of using a new or old kernel and to avoid issues with other drivers (like Nvidia breaking with the 4.14 RC version) and based on your feedback, I only then focused on PulseAudio. I noted that Ubuntu 17.10 is using the PulseAudio from January which is 10.0 instead of the 11.1 from September. So I grabbed the 11.1 one, downloaded the needed dependencies and compiled the whole thing like this:

1. Make sure the Source repository is enabled since it comes disabled by default from the Software & Updates App.

2. Install all dependencies needed

sudo apt-get build-dep pulseaudio && sudo apt-get install checkinstall git libpulse-dev

3. Set all the flags and settings

CFLAGS="-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security -Wall"

CXXFLAGS="-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security -Wall"

CPPFLAGS="-D_FORTIFY_SOURCE=2"

LDFLAGS="-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,--no-as-needed -lxcb"

./configure --build=x86_64-linux-gnu --prefix=/usr --includedir="\${prefix}/include" --mandir="\${prefix}/share/man" --infodir="\${prefix}/share/info" --sysconfdir=/etc --localstatedir=/var --libexecdir="\${prefix}/lib/pulseaudio" --srcdir=. --disable-maintainer-mode --disable-dependency-tracking --disable-silent-rules --enable-x11 --disable-hal --libdir=\${prefix}/lib/x86_64-linux-gnu --with-module-dir=\${prefix}/lib/pulse-11.1/modules --disable-oss-wrapper

NOTE: The above is based on PulseAudio 11.1 so if you look at the final line it says pulse-11.1 just to help with knowing which version is handled.

After this a simple

make -j8 (In my case)

Then

sudo make install

then reboot or kill pulseaudio. After that I have tested during the past 3 hours and have had no issues whatsoever. This solved a crackling issues that happened every 3-5 minutes. The disconnecting and reconnecting issues that in 3 hours would have happened about 30 times or more. A sound issue in calls, even other members hearing me can hear me better and no crackling sound in the back. And while testing with steam and youtube, there was no drop in sound.

For now this is a better solution but if other bugs appear in regards to sound issues, most probably updating to 11.1 (The whole 11.x versions fixed several issues I was having on both, a wireless headset and the USB connected headset). Hope this information helps along.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Thanks for your testing.

Yes, we already have PulseAudio 11 planned for inclusion in Ubuntu 18.04. It would have been included in Ubuntu 17.10, but PulseAudio 11.0 was released too late in the cycle.

tags: added: pulse11
Changed in pulseaudio (Ubuntu):
status: Incomplete → New
Changed in linux (Ubuntu):
status: Incomplete → Invalid
Revision history for this message
Luis Alvarado (luisalvarado) wrote :

Hi Daniel, thank you for helping out. I can report that the issues are back today (After 2 days of working). This time is crazy, it breaks more often. I had to reinstall the whole 17.10 and of course it happens but less often (Like the original bug report).

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

OK, I maintain the theory that this is a kernel regression then. When everything worked for you that was kernel 4.10, and now you're on 4.13. Plus the log snippet in comment #2 shows the hang is probably occurring in the call.

Please try some older kernels, starting with 4.10...
http://kernel.ubuntu.com/~kernel-ppa/mainline/?C=N;O=D

The nvidia driver uses DKMS so should get automatically recompiled for each kernel you install. And in this case even an "old" kernel is pretty recent so nvidia shouldn't have any problem with them.

Changed in linux (Ubuntu):
status: Invalid → Incomplete
Changed in pulseaudio (Ubuntu):
status: New → Incomplete
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Plus the log snippet in comment #2 shows the hang is probably occurring in the kernel.

Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for linux (Ubuntu) because there has been no activity for 60 days.]

Changed in linux (Ubuntu):
status: Incomplete → Expired
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for pulseaudio (Ubuntu) because there has been no activity for 60 days.]

Changed in pulseaudio (Ubuntu):
status: Incomplete → Expired
Revision history for this message
Luis Alvarado (luisalvarado) wrote :

Hi Daniel, wanted to share my findings for the last weeks. So I tested 16.04,16.10,17.04 and 17.10. The issue is now showing on all versions. In 17.04 I remember not seeing the issue although I might not have enough testing as am doing right now. Previously I used it for about 5 to 20 minutes in 17.04 compared to 4 to 6 hours in 17.10 and 16.04 when I tested. So it's giving the same error on all 4. What do you recommend I do now to follow up with you. Merry Christmas buddy.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Sorry for the delay. I'm involved in hundreds of different bugs and lose track...

I suggest the next step is to reproduce the problem with 18.04 and see if similar errors appear in your journal (run 'journalctl'):

Oct 21 17:23:33 hostname pulseaudio[1288]: [alsa-sink-USB Audio] alsa-sink.c: ALSA woke us up to write new data to the device, but there was actually nothing to write.
Oct 21 17:23:33 hostname pulseaudio[1288]: [alsa-sink-USB Audio] alsa-sink.c: Most likely this is a bug in the ALSA driver 'snd_usb_audio'. Please report this issue to the ALSA developers.
Oct 21 17:23:33 hostname pulseaudio[1288]: [alsa-sink-USB Audio] alsa-sink.c: We were woken up with POLLOUT set -- however a subsequent snd_pcm_avail() returned 0 or another value < min_avail.

Alternatively, don't change Ubuntu version at all, and just try the latest kernels:

http://kernel.ubuntu.com/~kernel-ppa/mainline/?C=N;O=D

Essentially we want to know:
  (1) Was there an older kernel where it ever did work?
  (2) Is the bug still there in the latest kernels? If not, then exactly what version fixed it?
  (3) Otherwise, does the bug always occur when those error messages above appear?

Changed in linux (Ubuntu):
status: Expired → Incomplete
Changed in pulseaudio (Ubuntu):
status: Expired → Incomplete
Revision history for this message
Luis Alvarado (luisalvarado) wrote :

Happy new year Daniel. No worries buddy, I fully understand. I will follow your guidelines and report back. In regards to the questions:

1. It worked for some time (I think 1 to 2 weeks which was about 30 minutes to maybe an hour if I can recall). It was on 17.10 that I did heavy test on it. Then I moved to 16.04 and it was still there. Then I noticed it was in all of the ones tested (Except for 18.04 which I will test right now).

2. Will test right away per your advice.

3. Will let you know once tested.

Big hugs friend.

Revision history for this message
Luis Alvarado (luisalvarado) wrote :

Hi Daniel, today I was able to start testing because there was an issue with the Nvidia driver once going to the 4.15 kernel version. So today I received the Intel microcode updates + Nvidia 390 which is compatible with 4.15 so after seeing that, I installed the 4.17 RC7 as you proposed.

I have to say, it is working correctly "for now". I would like to do a longer test if that is possible with you. For example a 100 hour test, which means that since I use this about 5 hours a day for client meetings, and about 2 hours for gaming, it would be around 2 weeks of test so I can let you know with a final result what the outcome is.

For now, I have not had the following errors:

1. Audio cutting in and out
2. No kernel or dmesg errors of any type. It actually showed like this when connnecting the dongle.

[ 18.167592] logitech-hidpp-device 0003:046D:4069.000A: HID++ 4.5 device connected.
[ 117.024265] usb 1-3: new full-speed USB device number 8 using xhci_hcd
[ 117.740563] usb 1-3: New USB device found, idVendor=046d, idProduct=0a1f
[ 117.740569] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 117.740572] usb 1-3: Product: Logitech G930 Headset
[ 117.740574] usb 1-3: Manufacturer: Logitech
[ 117.759570] input: Logitech Logitech G930 Headset as /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.3/0003:046D:0A1F.000C/input/input24
[ 117.816837] hid-generic 0003:046D:0A1F.000C: input,hiddev2,hidraw7: USB HID v1.01 Device [Logitech Logitech G930 Headset] on usb-0000:00:14.0-3/input3

So everything looking smooth so far for the past hour. Give me if possible till the end of a 2 week test to confirm everything.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Thanks for the update. We don't really need to do anything with this bug now, because it is set to automatically close itself if no comments are added for 60 days.

Revision history for this message
Luis Alvarado (luisalvarado) wrote :

Hi Daniel, thank you. How can I mark this ticket as fixed. It has been about 10 days. No problems whatsoever. I actually lost connection yesterday but then noticed it was because I did not charge the headset for the last 2 days. Even with very low power, I was still able to finish a conversation. Thank you for the help and if you would like as a gift, I could buy one of this in Amazon and send it to you buddy. They are pretty awesome. Big hugs friend and think positive.

Changed in linux (Ubuntu):
status: Incomplete → Fix Released
Changed in pulseaudio (Ubuntu):
status: Incomplete → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.