Index: dialin/dg/dialysate_generator.py =================================================================== diff -u -rbaf8c4c0a83d9d858e80df59c53f16866c83b550 -ref49a67a4bddbb8032792ddf03a73771f7e7b9c4 --- dialin/dg/dialysate_generator.py (.../dialysate_generator.py) (revision baf8c4c0a83d9d858e80df59c53f16866c83b550) +++ dialin/dg/dialysate_generator.py (.../dialysate_generator.py) (revision ef49a67a4bddbb8032792ddf03a73771f7e7b9c4) @@ -99,10 +99,9 @@ END_POS_MICRO = START_POS_MICRO + 1 START_POS_BUILD = END_POS_MICRO END_POS_BUILD = START_POS_BUILD + 2 - START_POS_COMPATIBILITY_REV = END_POS_BUILD - END_POS_COMPATIBILITY_REV = START_POS_COMPATIBILITY_REV + 4 + # FPGA START_POS_FPGA_ID = END_POS_BUILD END_POS_FPGA_ID = START_POS_FPGA_ID + 1 @@ -112,6 +111,8 @@ END_POS_FPGA_MINOR = START_POS_FPGA_MINOR + 1 START_POS_FPGA_LAB = END_POS_FPGA_MINOR END_POS_FPGA_LAB = START_POS_FPGA_LAB + 1 + START_POS_COMPATIBILITY_REV = END_POS_FPGA_LAB + END_POS_COMPATIBILITY_REV = START_POS_COMPATIBILITY_REV + 4 # DG sub_modes DG_POST_STATE_START = 0 # Start initialize & POST mode state @@ -291,8 +292,6 @@ minor = struct.unpack('B', bytearray(message['message'][self.START_POS_MINOR:self.END_POS_MINOR])) micro = struct.unpack('B', bytearray(message['message'][self.START_POS_MICRO:self.END_POS_MICRO])) build = struct.unpack('H', bytearray(message['message'][self.START_POS_BUILD:self.END_POS_BUILD])) - compatibility = struct.unpack('i', bytearray( - message['message'][self.START_POS_COMPATIBILITY_REV:self.END_POS_COMPATIBILITY_REV])) fpga_id = struct.unpack('B', bytearray( message['message'][self.START_POS_FPGA_ID:self.END_POS_FPGA_ID])) @@ -302,6 +301,8 @@ message['message'][self.START_POS_FPGA_MINOR:self.END_POS_FPGA_MINOR])) fpga_lab = struct.unpack('B', bytearray( message['message'][self.START_POS_FPGA_LAB:self.END_POS_FPGA_LAB])) + compatibility = struct.unpack('I', bytearray( + message['message'][self.START_POS_COMPATIBILITY_REV:self.END_POS_COMPATIBILITY_REV])) if all([len(each) > 0 for each in [major, minor, micro, build]]): self.dg_version = f"v{major[0]}.{minor[0]}.{micro[0]}-{build[0]}-{compatibility[0]}" Index: dialin/hd/ui_proxy.py =================================================================== diff -u -rc3e40d923bad03ddd62e3522c9e16056e38642e8 -ref49a67a4bddbb8032792ddf03a73771f7e7b9c4 --- dialin/hd/ui_proxy.py (.../ui_proxy.py) (revision c3e40d923bad03ddd62e3522c9e16056e38642e8) +++ dialin/hd/ui_proxy.py (.../ui_proxy.py) (revision ef49a67a4bddbb8032792ddf03a73771f7e7b9c4) @@ -56,9 +56,8 @@ END_POS_MICRO = START_POS_MICRO + 1 START_POS_BUILD = END_POS_MICRO END_POS_BUILD = START_POS_BUILD + 2 - START_POS_COMP = END_POS_BUILD - END_POS_COMP = START_POS_COMP + 4 + # FPGA START_POS_FPGA_ID = END_POS_BUILD END_POS_FPGA_ID = START_POS_FPGA_ID + 1 @@ -69,6 +68,9 @@ START_POS_FPGA_LAB = END_POS_FPGA_MINOR END_POS_FPGA_LAB = START_POS_FPGA_LAB + 1 + START_POS_COMP = END_POS_FPGA_LAB + END_POS_COMP = START_POS_COMP + 4 + @unique class AlarmUserOptions(DialinEnum): @@ -502,8 +504,6 @@ message['message'][self.START_POS_MICRO:self.END_POS_MICRO])) build = struct.unpack('H', bytearray( message['message'][self.START_POS_BUILD:self.END_POS_BUILD])) - compatibility = struct.unpack('i', bytearray( - message['message'][self.START_POS_COMP:self.END_POS_COMP])) fpga_id = struct.unpack('B', bytearray( message['message'][self.START_POS_FPGA_ID:self.END_POS_FPGA_ID])) @@ -513,6 +513,8 @@ message['message'][self.START_POS_FPGA_MINOR:self.END_POS_FPGA_MINOR])) fpga_lab = struct.unpack('B', bytearray( message['message'][self.START_POS_FPGA_LAB:self.END_POS_FPGA_LAB])) + compatibility = struct.unpack('i', bytearray( + message['message'][self.START_POS_COMP:self.END_POS_COMP])) if all([len(each) > 0 for each in [major, minor, micro, build]]): self.hd_version = f"v{major[0]}.{minor[0]}.{micro[0]}-{build[0]}-{compatibility[0]}"