Fix serial data corruption on Windows with Arduino Mega 2560 Rev 3

This commit is contained in:
Andrew Kay
2020-06-30 18:53:20 -05:00
parent 47bbf88d94
commit 7d1162d1c2
2 changed files with 5 additions and 2 deletions

View File

@@ -212,6 +212,7 @@ void loop()
}
frameBufferCount = 0;
frameState = WAIT_START;
} else if (byte == FRAME_ESCAPE) {
frameState = ESCAPE;
} else {

View File

@@ -21,17 +21,19 @@ class SerialInterface(Interface):
def reset(self):
original_serial_timeout = self.serial.timeout
self.serial.timeout = 5
self.serial.reset_input_buffer()
self._write_message(bytes([0x01]))
self.serial.timeout = 5
try:
message = self._read_message()
finally:
self.serial.timeout = original_serial_timeout
self.serial.reset_input_buffer()
if message[0] != 0x01:
raise _convert_error(message)