VOICE Home Page: http://www.os2voice.org | April 2002 [Newsletter Index] [Previous Page] [Next Page] [Feature Index] editor@os2voice.org

## Finding drivers and information

By Thomas Klein © April 2002

Recently I read a tip (in the Voice newsletter I guess) about how to search for drivers or hardware information using the device's FCC-ID. This quite surprised me, as I thought that almost everybody knew about this way. In my mind this is one more indication that there is a need for the OS/2 community to have either a tight network and/or a central access point regarding tips, tricks or experiences. Well, I am certain that WarpDoctor will profoundly change that situation.

But besides that - what can you do to get specific information or drivers for a given piece of hardware? Because of the constant changing of the internet (which not always equals an improvement) it might be clear that all possible ways I'm going to shop up here might be vanished in less than some months. There is no common method that will always help you succeed - your mileage may vary. What I am about to explain is more or less "my way", point you to several starting points which might serve you in proceeding. It consist merely of two steps:

- Find out everything possible about that piece of hardware
- Recursively crawl the net, proceeding step by step, until your fingertips are itching.

Doesn't sound like a real plan, right? ;)

#### Milestones

Let me give you some kind of short overview on what can be described as a "milestone" when searching:

- Identification of the device in question
- Finding a manufacturer's site and/or driver site
- Identification of equally constructed ("compatible") products
- Finding non-ambiguous, clear-cut information

#### A good start

First, you'll should get to know everything possible about the stuff: Manufacturer, model, revision, chipset used and bus type (if applicable). If the device in question is not accessible or not right in front of you, this might turn out to be a bit complicated. If we're talking about an auction article (e. g. at eBay) that you're about to bid for, you possibly have the opportunity to send an e-mail to the seller before placing your bid (this depends, of course, on the auction system) and ask him to mail you the required information. In some cases when I did so, it was even sufficient just to receive a `"dir"` of the driver disk or CD piped into a file as an attachment to the reply. Even a `readme` or a windows9x-INF-file can be enough to find some usable data about the device. Some of the keen folks simply put the device onto a scanner and send you the picture. Please be aware that this method is only suitable for small devices like sound cards for example and should be avoided in case of cars or construction materials. Just kidding.
So, what if the manufacturer of the device cannot be identified because it was taken out of an assembled system and came with no drivers or manual? Take a close look at it and search for a...

#### FCC-ID

So what is the FCC-ID all about? First, let's make clear what "FCC" does stand for: It's the "federal communications commission". Among other things, they take care of making sure that electronic devices match specific standards like electrical interference for example. Other countries have their own commissions or institutes as well. What does the FCC make so special? They do not simply confirm specific compliance for a certain device, they also keep track of all devices which passed the certification by giving each a unique ID and storing all that information in a huge database. Altogether with additional data like (and that's the most important to us in this context:) manufacturer and model name. The FCC-ID is made of two parts: First, it's the "grantee code" that represents the first three characters (letters and/or numbers) and equals the name of the company that applied for the certificate (usually the manufacturer). Second, we have the device ID - and that's all what's left after the grantee code. The grantee code itself is unique; thus, all certified hardware of one single manufacturer will show up under the same grantee code. This quite makes sense, doesn't it? Something more cute about it, is that apparently there is no common format of representation of the FCC-ID (except for the first three characters being the grantee code). Sometimes, you'll find both parts of the ID separated either by dash, either by a space or not even separated at all. The device code itself does not need to be of a specific length or format (alpha/numeric) either. Around here, in Germany, we would have certainly done that entirely different by first of all defining yet another ridiculous national standard that describes the format of the ID before even thinking about what's next...

Anyway - now all you need is the FCC's web site to type in the ID (or maybe just the grantee code), right? Here we go: http://www.fcc.gov/oet/fccid/
...and if you're lucky, you'll get to know who the heck built that device. Notice that the FCC-ID is only given to products which are intended to be sold in the U.S. market.

Fig.1: Example of an FCC-ID

The FCC-ID shown above was found on an adapter that was lying around for quite a while in my spare parts box. If you go on and check it on the FCC site, you'll quickly find out, that it's a sound card from AESL Technology INC. But unfortunately it won't help you in any way, as there's no site for such manufacturer (at least as far as I could see in preparation of this article). But if you would have that adapter right in front of you, you would have already discovered that according to what's stamped on its front, it's a "Philips PCA70 PS" and that it shows a Crystal Semiconductor "CS4238" chip. In this case, you wouldn't even had to rely on the FCC database (we'll get back to that later) but no matter - I just wanted to give you an example of what a FCC-ID looks like. To sum it up: If there's an FCC-ID it will give you a good start...

#### ...and what if there isn't?

Check out, whether you can make out anything that looks like a company's name. In vain? There's still one final workaround: Chipset compatibility!

Most adapters (sound, graphics, network, controller) are basically made of a pcb layer (the "card"), some elements for electrical supply and control, some others for signal preprocessing, maybe a clock generator (quartz) and finally... the processor that does the "actual work". And *that's* your enemy's weak point! ;) No company that wants to sell competitive low-priced stuff and keep up with today's fast-path product cycles can afford to re-invent everything again and again. Instead, they simply buy parts from specialized manufacturers and simply sold them altogether onto a board (example: Philips sound card from AESL with Crystal chipset...), drop a generic driver disk with it into a box, shrink wrap it and that's it. Most of the time, they don't even care of putting their company's name in the according files on that driver disk.

As an example, let's figure out what happened to "RTL8029", a network adapter chipset found on many low-priced Ethernet controller cards: There are about 3 or more companies that provide a set of drivers for their adapter which uses this chipset. If you take a short look at the files, you'll discover that each of them states "Realtek", who is the actual maker of the chipset. Well, we all have to save time and money wherever we can... So don't worry, but stay optimistic! Usually on earth, it's just 3 different actual manufacturers of chips that are designed to serve the same purpose (e.g. ethernet controller) but who are not compatible.

#### Pardon? Example please!

Okay - let's get on with that RTL8029 chip, that resides on almost every 10Mbit PCI ethernet adapter (together with RL2000) that's being sold in our solar system (or the RTL8129 in case of 100MBit cards). Now let us assume that you neither know manufacturer, nor model and that there's nothing else but that adapter in front of you, hosting a chip that says "RTL8029" (or "RTL8029AS" as shown in the picture).

Fig.2: Sample chipset

Fine - all you need to run that thing you found at your in-law's garage sale, is a driver for OS/2? Let's simply start like that:

Just type `"+rtl8029as +os/2"` at yahoo!

...and the first out of 75 matches is a 100% direct hit which will lead you to Realtek's "products" site, providing a link to the manufacturer's download page... wow, what a fortunate coincidence... and what a bad example as well ;) Okay, to show you what to do if things turn out bad, let's just get on and assume that your search did not give you any (usable) results. At this point usually you're stuck... unless you know about a chip's life cycles: Chips are being designed once, then they are revised or improved and usually they should carry some kind of revision suffix in their names. In case of our example this would mean, that the predecessor of RTL8029AS probably was called RTL8029 and has undergone some kind of revision which gave him that "AS" suffix. Okay, yes, this is a quite abstract way of thinking, but if you're stuck in the middle of nowhere, you're thankful for every little bit of help, aren't you? In addition, you probably do have a chip named "RTL8029" built on your adapter card and after all: I need a new example. ;)

So let's assume you're starting from scratch with `"+rtl8029 +os/2"` entered as your Yahoo! search term.

After checking the first 10 matches, you're likely to know that the manufacturer seems to be REALTEK, as this name is contained in most of the link descriptions. So we're back: Knowing the manufacturer (either thanks to a FCC-ID or by searching for additional information). If Yahoo! (or Google respectively) didn't give you enough matches try it again by removing "+OS/2" from the search term. This is intended to look for things like hardware reviews or how-to's in addition and might too much narrow down the matches found.

#### Gonna getcha

Okay. We know the manufacturer - now just move to its website, download the driver and we're done. So you think. Knowing the manufacturer does not always equal to knowing its website. Well, yes... there is some kind of correlation between "www.ibm.com" and that strange company we know, but that does not need to be like that all the way. If your V90 Modem is made by CNet, you probably won't succeed by just moving to `"www.cnet.com"`. If you don't already know what this will result in - just give it a try. You'll say "eh, yes, that was kind of clear somehow..." you'll have to use to get to the manufacturer's homepages, or "`diamondmm` instead of `"diamond"` as we all would suppose? Once again: It's just trial and error. To stay with the above example, you could check Yahoo! systematically for things like "`+realtek +company`" which currently will give you only 1 (the right) match. Or you could just try using `"www.realtek.com"`. This one will lead to the "wrong" company. One more try? Add `".tw"` and you're done. This works most of the time when dealing with low-priced products. your own now.

One more thing, before we go on: Don't let the net get you down - persevere with your investigations. Sooner or later you'll find a document or two that will let you proceed one more step. I once had a set of ISA network cards with BNC cable and terminators from a friend of mine. He bought the stuff from a company that was about to be liquidated and planned to set up his home network,first, but then decided to not do it for some reason. As I once helped him with some kind of hardware problem, he asked me whether I could use it and gave me the stuff for free, just to get rid of it. I was faced with the problem of not having either manuals or driver disks. After a long time of searching in vain I found some web page that was entirely in chinese and appeared to be excerpts of discussion threads. I used ctrl-f to look for the string "MX" that I had entered at Yahoo! (altogether with "network adapter"). I can't exactly remember anymore, but I guess it was due to a hyperlink "close" to that string, that I finally found the manufacturer's web site for "retired products". The URL that is associated with such hyperlink is resolved in "non-chinese": Moving your mouse pointer to the hyperlink will resolve the URL in your browser's status area, even if the link text is in chinese... yeah, I know this is nothing tremendously new and that you probably knew it yet, but I just wanted to tell it once again, as people tend to forget such things... this could help you in checking out if there is some kind of driver page available. Did I mention that it works well on cyrillic pages too? ;)

