Patent ID: 8171502

Claim:
A method of automatically installing one or more custom device drivers for a peripheral device from the peripheral device onto a host computer, the method comprising the following that are performed by the peripheral device: upon connecting the peripheral device to the host computer, exposing an operating system of the host computer to a default configuration of the peripheral device that comprises only a device driver class interface or interfaces for which the operating system includes preinstalled class level device drivers, at least one of which includes an automatic run routine but does not comprise a device driver class interface for which the operating system does not include a preinstalled class level device driver; in response to receipt of an install command directly from the automatic run routine in the host computer and/or from an executable routine in the host computer that is pointed to by the automatic run routine, automatically transmitting one or more custom device drivers from the peripheral device to the host computer; in response to receipt of a change command from the one or more custom device drivers that were transmitted to the host computer, changing configuration of the peripheral device from the default configuration to an alternate configuration that comprises interfaces for the one or more custom device drivers that were transmitted to the host computer; and then upon subsequently connecting the peripheral device to the host computer, again exposing the operating system on the host computer to the default configuration of the peripheral device, and, in response to receipt of a change command from the one or more custom device drivers on the host computer, changing configuration of the peripheral device from the default configuration to the alternate configuration.