From 5307bf7277c267075aa03799c8749a60463c8804 Mon Sep 17 00:00:00 2001 From: Willem Melching Date: Mon, 18 May 2020 19:48:47 -0700 Subject: [PATCH] Fix multi message iso tp requests --- python/uds.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/python/uds.py b/python/uds.py index 548f1bc..92fc46b 100644 --- a/python/uds.py +++ b/python/uds.py @@ -372,7 +372,7 @@ class IsoTpMessage(): self._tx_first_frame() def _tx_first_frame(self) -> None: - if self.tx_len < 8: + if self.tx_len < self.max_len: # single frame (send all bytes) if self.debug: print("ISO-TP: TX - single frame") msg = (bytes([self.tx_len]) + self.tx_dat).ljust(self.max_len, b"\x00") @@ -380,7 +380,7 @@ class IsoTpMessage(): else: # first frame (send first 6 bytes) if self.debug: print("ISO-TP: TX - first frame") - msg = (struct.pack("!H", 0x1000 | self.tx_len) + self.tx_dat[:6]).ljust(self.max_len, b"\x00") + msg = (struct.pack("!H", 0x1000 | self.tx_len) + self.tx_dat[:self.max_len - 2]).ljust(self.max_len - 2, b"\x00") self._can_client.send([msg]) def recv(self) -> bytes: