Index: leahi_dialin/dd/modules/pressure_sensors.py =================================================================== diff -u -r35e8d930cb1a45457de87d93728fe60c7cb10ab5 -rd27c40205e18118f4689f62463a266da1f91dba6 --- leahi_dialin/dd/modules/pressure_sensors.py (.../pressure_sensors.py) (revision 35e8d930cb1a45457de87d93728fe60c7cb10ab5) +++ leahi_dialin/dd/modules/pressure_sensors.py (.../pressure_sensors.py) (revision d27c40205e18118f4689f62463a266da1f91dba6) @@ -19,7 +19,8 @@ from .constants import NO_RESET, RESET from leahi_dialin.common.msg_defs import MsgIds, MsgFieldPositions -from leahi_dialin.common.dd_defs import DDPressureNames +from leahi_dialin.common.dd_defs import dd_enum_repository +from leahi_dialin.common.global_vars import GlobalVariables from leahi_dialin.protocols.CAN import DenaliMessage, DenaliChannels from leahi_dialin.utils.base import AbstractSubSystem, publish, DialinEnum from leahi_dialin.utils.checks import check_broadcast_interval_override_ms @@ -49,12 +50,14 @@ self._handler_pressures_sync) self.dd_pressures = { - DDPressureNames.D9_PRES.name: 0.0, - DDPressureNames.D66_PRES.name: 0.0, - DDPressureNames.D51_PRES.name: 0.0, - DDPressureNames.D18_PRES.name: 0.0, - DDPressureNames.D41_PRES.name: 0.0 + dd_enum_repository.DDPressureSensorNames.D9_PRES.name: 0.0, + dd_enum_repository.DDPressureSensorNames.D66_PRES.name: 0.0, + dd_enum_repository.DDPressureSensorNames.D51_PRES.name: 0.0, + dd_enum_repository.DDPressureSensorNames.D18_PRES.name: 0.0, + dd_enum_repository.DDPressureSensorNames.D41_PRES.name: 0.0 } + if GlobalVariables.NEXT_GEN_HW: + self.fp_temperatures[dd_enum_repository.DDConductivitySensorNames.D87_PRES.name] = 0.0 self.dd_pressures_timestamp = 0 @@ -67,17 +70,21 @@ @param message: published DD pressure data message @return: none """ - self.dd_pressures[DDPressureNames.D9_PRES.name] = struct.unpack('f', bytearray( + self.dd_pressures[dd_enum_repository.DDPressureSensorNames.D9_PRES.name] = struct.unpack('f', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_1:MsgFieldPositions.END_POS_FIELD_1]))[0] - self.dd_pressures[DDPressureNames.D66_PRES.name] = struct.unpack('f', bytearray( + self.dd_pressures[dd_enum_repository.DDPressureSensorNames.D66_PRES.name] = struct.unpack('f', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_2:MsgFieldPositions.END_POS_FIELD_2]))[0] - self.dd_pressures[DDPressureNames.D51_PRES.name] = struct.unpack('f', bytearray( + self.dd_pressures[dd_enum_repository.DDPressureSensorNames.D51_PRES.name] = struct.unpack('f', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_3:MsgFieldPositions.END_POS_FIELD_3]))[0] - self.dd_pressures[DDPressureNames.D18_PRES.name] = struct.unpack('f', bytearray( + self.dd_pressures[dd_enum_repository.DDPressureSensorNames.D18_PRES.name] = struct.unpack('f', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_4:MsgFieldPositions.END_POS_FIELD_4]))[0] - self.dd_pressures[DDPressureNames.D41_PRES.name] = struct.unpack('f', bytearray( + self.dd_pressures[dd_enum_repository.DDPressureSensorNames.D41_PRES.name] = struct.unpack('f', bytearray( message['message'][MsgFieldPositions.START_POS_FIELD_5:MsgFieldPositions.END_POS_FIELD_5]))[0] + if GlobalVariables.NEXT_GEN_HW: + self.dd_pressures[dd_enum_repository.DDPressureSensorNames.D87_PRES.name] = struct.unpack('f', bytearray( + message['message'][MsgFieldPositions.START_POS_FIELD_6:MsgFieldPositions.END_POS_FIELD_6]))[0] + self.dd_pressures_timestamp = timestamp def cmd_pressure_broadcast_interval_override(self, ms: int, reset: int = NO_RESET) -> int: