3

I have an embedded device that connects to a PC using USB and enumerates as a USB serial port. The device spits out approximately 30 megabytes of data over a period of about 15 minutes.

My PC is running a Python script using Pyserial to read this data and store it in memory. It works fine.

I have given the script to three colleagues; one of them also has no problem with it, but the other two find that only about 40% of the data is received by the script.

All the PCs are running Windows XP SP2 and all are of a similar hardware spec. In all cases the serial device is connected directly into the root hub, not via any external hubs or anything like that.

I tried connecting Hyperterminal and setting it to capture the data to disk, again on my PC this works fine but on the two other PCs it only collects ~40% of the data.

We all have the same anti-virus stuff running (and no reason to believe it's trying to scan this data as it comes in).

I am running out of ideas as to why so much of the data is lost on these other PCs. Any suggestions for things that could be causing this?

Edited to add hardware specs:

My PC (which works fine): Intel Core i7 CPU 920 @ 2.67 GHz 2.99 GB RAM

One my colleague's data-losing PC: Intel Pentium D CPU 3.39 GHz 3.25 GB RAM

So he has an older processor, but on the surface of it it's a faster clock rate and more RAM on his PC!

5
  • +1 I've always wondered why this happens myself. From my research, I found out that such problems can be solved by switching to PCE/PCI-E/ExpressCard(over PCI-E) serial ports.
    – AndrejaKo
    Sep 1, 2010 at 12:57
  • You said the PCs have "similar" hardware. Are the motherboards different? I'm thinking Serial Bus maybe?
    – JNK
    Sep 1, 2010 at 13:07
  • @JNK I've added some more details on the hardware spec. Thanks.
    – Vicky
    Sep 1, 2010 at 13:27
  • @AndrejaKo: Switching hardware isn't an option at ths point unfortunately... :-(
    – Vicky
    Sep 1, 2010 at 13:28
  • That's why I made it a comment.
    – AndrejaKo
    Sep 2, 2010 at 9:40

2 Answers 2

1

After your hardware specs update:

Older processor = older motherboard. My guess would be it's an issue with the serial bus on that motherboard. To know for sure, see if you can locate in your organization another PC with the same specs and replicate it.

It could also be something silly like device drivers for onboard components, or service packs/hot fixes.

0

Have you tried multiple USB ports on your colleague's PC? It's a bit of a longshot, but it could be a single port/controller faltering.

1
  • Yep, we've tried that and it made no difference.
    – Vicky
    Sep 3, 2010 at 8:46

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .