| Q: I have a USB (or CompactFlash) device that I want to use in your system. What do I need to do to get it to work?
The PCMCIA, CompactFlash and USB standards fall into the class of "plug and play" device drivers. When the device is inserted, the computer queries it to determine what kind of device it is. The computer then attempts to load a matching device driver.
Many classes of devices are supported by current CE builds. These include many CompactFlash and USB memory devices, most USB keyboards and mice, NE2000-compatible Ethernet cards and some 802.11 cards.
Standard (RAM-based) Installation
If you insert the device and get a CE error message that the drivers were not found, you'll need to install them. The general process is:
- Acquire a Windows CE driver from the device vendor that is built for ARM processors.
The driver is usually packed into a CAB file, and should install automatically (the CAB extractor will copy the driver into the Windows folder, modify the CE registry with settings for that card and install any additional application files).
- When you plug the device in, CE will load the drivers and the device should work as advertised.
The standard installation works well for PDAs and other devices that are always powered up, but many embedded devices don't run off battery power and may be cold-booted on a regular basis. For these systems, a different approach is needed.
Generally, the approach is as follows:
- Extract the registry and driver files from the CAB file (see topic 168 for details)
- Add the registry entries to the ADSLOAD.REG file, load them with ADSREG.EXE and/or persist them.
- Create an ADSCopy script that copies the driver (DLL) to the Windows folder, then warm-boots the system (restart.exe).
- Place ADSCopy and its script file in the startup folder of the non-volatile FlashFX disk. This script will run every time the system boots.
The restart is required because the system drivers--including the FlashFX Disk driver--must be executed before the system can launch installer (more details at topic 513). A CE warm boot does not disturb drivers that have been copied into the file system.
Related topics: CAB files
Edited by akidder 15-Aug-2002: Add link to CAB topic.
Edited by akidder 12-Nov-2004: Expand topic to cover USB and CompactFlash devices. Change subject from "Using 3rd party PCMCIA cards". Move from "CE Flash, CF and PCMCIA" forum. Add more details about normal installation.