Thursday, October 15, 2009

How to Identify Unknown Devices in Device Manager (a.k.a. Finding Updated Drivers).

One of the more common questions that I get asked is: "I have this unknown device in Device Manager, how do I get the driver for it?". A related question is this: "My computer maker stopped supporting my model, how do I get new drivers for it?". While it doesn't appear as such, the later question is essentially the same question as the first. The reason being that in reality, almost all computer manufacturers do not make their own drivers. The device maker customizes their driver installer with the manufacturers name etc. but the driver's themselves are from the device maker. To find new drivers, if they exists, we simply have to find out the real identity of this device. So it is basically an unknown device as well.

So this overarching question of how to get the drivers for an unknown device is solved in two parts, the first and sometimes hardest part being identifying the device. Once you know what the device is, then you just have to find the driver.

 Identifying A Device (Via An Example):


As an example, I will go through the process of identifying an unknown device called PCI Flash Memory. While we get a hint that this device is our flash memory card reader, we have no clue who makes it, what device it is etc. So we need to identify it.

In order to look for and identify a device, we need its Hardware ID. The This hardware ID is unique to that type of device and allows us a means of finding the true manufacturer. To get the Hardware ID for your device, you will first need to go into Device Manager. In XP this is accomplished by going to Start-->Settings-->Control Panel-->System-->Devices Tab-->Device Manager button. In Vista and Windows 7, simply type Device Manager into the search box on the Start menu and it will appear in the menu above.


Below I have taken a screen shot of Device Manager:



 
As you can see, the devices are grouped according to their function. If you had an unknown device, there would be an additional category called Other Devices. You can tell it is not working based on the based on the yellow triangle with an exclamation point. This appears when there is an error of any sort with the driver, this can be no driver found, wrong driver installed, the driver doesn't work, etc.



The next step is to double click on one of these unknown devices. A new window will come up detailing the current status of the driver. It will likely say: "Driver not installed", "Driver Not FOund", "Driver not working" etc. There will be several tabs at the top, click on the one labeled Details. There will be a drop-down box on the screen, click on it and select Hardware ID's



The above are the hardware ID's for this device. Record these as we will use these to identify our device. This device is extra special because as you can see it is connected to the PCI bus, which is what the PCI\ means. The PCI bus provides us with two fields: VEN_ and DEV_. Using the website PCIDatabase we can quickly search for the identity of our device.





Since he have the Device ID, we simply enter the Four Digit number following DEV_ (Note: If it has the letters a-f in the four digits following DEV_ , those are considered numbers as well as it is using Hexidecimal numbering). In our case, it was DEV_0530. Click on search and you will see the following results:

 In the first column, we have the device ID's. The second column gives the Device Description. The third column is the important one. The Vendor ID, this is the four digit number following the VEN_ string in our Hardware ID. In our case it was VEN_1524. As you can see, we have a match. Item number 2, Memory Stick Card Reader by ENE Technology. We have now identified the original maker of our device and its identity.

Finding the Driver:

This is the more luck driven side of things. You basically begin searching by the name "Ene Technology Memory Stick Card Reader Driver" and related searches like that. Since I knew there was more than one device involved, I searched for Ene Technology Card Reader Driver. My first link was to a signed driver package that included Vista x64 drivers. I needed Win7 x64 drivers but it turns out the Vista drivers will work just fine.

If you can't find it by a simple search like above, then you have to start getting creative. The next thing I look for is searching for the HardwareID: "PCI\VEN_1524&DEV_0530 driver" or "VEN_1524&DEV_0530 driver". Ninety-five percent of the time, one of the above will return positive results. Occasionally though, especially with really old or rare devices, drivers may not exist for the OS you need. In that case, there isn't much you can do about it.

No comments:

Post a Comment