04-06-2012 12:33 PM
I purchased a G13 a few months ago for use at home and at work. I loaded LGS 8.20.74 on my home Windows 7 x64 desktop computer and customized it for use on that system. It works reliably and therefore the hardware appears to be functional. However, when I attempted to connect it to my Lenovo W510 work laptop running Windows 7 x64, things ground to a halt.
The first time I installed and ran LGS 8.20.74 on my work laptop, it worked fine and so did the G13. However, being a mobile computer, I have to unplug and replug the gamepad when I need to use it. Future attempts to plug in and enumerate the G13 fails on the laptop. Most forum users have taken the easy way out and rolled back to the old driver software. I decided not to do this for two reasons: 1. I invested quite a bit of effort customizing my profiles on my desktop and don't want to lose all that work going back to the old driver. 2. At a former job, I was a software engineer who developed USB drivers for peripherals, so I can dig fairly deep into what's going wrong and I give a fairly specific description of the failure condition. Perhaps, with some cooperation with developers at Logitech, we can find the root cause of this problem and fix the new software for the many users out there that have experienced similar issues.
A quick aside: If I install LGS 8.20.74 in a Windows 7 virtual machinerunning on my laptop, it works fine. So I do not believe there is any hardware-specific issue with my laptop's USB ports , controllers, etc that would prevent this from working.
The overall symptom that I see is the G13 enumerates the normal HID devices, downloads profiles, loads the various LCD applet functions, and appears to be operational. The LGS softare panel also recognizes it and reports no errors. However, no G-key keystrokes are received by the system, making the G13 dead from the LCD down and fairly useless.
Platform Bug? No
I ran through the various devices that enumerated when I plugged in my G13. I found that Lenovo had a utility that was installing a filter driver on all HID devices, and uninstalled that utility. I learned a bit more about this particular issue here (
HID Device Enumeration Debug
By comparing the device manager tree (in view by connection mode) in the virtual machine to the host machine, I discovered that the items in the USB port hierarchy enumerate properly . Here's the breakdown:
- PCIe Root Port
- NEC USB 3.0 Host Controller
- NEC USB 3.0 Root Hub
- USB Input Device (USB\Vid_046d&Pid_c21c&Rev_0203 / USB\Class_03&SubClass_00&Prot_00)
- HID-compliant device (HID\Vid_046d&Pid_c21c&Rev_0203)
My assumption after reading some forum posts is that this HID device driver supports the LCD buttons, mode buttons, and LCD devicecommunications. All the parts of the keyboard that interact with the driver itself directly come through here. The G-keys and other such functions that have to interact with applications go through a different driver, and that driver is not working. To quote a wise guy with a mushroom on his head, "your princess is in another castle".
Logitech Enumeration Controller
I was digging around device manager when it was in the failed state and found an odd "Unknown Device" at the root level. I popped it open and found it was a logitech device (root\LogiGamePanelVirtualBus) but the driver failed to load. I fed it the proper driver (C:\Program Files\Logitech Gaming Software\Drivers\VirtualBus), and for one glorious session, the G13 sprang to life and worked like it did the first time I installed it. However, the next time I went to use it, this trick didn't work.
So when it did work, I saw the following hierarchy appear in device manager:
- Logitech GamePanel Virtual Bus Enumerator
And after feeding it drivers, I had the following:
- Logitech GamePanel Virtual Bus Enumerator
- Logitech G13 Joystick
- HID-compliant game controller
- Logitech Gaming Virtual Keyboard
- HID Keyboard Device
- Logitech Gaming Virtual Mouse
- HID-compliant mouse
However, on my next attempt to use the device after a few days, I only see the "Logitech GamePanel Virtual Bus Enumerator" and it fails to do its job and enumerate the children (Joystick, Virtual KB, Virtual Mouse) normally seen in its tree. Attempts to update the driver fail to help. Disable/reenable, no dice.
UAC is disabled on my machine per company policy. I've disabled our custom security software. No change. I've used the little known trick that lets you see non-present devices (registry enum cruft) in device manager, and meticulously deleted all traces of previous HID devices and all logitech devices. ( http://support.microsoft.com/kb/315539 for those that are interested in this device manager trick) I then deleted oem* out of my inf directory in case bad cached drivers were to blame. No change. I also use logitech mice and have the latest setpoint installed on both the desktop and laptop. In case this was complicating matters, I uninstalled setpoint. No change. Thinly veiled threats spoken in a stern voice at the G13. No change.
Finally, something helps
Uninstall and re-scan of the enumerator, and it doesn't come back. This is not surprising since this is a virtual device, and reinstalling the tools does bring it back, but only as "Unknown Device". Feeding it the driver brings it back to life, and a reboot with the G13 attached allows the enumerator to initialize the virtual devices, but their drivers fail to load and they show up as Logitech_LGVirHidxxxx. Force feeding them brings the device back to life… for now.
A tedius state of functionality
The virtual devices appear to survive hotplugging the keypad. They even appear to survive reboots with the G13 attached. I rebooted without the G13 attached, and it dropped the virtual joystick. Re-plugging the G13 brought it back. Unplugged, suspended the laptop, resumed, replugged the G13. Still works. This is all with me always plugging the G13 into the same USB port. I tried plugging it in via the hub in my monitor and it worked the first time.
My best guess for what fixed it is uninstalling the enumerator at the top of the device tree, followed by reinstalling the LGS software and rebooting made the enumerator work. When I get in a bad state again, I'll try this remedy to see if it's reliable and report my findings. I'll also try to narrow down what gets me into the bad state.
Need for help
I'm confident there is a bug in the Logitech GamePanel Virtual Bus Enumerator that I am seeing on my laptop but not on my desktop or virtual machine. It is not properly installing the enumerator, and the enumerator is getting into bad states where it does not enumerate its virtual devices. This doesn't happen to everyone, but for those whom it affects, it's quite maddening. And the steps I've taken to restore functionality go way beyond what can be expected of a normal user.
So I've done quite a bit of the legwork here. Can someone in logitech dev help carry this across the goal line and help find the bug?
05-25-2012 08:59 AM
Did you ever manage to resolve this issue?
I ask because recently, I built a new desktop machine and after setting up the OS and all the software, I have found that I am experiencing some of the same symptoms. The G13 will act as if everything is fine in regards to the LCD (profiles load, buttons work, etc.) and the 'joystick' will work, but none of the G keys function.
Since this is a custom built desktop machine, I dont believe we share any common hardware, but one thing that does jump out at me is that in this build, I was forced to use a USB 3 port for the G13. I wonder if it might be some issue with that. I had read somewhere that some mice were having issues when using a USB 3.0 port so perhaps the G13 or its software has an issue there as well?
I am running Windows 7 64 bit as well if that makes any difference.
For me, I have found that disconnecting the G13 and then plugging it back in will for the most part cause it to work, at least until the next reboot. Anyone else run into these issues or have some info on how this could be resolved?
05-25-2012 06:03 PM
When mine stopps functioning correct;y I open task manager, end the LCore.exe process. Then open logtech gaming software again then things work again.
Processor: Intel 3770K 3.5 GHz
Memory: 16Gb G.skill RipjawsX DDR3 F3=12800CL9Q-16GBXL
Hard Drive: 2x OCZ Vertex 4 128GB in Raid 0
1 OCZ Vertex 4 256GB
Hard Drive: 1 1TB Velociraptor storage
Video Card: NVIDIA EVGA GeForce GTX 670 FTW
Monitor: 1 19" ViewSonic VX922 & ASUS VG236H 23"
Sound Card: Onboard
Speakers/Headphones: G51 / Logitech G930 Gaming Headphones
Keyboard: G510, G13
Racing Wheel G25
Mouse Surface: Razer Destructor
Ingame sound execution made possible by VAC http://www.dwvac.com
Operating System: Windows 7 SP1 64 bit
Games I play