#### Stuck?

So what if you absolutely can't identify the manufacturer of an adapter or (the worst case) if you can, but there's no drivers for OS/2? It's still very likely that there is another manufacturer, who uses the same chip on his board. (See above) and provides drivers for it. If you're lucky, you probably might even find a website complaining about the device's lack of drivers for OS/2 or the fact that there is only one driver and that it does not work. It might sound stupid, but this really is invaluable information! It tells us "hands off that device; use another one!". ;) Serious: If people don't mind telling about their problems too (instead of just their successes), it can save a lot of blood, sweat and tears to other people. Unfortunately, this doesn't happen too often, despite the fact that this kind of negative experiences are as worth mentioning as positive ones are. Only "no information" is bad information.

But let's get back to what I mentioned before about searching another manufacturer... how are we supposed to find it? Simply by searching once more.;) In the above example of RTL8029, we know that we're dealing with a network adapter card, and that it's a pci bus model. So here we go again at Yahoo!: `"+pci +network +adapter +rtl8029"` ...and almost after the first page of matches, you'll find Kingston, OvisLink and SVCE are worth dropping by. (I never heard of SVCE before). When browsing the pages found, you should always try to look for links or headlines like "PCI Network Adapter". Or "8029" as most of the manufacturers adopt it to make up their product and model names. Thanks, folks! This way, you should easily identify a compatible model from a different manufacturer, enabling you to look for appropriate drivers. None of the three manufacturers named above explicitly states "drivers for OS/2" anywhere, but at least Kingston and Ovislink provided the entire driver sets from Realtek (the manufacturer of the RTL8029 chip), including NDIS2 drivers for OS/2. The only drawback here is that they come as self-extracting archives for Windows. But even that shouldn't be a problem: They consist of a program header part, the zip data stream (containing the packed files) and the central zip directory. Just like "normal" zip files do. To give you an impression of what I'm talking about just try renaming the .exe to .zip for fun and pop it into your favorite unzip application. I used FC/2 and had no problems to access the files contained in it or view the readme for example.

#### Got the driver, but it doesn't work

