General discussion


Unusual USB requirement

By Choppit ·
I have a requirement to test large numbers (1000's) of USB BJ printers but need to overcome an apparent Windows limitation. After attaching (individually) a large number (100's) of units to a W98 PC, Windows refuses to enumerate new devices rendering the system useless. This downtime has a significant effect because the profit margins for this type of work are very low. To reduce downtime, I've created 4 Windows partitions on each of the 4 boxes, the idea being that once an OS is trashed, the next one can be used. The system is supposed to ensure that a working partion is always available on each box but for whatever reason the techs doing the job only call for assistance once all partitions are trashed. My efforts to train the techs to restore the partitions from an image have also failed (usually resulting in unbootable systems or deletion of the image partition).

Any ideas?

This conversation is currently closed to new comments.

Thread display: Collapse - | Expand +

All Comments

Collapse -

by Choppit In reply to Unusual USB requirement

Some more information.

The manufacturer has specified that a particular print should be used as evidence of repair.

I've considered using Linux, but the manufacturer does not produce Linux drivers. Open source drivers are not really an option as the product range spans all models and we are required to provide the service from product release date. Linux has not been ruled out though provided that these points can be covered.

I've tried various registry fixes, restores etc and had no success (I did however manage to use this method to solve an identical problem with testing scanners).

I've considered using USB print servers to 'hide' the USB device from the PC, but 1)I'm not convinced this will work 2) Am fairly certain this will increase the process time.

I've looked for (and briefly considered building) USB 'test boxes'.

I've considered 'printing to file' on W98 to create a test file and then using another OS (perhaps Linux or DOS) to output the file to the USB port via a parallel to USB converter (I haven't found one yet).

If anyone can expand on these ideas or has a solution I'd appreciate it.


Collapse -

by TheChas In reply to Unusual USB requirement

I think the problem should be the Hardware Enum key in the registry.

Here's an idea that should work.

Identify any files (aside from the registry) that are changed when a new printer is connected.

Verify that all required drivers and registry keys are installed on the system.

Create a folder and store "reference" copies of the registry and changing system files there.

Create a batch file that copies the "reference" files over the system copies.

Add a call to the batch file to autoexec.bat

That way, at every boot the registry and hardware related system files are replaced with working copies.

If the PCs are left on 24/7. Use a startup control utility to force a restart before the beginning of your first shift.
(or another "good" time)


Collapse -

by Choppit In reply to

Thanks for the suggestion which sounds feasible. In the end I decided to concentrate on foolproofing the OS partition restore process and storing the install files on a network share. This works well, and systems can now be restored in < 2 min.

Collapse -

by Joseph Moore In reply to Unusual USB requirement

I'm glad The Chas had an idea for you, because you just managed to confuse the heck out of me!
You are plugging over 100 USB printers into a single Win98 machine????? And you are wondering why things frak up??????
Where should I begin?
First off, there is a limit to the number of USB devices that can be plugged into a single USB connection, even with a USB hub. I think it is 127 devices. That is how USB works. You aren't gonna get past that one.
Next, I'm trying to imagine a Win98 machine that could realistically handle that many physical devices connected to it. I think a box the size of Big Blue or a Cray might take care of this! You would probably need so much RAM as to me ridiculous, and Win98 does have that 4GB RAM limit (or is it 2GB? I forget.). A single Win98 machine trying to keep track of so many devices, and yeah, it's gonna freak out!
There has got to be a better way of doing this!

Collapse -

by Choppit In reply to

You've misunderstood the question. There is never more than 1 printer on the USB bus at any one time. The 127 device limit applies to simultaneous connections. There is however, another (as yet unknown) to the number of connect/ disconnect operations that can occur (possible physical memory). I have unverified reports from the techs that this can be as high as 900 devices (but I have my doubts that the techs are that productive!). The process cycle goes like this; a previously untested model is received, the drivers are loaded and the device plugged in. The unit is tested, repaired, retested and a specified test print generated. The unit is then boxed and returned to its owner. In any given day multiples of 20 different models could be processed or a batch of 100 identical units. The problem is that Windows appears to treat each connection instance as a new, unique device. What I need to achieve, is maximum uptime for the host.

And yes, there must be a better way..........

Collapse -

by kennethsf In reply to Unusual USB requirement

Since this is Win98, you could use msconfig to stop scanregw from running automatically. Then, after you have configured your machine with the required drivers and such (and successfully run a test page on each printer model you'll be testing) you restart the computer in DOS mode and take a snapshot of the registry as is (scanreg/backup) and continue to use the computer for the remainder of the 100 shots it lets you. Then you restart the machine in DOS and run scanreg/restore to return the enumerator to its original state, so you can continue to run another test batch. (you can even somehow automatize this in a start menu)

I think the problem is the accumulation of id's in the enumeration section of the registry (each USB device not only contains a device identifier but also has a serialized id so Windows can recognize one from the other when two identical devices are connected at the same time) Those additional id's have to be stored so windows can know what to do when the device is connected again into the machine. Since you do not need this functionality, I think the backup/restore routine outlined here could help. Too bad I no longer have win98 at hand to try to find a registry route to erase in order to obtain the same in an easier way



Collapse -

by Choppit In reply to

Thanks for the suggestion which sounds feasible. In the end I decided to concentrate on foolproofing the OS partition restore process and storing the install files on a network share. This works well, and systems can now be restored in < 2 min.

Collapse -

by wlbowers In reply to Unusual USB requirement

When you go in to Best Buy or CompUsa the printers have a dump box on them for printing a sample file.

Sounds like you need to find out who makes them and see if they can custom for you.

As for the system crash. Put the drives in a removable tray like the lian li RH600. I have found these for as little as $42.00.

Anyone can power down and change the tray.

Good Luck Lee

Collapse -

by Choppit In reply to

Thanks for your answer, unfortunateley, I never managed to source a test box and the caddy idea is nice but has the same limitation that my current solution does i.e the end result will be a stack of trashed OSes which I will have to restore, and therefore downtime.

Collapse -

by Choppit In reply to Unusual USB requirement

This question was closed by the author

Related Discussions

Related Forums