How to communicate with USB drive firmware?

I agree that having out-of-date or buggy drivers on the device is a
problem, but the drivers on a CD in the box have the same problem.
I thought of a class installer that asks the user whether it should
install the drivers. This class installer would be steered by policies
similar to the ‘signed driver Pnp’ policy. I mean that it should be
possible to disallow altogether the automatic installation of drivers.

It would be possible to have the information about
online-drivers(update) in the descriptor. The class installer should
do the lookup for new drivers.
The class-specific-descriptor would also hold the list of supported
OS’s.

Norbert.

“Only those who attempt the absurd can achieve the impossible.”
---- snip ----

Actually, putting device drivers onto a device could be a very bad idea.
There was one company which tried this long ago, and the drivers they
put onto the media were just a “little” bit buggy. Oh, and then their
OS changed. The end result is that they had a nightmare trying to force
these drivers to *not* install in the future.

Some key questions:

  1. Do you want your device to work on future OS versions? How will you
    deal with this?
  2. How sure are you that your driver is bug-free, and won’t cause a
    bugcheck on some customer machine just by plugging in the device?
  3. How will you check for an updated driver?

A better solution would be to have a basic device with in-box drivers
(say emulate a floppy or very small disk) and put an autorun.inf file
that launches to a web site that lists the drivers available for the
device. Since the original poster was doing a USB flash device, this
shouldn’t be a problem to pre-load this onto the flash drive (the user
can always delete it after they use it the first time, of course…)

.

-----Original Message-----
From: Mark Roddy [mailto:xxxxx@hollistech.com]
Sent: Friday, December 03, 2004 1:03 PM
Subject: RE: How to communicate with USB drive firmware?

Not a bad idea.

> -----Original Message-----
> From: xxxxx@lists.osr.com
> [mailto:xxxxx@lists.osr.com] On Behalf Of Norbert
> Kawulski
> Sent: Friday, December 03, 2004 12:42 PM
> To: Windows System Software Devs Interest List
> Subject: Re:[ntdev] How to communicate with USB drive firmware?
>
> Why isn’t there a USB class where the devices bring with them their
> drivers/apps. The device should be the installation media itself.
> Something like:
>
> 1. Plug-In
> 2. System reads device-desc.
> device is ‘bootstrap’-Class…
> 3. Class driver takes over.
> 4. System reads a class specific desc. telling what systems are
> supported. ( Each systems gets an ID made by usb.org).
> 5. Class driver gets drivers/apps from device and does a
> driver-install.
> 6. Class-driver gives command ‘re-identify’ to device.
> 7. Device comes back with VID/PID or Class for just installed drivers.
>
> Norbert.
> --------
> “Compromise makes a good umbrella but a poor roof; it is a temporary
> expedient. - James Russell Lowell”
> ---- snip ----
>
>
>
> —
> Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as:
> xxxxx@hollistech.com To unsubscribe send a blank email to
> xxxxx@lists.osr.com
>


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: unknown lmsubst tag argument: ‘’
To unsubscribe send a blank email to xxxxx@lists.osr.com

---- snip ----

> It would be possible to have the information about

online-drivers(update) in the descriptor.

WHQL and Windows Update provide this.

Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
xxxxx@storagecraft.com
http://www.storagecraft.com

Indeed. How is ‘driver image on device’ any different from ‘driver image on
cd’, other than the user has one less step in the way of seamless
transparent installation? Heck, done right the driver install usb class
would update the firmware image if required, interacting with m’soft’s
online update stuff to fetch the right image and get the device to apply it.

Isn’t this an example of what msoft sees as the smart appliance future? You
just plug stuff in and it works. Whatever steps required to make that happen
are done by the device and the system. No CDs, (and no requirement for a CD
drive,) no user interaction required.

=====================
Mark Roddy

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Norbert Kawulski
Sent: Tuesday, December 07, 2004 6:42 AM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] How to communicate with USB drive firmware?

I agree that having out-of-date or buggy drivers on the device is a problem,
but the drivers on a CD in the box have the same problem.
I thought of a class installer that asks the user whether it should install
the drivers. This class installer would be steered by policies similar to
the ‘signed driver Pnp’ policy. I mean that it should be possible to
disallow altogether the automatic installation of drivers.

It would be possible to have the information about
online-drivers(update) in the descriptor. The class installer should do the
lookup for new drivers.
The class-specific-descriptor would also hold the list of supported OS’s.

Norbert.

“Only those who attempt the absurd can achieve the impossible.”
---- snip ----

Actually, putting device drivers onto a device could be a very bad idea.
There was one company which tried this long ago, and the drivers they
put onto the media were just a “little” bit buggy. Oh, and then their
OS changed. The end result is that they had a nightmare trying to
force these drivers to *not* install in the future.

Some key questions:

  1. Do you want your device to work on future OS versions? How will
    you deal with this?
  2. How sure are you that your driver is bug-free, and won’t cause a
    bugcheck on some customer machine just by plugging in the device?
  3. How will you check for an updated driver?

A better solution would be to have a basic device with in-box drivers
(say emulate a floppy or very small disk) and put an autorun.inf file
that launches to a web site that lists the drivers available for the
device. Since the original poster was doing a USB flash device, this
shouldn’t be a problem to pre-load this onto the flash drive (the user
can always delete it after they use it the first time, of course…)

.

-----Original Message-----
From: Mark Roddy [mailto:xxxxx@hollistech.com]
Sent: Friday, December 03, 2004 1:03 PM
Subject: RE: How to communicate with USB drive firmware?

Not a bad idea.

> -----Original Message-----
> From: xxxxx@lists.osr.com
> [mailto:xxxxx@lists.osr.com] On Behalf Of Norbert
> Kawulski
> Sent: Friday, December 03, 2004 12:42 PM
> To: Windows System Software Devs Interest List
> Subject: Re:[ntdev] How to communicate with USB drive firmware?
>
> Why isn’t there a USB class where the devices bring with them their
> drivers/apps. The device should be the installation media itself.
> Something like:
>
> 1. Plug-In
> 2. System reads device-desc.
> device is ‘bootstrap’-Class…
> 3. Class driver takes over.
> 4. System reads a class specific desc. telling what systems are
> supported. ( Each systems gets an ID made by usb.org).
> 5. Class driver gets drivers/apps from device and does a
> driver-install.
> 6. Class-driver gives command ‘re-identify’ to device.
> 7. Device comes back with VID/PID or Class for just installed drivers.
>
> Norbert.
> --------
> “Compromise makes a good umbrella but a poor roof; it is a temporary
> expedient. - James Russell Lowell”
> ---- snip ----
>
>
>
> —
> Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as:
> xxxxx@hollistech.com To unsubscribe send a blank email to
> xxxxx@lists.osr.com
>


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: unknown lmsubst tag argument: ‘’
To unsubscribe send a blank email to xxxxx@lists.osr.com

---- snip ----


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: xxxxx@stratus.com To
unsubscribe send a blank email to xxxxx@lists.osr.com