I never thought, this to possible... ;) Okay - some hints: Try to look for information whether there is some flash update available for the device in question (if applicable, that's to say: If the device has such upgradeable EPROM chips). You should check older driver versions too or make sure, if your system's Fixpak level is according to what the driver might require. Use ALT-F2 option at Warp / eCS bootup to check, where the problem takes place or what driver causes trouble if you don't already know.

Probably there's another hint applicable, if we're dealing with "genuine" hardware that comes with a proprietary, non-generic driver: Check to see what chipset is used on/in the device and if there maybe is a generic driver for it. Like I mentioned in my review on the DawiControl SCSI controller, this might save your day. The manufacturer's device driver caused severe problems when used in conjunction with specific fixpak levels. But as the controller's chip was a Symbios SYM53C875 (yes, they're called "LSI Logic" now), I tried to use Symbios' drivers instead... and surprise: Everything worked like a charm.

#### Want to get into details?

From time to time, when downloading drivers, I have the need for additional or detailed information about it, for example in case of missing specifications about the file on the download page or if the readme (if contained at all) does not give me the required information. Sometimes I just wonder whether it's a new version of the driver or not. And there's one clue about that: Always keep in mind, that drivers are nothing magic but simple files after all. They can be opened with almost every simple editor. (But make sure you're using either a copy of the driver file or having read-only access turned on at least. Any accidental write operation could damage the driver, making it unusable - or the entire system in worst case). Now, among all the binary stuff, drivers contain "clear text" parts as well. Don't ask me for details, but the parts important to us here (version information to be precise) are found at the near end of the driver file in case of Windows drivers, whereas OS/2 drivers contain them at the top (beginning) of the file. Depending on the editor you use, make sure you've got line wrap turned on. There usually is little need for scrolling (if any) to get to the part in question from either top or end of the file, depending on the driver type:

Fig.3: Looking into an OS/2 driver file

So if your strange part of hardware only comes with a windows driver disk and you don't know the manufacturer, model nor FCC-ID, there is no chip with an useful name and the readme file only explains how to install drivers under windows 95... don't worry - there's still a chance of finding information! Grab that windows driver and load it into you editor. Jump to the end of the file, then scroll backwards line per line.

Fig.4: Looking into a Windows driver file

This way you'll probably get to know some more information on manufacturer or model of that strange piece of hardware of yours. If you intend to do text search within the file please be aware that these "clear text" looking parts of windows drivers most likely are made of unicode characters: Each character is stored using two bytes, thus "Copyright" being stored as "C o p y r i g h t" for example, with the "space" signs being binary zeroes that you won't be able to enter in your search dialog. So, if your editor only supports ASCII ("usual" text) search, you won't find the strings.

#### The greatest challenge to mankind

...in my mind is definitely the search for OS/2 drivers when dealing with notebooks. We're faced to several problems at once: There's more than just one chipset you'll have to mess with (audio, graphics, pcmcia, maybe network and/or modem), you'll find manufacturers won't tell what was built into their boxes ("Who cares", "We should not tell that in public") and last but not least one final obstacle we all know: They seem to not even know OS/2 is still around. In addition, a product's life cycle nowadays has dramatically decreased. Apparently, there's not even time left to stuff support web pages with useful technical information or it is no longer available as the product has already "retired".

But in fact, there is no such great difference to what I mentioned above: Again, use the appropriate window's driver file and your editor to find out what you're dealing with, then check for drivers. You can even take a look at what's contained in the window's .INF files. Simply check either the commentary at the top of the file (if there is one) or entries like "DeviceDesc=..." or "Manufacturer=...". Then, check any readme's or - as described above - driver files themselves. To conclude this tour on mobile computing, there is one website you should make sure to rely on: Dr. Martinus Notebook/2 site! Whenever it's about notebooks and OS/2, this is a real "must have" web page. It provides all relevant information to more than 300 models - exclusively for OS/2 - grouped by manufacturers and models. There is also a wealth of information on drivers and pc-cards (pcmcia). You probably won't find the latest and hottest "killer models" there, but in case of planning to buy a cheap, used notebook and looking for usability information prior to your acquisition, I urge you to take a look.

#### If all is lost

...and this unfortunately happens quite often, there's still other pages that might be helpful if you know manufacturer and model, but are unable to find sites or drivers. Check out manufacturer-independent driver sites like download.com. Sometimes they provide generic driver sets that "accidentally" still contain drivers for OS/2 and netware (besides the intended, win-flavored stuff). But that should really be your last little bit of hope, as most of the time you'll do it in vain. If you're in search of help or information, you can either post your request to the common newsgroups as well as the forums at OS/2 e-zine, OS2World or os2.org. Some months ago, I would have named "Focus on OS/2" at About.com, but as we all know from our president, this one now belongs to the past.

If you need basic information prior to new acquisitions (like "What graphic card should I choose?"), you're welcome to post it in yahoo!s OS/2 Hardware group". As it is quite rare that I visit newsgroups, I didn't want to praise them here too much, as I can't tell you a lot about it anyway... but you're always welcome to create your own experience - go ahead and try.

#### Everything's gonna be okay...

I hope this small manual will help somebody find drivers and/or information. It is not intended to be a single, all-cure way of how to find drivers, just take it as a kind of guide, as it consists of a lot of manual work that is still up to you. At least you should have some starting points and a basic concept for doing your search, even under tough circumstances - that's to say: If your own first steps fail. Well... I can't help but telling what I feel, even if you might not be pleased about it: For quite some time, IBM's DDPak Online was my favorite starting point in search of drivers or information. But since the day they moved it to a Domino database (or whatever thing is behind those "blue triangles"), it has become almost unusable or even useless. First, you keep searching and searching forever (and it takes AGES to expand those silly "branches") second, there's no way of checking out changes/updates with a single look like back in the old days and third, it seems to me that you always end up with something that turns out to be a reserved feature for SWC subscribers, as they mixed up the whole stuff but didn't provide a way of distinguishing between what's free and what's not. As I said, changes don't always equal improvements, but well - if they want people to stay off their site in search for OS/2 (drivers), it's a good start. I'm really disappointed on that situation... but anyway, everything's gonna be okay:

WarpDoctor and the hardware compatibility list are needed more than ever, and I'm sure they can live up to our expectations. At least, I'll drop every little bit of information I've got into those two databases (WD and HCL) as soon as they're on air - that's for certain. And I urge you, users, readers and writers of hardware and software reviews to not keep your experiences (whether good or bad) hidden somewhere, no matter how recent or old they are - share them with us and feed these new "babies".

Thomas Klein is an IT consultant at Systor GmbH & Co. KG and is currently involved in software quality control in a large-scale project at IBM. He's been using OS/2 since version 2.11

[Feature Index]
editor@os2voice.org
[Previous Page] [Newsletter Index] [Next Page]
VOICE Home Page: http://www.os2voice.org