Re: Serial I/O problem with pywin32 ?
- From: Impotent Verse <simon.peverett@xxxxxxxxx>
- Date: Thu, 4 Sep 2008 03:20:11 -0700 (PDT)
On 3 Sep, 16:33, "Diez B. Roggisch" <de...@xxxxxxxxxxxxx> wrote:
Xavier schrieb:
Hi,
I try to access to a Bluetooth GPS data-logger with Python. I use
pySerial.
Sending and receiving little messages (~100 char) works fine. However,
when I ask the GPS to dump the trails, it returns some Mbytes and here
is the problem : in the stream of bytes, I randomly losts chunks of
~100bytes.
I tried USPP and pyBlueZ instead of pySerial : same problem.
It doesn't like it is a bufferoverun bug from me because :
- the GPS seems to wait when I do not read the stream,
- there is never more than 200 inWainting() characters,
- my code to test it is quite simple :
seriallink = serial.Serial("COM40")
fileName = "data.dump"
out = open(fileName, 'w')
while 1:
c = seriallink.read()
out.write(" %0.2X" % ord(c))
print "*",
out.close()
(with pyBluez :
sock=BluetoothSocket( RFCOMM )
sock.connect(("00:0A:...", 1)))
I tried my program on two different PC with two Bluetooth dongle,
(with pySerial, USPP, pyBluez).
The same things are :
- windows
- the GPS (which works fine with the dumper program of the
constructor)
- pyWin32
I've found another guy with a similar problem :
http://www.generation-nt.com/reponses/rs232-entraide-142097.html
He says:
- no problem with little messages
- lost of one byte every hour when receiving a lot of data
Any known problems with pywin32 and serial I/O when downloading a big
stream of data ?
From my experience with serial lines I'd say: that's the culprit. They
tend to be rather unreliable, as there is no real protocol ensuring data
integrity.
You might consider downloading chunks of data if that's somehow
possible, and re-try failed chunks.
Diez
Could be hardware flow control. See this sometimes on the bluetooth
connections that are using Serial Port Protocol and the hardware flow
control hasn't been physically implemented.
Do you lose data after exactly the same amount of data has been
received?
.
- Follow-Ups:
- Re: Serial I/O problem with pywin32 ?
- From: Xavier
- Re: Serial I/O problem with pywin32 ?
- References:
- Serial I/O problem with pywin32 ?
- From: Xavier
- Re: Serial I/O problem with pywin32 ?
- From: Diez B. Roggisch
- Serial I/O problem with pywin32 ?
- Prev by Date: Re: Issue warning if no "return" in function?
- Next by Date: Re: Coming from .NET and VB and C
- Previous by thread: Re: Serial I/O problem with pywin32 ?
- Next by thread: Re: Serial I/O problem with pywin32 ?
- Index(es):
Relevant Pages
|