RAFlasher.py: move inquire connection to RAConnect class
[renesas-ra-flasher] / src / RAPacker.py
index 8480267..52fa9fd 100644 (file)
@@ -63,7 +63,7 @@ TESTID = [
 
 def calc_sum(cmd, data):
     data_len = len(data)
-    lnh = data_len + 1 & 0xFF00
+    lnh = (data_len + 1 & 0xFF00) >> 8
     lnl = data_len + 1 & 0x00FF
     res = lnh + lnl + cmd
     for i in range(data_len):
@@ -97,9 +97,11 @@ def pack_command(cmd, data):
     return fmt
 
 # format of data packet is [SOD|LNH|LNL|RES|DAT|SUM|ETX]
-def pack_pkt(res, data):
-    SOD = 0x81
-    if (len(data) >= 1024):
+def pack_pkt(res, data, ack=False):
+    SOD = 0x01 # TODO: check if 0x81 header needed
+    if ack:
+        SOD = 0x81
+    if (len(data) > 1024):
         raise Exception(f'Data packet too large, data length is {DATA_LEN} (>1024)')
     LNH, LNL, SUM = calc_sum(int(res), data)
     if not isinstance(data, bytes):