pyserial ztrácí nahodile vždy jen jeden byte.
martin <[email protected]> Sat, 4 Jan 2020 18:04:39 +0100 (CET)
| Newsgroups | gmane.user-groups.linux.czech |
|---|---|
| Message-ID | <[email protected]> |
Ahoj, Programuji si aplikaci s komunikací přes BT.
Celkem už bylo hotovo až na to že win port nepodporuje BT
sokety takže smůla.
Jak je to na MacOs jsem ještě nezjištoval.Takže z5 a
přepracovat na využití BT
jako seriového portu.Ale ať zkouším cokoliv jednou za čas mi
v přijaté zprávě chybí bajt.
Nedá se použít readline protože posílá jen surová data která
parsuju.
Zatím napolo fungují jen sysex zprávy.
Inicializace
self.socket = serial.Serial(port="/dev/rfcomm0",
baudrate=2400, parity=serial.PARITY_NONE,
stopbits=serial.STOPBITS_ONE, bytesize=serial.EIGHTBITS,
timeout=None, rtscts=False, xonxoff=False)
A samotné čtení
while self.socket.isOpen(): self.socket.flushInput() byte =
self.socket.read() if byte != b"": msg = byte +
self.socket.read_until(b"\xf7", self.socket.in_waiting) try:
msg = list(unpack("75B", msg)) except struct.error: # log
error or try last action again print("ERROR unpacking: ",
msg)
za každou radu budu rád.
Díky.
Zobrazit: http://www.abclinuxu.cz/poradna/programovani/show/452082