Serial port error statistics - any comparable data?

H

Hendrik van Rooyen

Hi,

I have been doing some tests on a device that
we are thinking of incorporating into a product,
and I have seen that reception on a serial port
at 115200 baud over about six metres of RS-232
cable makes mistakes, to the order of 125 lines
with errors in them out of approximately 18.4
million lines of 65 or so chars - about one errored
line in 147000, or one error character in 95 million.

The PC that is making the errors is a 64 bit dual
core AMD machine running at 2 Gig, and I am
running stock standard Open Suse 10.3 with
the supplied Python 2.5.

What kind of bothers me is the nature of the errors -
I seem to get only missing characters, as if an
interrupt was missed. There are no munged characters
as one would expect if the errors were bit related.

Has anyone else seen anything like this, and am I worrying
needlessly?

I realise that my production protocols will easily handle
this almost non existent level of error - but if this were in
microcontroller code that I had written myself, I would
suspect that I was spending too long in some critical
section of code.

- Hendrik
 
D

Diez B. Roggisch

Hendrik said:
Hi,

I have been doing some tests on a device that
we are thinking of incorporating into a product,
and I have seen that reception on a serial port
at 115200 baud over about six metres of RS-232
cable makes mistakes, to the order of 125 lines
with errors in them out of approximately 18.4
million lines of 65 or so chars - about one errored
line in 147000, or one error character in 95 million.

The PC that is making the errors is a 64 bit dual
core AMD machine running at 2 Gig, and I am
running stock standard Open Suse 10.3 with
the supplied Python 2.5.

What kind of bothers me is the nature of the errors -
I seem to get only missing characters, as if an
interrupt was missed. There are no munged characters
as one would expect if the errors were bit related.

Has anyone else seen anything like this, and am I worrying
needlessly?

I realise that my production protocols will easily handle
this almost non existent level of error - but if this were in
microcontroller code that I had written myself, I would
suspect that I was spending too long in some critical
section of code.

RS232 is unfortunately as bad as a "protocol" as it can get. I've used
it for communication with a microcontroller for just a few bytes every
second. And it failed miserably, so I needed to implement a protocol on
top of it.

The machine spec is totally irrelevant - what is interesting is the
serial hardware you use. Are you by any chance using a
serial2usb-converter? I had nothing but troubles with these.

if you have the chance, try & attach a machine with legacy rs232 port,
and see if the errors still remain.

Diez
 
C

castironpi

Hendrik van Rooyen schrieb:











RS232 is unfortunately as bad as a "protocol" as it can get. I've used
it for communication with a microcontroller for just a few bytes every
second. And it failed miserably, so I needed to implement a protocol on
top of it.

The machine spec is totally irrelevant - what is interesting is the
serial hardware you use. Are you by any chance using a
serial2usb-converter? I had nothing but troubles with these.

if you have the chance, try & attach a machine with legacy rs232 port,
and see if the errors still remain.

Transmit observed minus expected to cluster. What kind of tables does
the input device build?
 
B

Bjoern Schliessmann

Diez said:
if you have the chance, try & attach a machine with legacy rs232
port, and see if the errors still remain.

Additionally, what kind of buffers does your device have? I'm using
pyserial to control a very "sensitive" device with nuttily
implemented buffering strategy. It has a "fast" and a "slow" buffer
which are filled in order, and no signalling to the outside sender
on how full they are. If the fast buffer fills the slow buffer
kicks in and requires less transmission rate. That may be how
characters could be lost with you.

Regards,


Björn
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,767
Messages
2,569,572
Members
45,045
Latest member
DRCM

Latest Threads

Top