Categories
Uncategorized

Logitech and its damned LVUSBSta.sys driver

I’ve bought a Logitech STX QuickCam Communicate STX webcam – nothing sophisticated – just needed a simple, good quality webcam to be used in Skype chats.

But after installing the camera, the audio in Flight Simulator X was no longer working correctly. Unluckily that camera comes with a built-in microphone, and the usual installer made for dummies does not allow to select what you want installed and active. To better simulate an aircraft, FSX exploits the Windows feature to route sounds and voice to different audio devices – I am using a Plantronics USB headset for voice, and the Intel on-board audio card for other sounds. And because I spent some money to build a decent flightsim (stick, throttle, pedals, headset, etc.), I couldn’t let a damned webcam get in the way!

First I tried to re-install the audio drivers, then I uninstalled the camera, but the issue was still there. I guessed that like many installers, Logitech setup was unable to remove all the stuff it installed. Using the device manager, I found that all USB devices, and the audio card, now had a LVUSBSta.sys driver installed, and it was a Logitech driver! Its description is “USB Statistic Driver” – well what kind of statistics about the UBS bus is Logitech trying to collect, and why? And why it got installed into the audio card driver stack too – as the audio card is not an USB device? It is true that the webcam mic should employ a noise cancellation software – but why it got installed into every USB device, including my Epson scanner then?

I tried to delete the driver file, but I just got many yellow exclamation marks in device manager – complaining that the registry was corrupted or something alike. Ok, that meant that the driver was installed as a “filter driver”, or the like. That can be checked in the “Details” page of a device, selecting one of the “filter” entries from the drop-down box. And here it was LVUSBSta.sys driver, installed as a “lower class filter”. Windows “filter drivers” are drivers that insert themselves above or below another one so that it can see (and modify) data sent from/to the other driver. If a filter driver file is deleted, Windows won’t start the device.

Well, time to clean-up the registry then! (do it at your own risk if you think you have to try too!). I looked for the driver in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum, and removed all the entries related to that driver. To clean ActiveService in

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\HDAUDIO\
FUNC_01&VEN_8384&DEV_7683&SUBSYS_80860013&REV_1032\4&2e5b2c0a&0&0201\Control

I had to run regedit using Sysinternals’ psexec to run it as the LocalSystem account.

After a reboot, audio in FSX was back. I looked for that driver in Google, and I found I am not the only one to have problems with it – there even are people who can’t connect their iPhone because the driver crashes the PC – well done, Logitech!

I submitted a support request to Logitech, I am awaiting a response now. Meanwhile I am thinking about giving a look to that filthy piece of software with IDA Pro, and try to understand what it does really, and why it is installed as a filter.