Index: leahi_dialin/common/dd_defs.py =================================================================== diff -u -re9a32dcd15e9112f38ad3de850db56e029aae861 -r8ef0478470000c7e0de4dc05440521c955e18107 --- leahi_dialin/common/dd_defs.py (.../dd_defs.py) (revision e9a32dcd15e9112f38ad3de850db56e029aae861) +++ leahi_dialin/common/dd_defs.py (.../dd_defs.py) (revision 8ef0478470000c7e0de4dc05440521c955e18107) @@ -502,13 +502,14 @@ D28_AVG_TEMP = 14 # D28 Filtered value D30_AVG_TEMP = 15 # D30 Filtered value D78_AVG_TEMP = 16 # D78 Filtered value - D9_TEMP = 17 # D9 Pressure sensor temperature value - D66_TEMP = 18 # D66 Pressure sensor temperature value - D51_TEMP = 19 # D51 Pressure sensor temperature value - D18_TEMP = 20 # D18 Pressure sensor temperature value - D41_TEMP = 21 # D41 Pressure sensor temperature value - D87_TEMP = 22 # D87 Pressure sensor temperature value - NUM_OF_TEMP_SENSORS = 23 # Number of Temperature Sensors + D1_AVG_TEMP = 17 # D1 Filtered value + D9_TEMP = 18 # D9 Pressure sensor temperature value + D66_TEMP = 19 # D66 Pressure sensor temperature value + D51_TEMP = 20 # D51 Pressure sensor temperature value + D18_TEMP = 21 # D18 Pressure sensor temperature value + D41_TEMP = 22 # D41 Pressure sensor temperature value + D87_TEMP = 23 # D87 Pressure sensor temperature value + NUM_OF_TEMP_SENSORS = 24 # Number of Temperature Sensors # Aliases FIRST_PRESSURE_SENSOR = D9_TEMP Index: leahi_dialin/common/msg_ids.py =================================================================== diff -u -r465679409a5fe6f6007ddffca1fd3e89ead9d9c4 -r8ef0478470000c7e0de4dc05440521c955e18107 --- leahi_dialin/common/msg_ids.py (.../msg_ids.py) (revision 465679409a5fe6f6007ddffca1fd3e89ead9d9c4) +++ leahi_dialin/common/msg_ids.py (.../msg_ids.py) (revision 8ef0478470000c7e0de4dc05440521c955e18107) @@ -200,6 +200,7 @@ MSG_ID_FFU_SIGNAL_TD_UPDATE_AVAILABLE = 0xB3 MSG_ID_FFU_SIGNAL_DD_UPDATE_AVAILABLE = 0xB4 MSG_ID_DD_SUBSTITUTION_PUMP_DATA = 0xB5 + MSG_ID_DD_CONDUCTIVITY_SENSOR_RESISTANCE_DATA = 0xB6 MSG_ID_DD_PISTON_PUMP_CONTROL_DATA = 0xF0 @@ -297,7 +298,7 @@ MSG_ID_DD_VALVE_SENSED_STATE_OVERRIDE_REQUEST = 0xA005 MSG_ID_DD_PRESSURE_SENSOR_READINGS_OVERRIDE_REQUEST = 0xA006 MSG_ID_DD_PRESSURE_SENSOR_TEMPERATURE_OVERRIDE_REQUEST = 0xA007 - MSG_ID_DD_PRESSURE_SENSOR_READ_COUNTER_OVERRIDE_REQUEST = 0xA008 + MSG_ID_DD_TREATMENT_PARAMS_OVERRIDE_REQUEST = 0xA008 MSG_ID_DD_PRESSURE_SENSOR_ERROR_COUNTER_OVERRIDE_REQUEST = 0xA009 MSG_ID_DD_PRESSURE_SENSOR_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xA00A MSG_ID_DD_PRESSURE_SENSOR_FILTER_READINGS_OVERRIDE_REQUEST = 0xA00B @@ -380,14 +381,27 @@ MSG_ID_DD_BICARB_CHAMBER_FILL_REQUEST_OVERRIDE_REQUEST = 0xA059 MSG_ID_DD_BICART_DRAIN_REQUEST_OVERRIDE_REQUEST = 0xA05A MSG_ID_DD_BICART_CARTRIDGE_SELECT_OVERRIDE_REQUEST = 0xA05B + MSG_ID_DD_SET_CONDUCTIVITY_MODEL_REQUEST = 0xA05C + MSG_ID_DD_CONDUCTIVITY_SENSOR_RESISTANCE_OVERRIDE_REQUEST = 0xA05D + MSG_ID_DD_CONDUCTIVITY_SENSOR_VERSION_REQUEST = 0xA05E + MSG_ID_DD_CONDUCTIVITY_SENSOR_VERSION_RESPONSE = 0xA05F, + MSG_ID_DD_BICARB_MIX_VOL_CONTROL_KP_GAIN_COEFF_OVERRIDE_REQUEST = 0xA060 + MSG_ID_DD_BICARB_MIX_VOL_CONTROL_KI_GAIN_COEFF_OVERRIDE_REQUEST = 0xA061 + MSG_ID_DD_ACID_MIX_VOL_CONTROL_KP_GAIN_COEFF_OVERRIDE_REQUEST = 0xA062 + MSG_ID_DD_ACID_MIX_VOL_CONTROL_KI_GAIN_COEFF_OVERRIDE_REQUEST = 0xA063 + MSG_ID_DD_ACID_MIX_VOL_OVERRIDE_REQUEST = 0xA064 + MSG_ID_DD_BICARB_MIX_VOL_OVERRIDE_REQUEST = 0xA065 + MSG_ID_DD_BICARB_TARGET_CONDUCTIVITY_OVERRIDE_REQUEST = 0xA066 + MSG_ID_DD_BICARB_DELTA_CONDUCTIVITY_OVERRIDE_REQUEST = 0xA067 + MSG_ID_DD_DIALYSATE_TARGET_CONDUCTIVITY_OVERRIDE_REQUEST = 0xA068 + MSG_ID_DD_DIALYSATE_DELTA_CONDUCTIVITY_OVERRIDE_REQUEST = 0xA069 + MSG_ID_DD_BICART_UPPER_PRESSURE_OVERRIDE_REQUEST = 0xA06A + MSG_ID_DD_BICART_LOWER_PRESSURE_OVERRIDE_REQUEST = 0xA06B MSG_ID_DD_FLOATER_LEVEL_OVERRIDE_REQUEST = 0xA06C MSG_ID_DD_SUBSTITUTION_PUMP_START_STOP_OVERRIDE_REQUEST = 0xA06D - MSG_ID_DD_SUBSTITUTION_PUMP_BROADCAST_OVERRIDE_REQUEST = 0xA06E + MSG_ID_DD_SUBSTITUTION_PUMP_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xA06E MSG_ID_DD_SUBSTITUTION_PUMP_TARGET_SPEED_OVERRIDE_REQUEST = 0xA06F - MSG_ID_DD_SET_CONDUCTIVITY_MODEL_REQUEST = 0xA100 - MSG_ID_DD_CONDUCTIVITY_SENSOR_RESISTANCE_OVERRIDE_REQUEST = 0xA101 - # Placeholder messages MSG_ID_DD_ALARM_STATE_OVERRIDE_REQUEST = 0xAF03 MSG_ID_DD_STOP_GEN_DIALYSATE_MODE_OVERRIDE_REQUEST = 0xAF04 @@ -462,13 +476,14 @@ MSG_ID_FP_DEF_GEN_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xB043 MSG_ID_FP_DEF_STATUS_REQUEST = 0xB044 MSG_ID_FP_DEF_STATUS_RESPONSE = 0xB045 - MSG_ID_FP_SET_OP_SUB_MODE_REQUEST = 0xB046 - + MSG_ID_FP_SET_OPERATION_SUB_MODE_REQUEST = 0xB046 + MSG_ID_FP_CONDUCTIVITY_SENSOR_RESISTANCE_OVERRIDE_REQUEST = 0xB047 + MSG_ID_FP_SET_RECOVERY_VALVES_REQUEST = 0xB048 MSG_ID_FP_BOOST_PUMP_INSTALL_STATUS_REQUEST = 0xB049 MSG_ID_FP_BOOST_PUMP_INSTALL_STATUS_RESPONSE = 0xB04A + MSG_ID_FP_CONDUCTIVITY_SENSOR_VERSION_REQUEST = 0xB04B + MSG_ID_FP_CONDUCTIVITY_SENSOR_VERSION_RESPONSE = 0xB04C - MSG_ID_FP_CONDUCTIVITY_SENSOR_RESISTANCE_OVERRIDE_REQUEST = 0xB100 - MSG_ID_TD_DEBUG_EVENT = 0xFFF1 MSG_ID_DD_DEBUG_EVENT = 0xFFF2 MSG_ID_FP_DEBUG_EVENT = 0xFFF3 Index: leahi_dialin/dd/modules/balancing_chamber.py =================================================================== diff -u -re45b20cdc5d4c5dcff8cef530b173ca94cb2e422 -r8ef0478470000c7e0de4dc05440521c955e18107 --- leahi_dialin/dd/modules/balancing_chamber.py (.../balancing_chamber.py) (revision e45b20cdc5d4c5dcff8cef530b173ca94cb2e422) +++ leahi_dialin/dd/modules/balancing_chamber.py (.../balancing_chamber.py) (revision 8ef0478470000c7e0de4dc05440521c955e18107) @@ -85,9 +85,10 @@ msg_list.append(('self.is_pressure_stabilized_during_fill', DataTypes.U32)) msg_list.append(('self.bal_chamber_switch_only_state', DataTypes.U32)) msg_list.append(('self.is_bal_chamber_switching_active', DataTypes.U32)) - + self.process_into_vars(decoder_list = msg_list, message = message) + self.dd_bal_chamber_timestamp = timestamp Index: leahi_dialin/dd/modules/blood_leak.py =================================================================== diff -u -re45b20cdc5d4c5dcff8cef530b173ca94cb2e422 -r8ef0478470000c7e0de4dc05440521c955e18107 --- leahi_dialin/dd/modules/blood_leak.py (.../blood_leak.py) (revision e45b20cdc5d4c5dcff8cef530b173ca94cb2e422) +++ leahi_dialin/dd/modules/blood_leak.py (.../blood_leak.py) (revision 8ef0478470000c7e0de4dc05440521c955e18107) @@ -157,7 +157,7 @@ self.process_into_vars(decoder_list = msg_list, message = message) - self.dd_conductivity_timestamp = timestamp + self.dd_blood_leak_status_timestamp = timestamp @publish(['msg_id_dd_send_blood_leak_emb_mode_response', 'blood_leak_emb_mode_cmd_response', Index: leahi_dialin/dd/modules/dialysate_pump.py =================================================================== diff -u -re48e2e9af260dc96a407bf4a26f4a18713318ae6 -r8ef0478470000c7e0de4dc05440521c955e18107 --- leahi_dialin/dd/modules/dialysate_pump.py (.../dialysate_pump.py) (revision e48e2e9af260dc96a407bf4a26f4a18713318ae6) +++ leahi_dialin/dd/modules/dialysate_pump.py (.../dialysate_pump.py) (revision 8ef0478470000c7e0de4dc05440521c955e18107) @@ -91,26 +91,26 @@ @return: None """ sensor_list =[] - sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D12_PUMP.name, dd_enum_repository.DDConductivitySensorNames.TARGET_RPM.name, DataTypes.F32)) - sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D48_PUMP.name, dd_enum_repository.DDConductivitySensorNames.TARGET_RPM.name, DataTypes.F32)) - sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D12_PUMP.name, dd_enum_repository.DDConductivitySensorNames.MEASURED_SPEED.name, DataTypes.F32)) - sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D48_PUMP.name, dd_enum_repository.DDConductivitySensorNames.MEASURED_SPEED.name, DataTypes.F32)) - sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D12_PUMP.name, dd_enum_repository.DDConductivitySensorNames.CURRENT_SPEED.name, DataTypes.F32)) - sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D48_PUMP.name, dd_enum_repository.DDConductivitySensorNames.CURRENT_SPEED.name, DataTypes.F32)) - sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D12_PUMP.name, dd_enum_repository.DDConductivitySensorNames.STATE.name, DataTypes.U32)) - sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D48_PUMP.name, dd_enum_repository.DDConductivitySensorNames.STATE.name, DataTypes.U32)) - sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D12_PUMP.name, dd_enum_repository.DDConductivitySensorNames.TARGET_PRESSURE.name, DataTypes.F32)) - sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D48_PUMP.name, dd_enum_repository.DDConductivitySensorNames.TARGET_PRESSURE.name, DataTypes.F32)) - sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D12_PUMP.name, dd_enum_repository.DDConductivitySensorNames.MEASURED_PRESSURE.name, DataTypes.F32)) - sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D48_PUMP.name, dd_enum_repository.DDConductivitySensorNames.MEASURED_PRESSURE.name, DataTypes.F32)) - sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D12_PUMP.name, dd_enum_repository.DDConductivitySensorNames.MEASURED_CURRENT.name, DataTypes.F32)) - sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D48_PUMP.name, dd_enum_repository.DDConductivitySensorNames.MEASURED_CURRENT.name, DataTypes.F32)) - sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D12_PUMP.name, dd_enum_repository.DDConductivitySensorNames.CONTROL.name, DataTypes.U32)) - sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D48_PUMP.name, dd_enum_repository.DDConductivitySensorNames.CONTROL.name, DataTypes.U32)) - sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D12_PUMP.name, dd_enum_repository.DDConductivitySensorNames.DIRECTION_ERROR_COUNT.name, DataTypes.U32)) - sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D48_PUMP.name, dd_enum_repository.DDConductivitySensorNames.DIRECTION_ERROR_COUNT.name, DataTypes.U32)) - sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D12_PUMP.name, dd_enum_repository.DDConductivitySensorNames.MEASURED_DIRECTION.name, DataTypes.U32)) - sensor_list.append((dd_enum_repository.DDConductivitySensorNames.D48_PUMP.name, dd_enum_repository.DDConductivitySensorNames.MEASURED_DIRECTION.name, DataTypes.U32)) + sensor_list.append((dd_enum_repository.DDDialysatePumpNames.D12_PUMP.name, dd_enum_repository.DDDialysatePumpAttributes.TARGET_RPM.name, DataTypes.F32)) + sensor_list.append((dd_enum_repository.DDDialysatePumpNames.D48_PUMP.name, dd_enum_repository.DDDialysatePumpAttributes.TARGET_RPM.name, DataTypes.F32)) + sensor_list.append((dd_enum_repository.DDDialysatePumpNames.D12_PUMP.name, dd_enum_repository.DDDialysatePumpAttributes.MEASURED_SPEED.name, DataTypes.F32)) + sensor_list.append((dd_enum_repository.DDDialysatePumpNames.D48_PUMP.name, dd_enum_repository.DDDialysatePumpAttributes.MEASURED_SPEED.name, DataTypes.F32)) + sensor_list.append((dd_enum_repository.DDDialysatePumpNames.D12_PUMP.name, dd_enum_repository.DDDialysatePumpAttributes.CURRENT_SPEED.name, DataTypes.F32)) + sensor_list.append((dd_enum_repository.DDDialysatePumpNames.D48_PUMP.name, dd_enum_repository.DDDialysatePumpAttributes.CURRENT_SPEED.name, DataTypes.F32)) + sensor_list.append((dd_enum_repository.DDDialysatePumpNames.D12_PUMP.name, dd_enum_repository.DDDialysatePumpAttributes.STATE.name, DataTypes.U32)) + sensor_list.append((dd_enum_repository.DDDialysatePumpNames.D48_PUMP.name, dd_enum_repository.DDDialysatePumpAttributes.STATE.name, DataTypes.U32)) + sensor_list.append((dd_enum_repository.DDDialysatePumpNames.D12_PUMP.name, dd_enum_repository.DDDialysatePumpAttributes.TARGET_PRESSURE.name, DataTypes.F32)) + sensor_list.append((dd_enum_repository.DDDialysatePumpNames.D48_PUMP.name, dd_enum_repository.DDDialysatePumpAttributes.TARGET_PRESSURE.name, DataTypes.F32)) + sensor_list.append((dd_enum_repository.DDDialysatePumpNames.D12_PUMP.name, dd_enum_repository.DDDialysatePumpAttributes.MEASURED_PRESSURE.name, DataTypes.F32)) + sensor_list.append((dd_enum_repository.DDDialysatePumpNames.D48_PUMP.name, dd_enum_repository.DDDialysatePumpAttributes.MEASURED_PRESSURE.name, DataTypes.F32)) + sensor_list.append((dd_enum_repository.DDDialysatePumpNames.D12_PUMP.name, dd_enum_repository.DDDialysatePumpAttributes.MEASURED_CURRENT.name, DataTypes.F32)) + sensor_list.append((dd_enum_repository.DDDialysatePumpNames.D48_PUMP.name, dd_enum_repository.DDDialysatePumpAttributes.MEASURED_CURRENT.name, DataTypes.F32)) + sensor_list.append((dd_enum_repository.DDDialysatePumpNames.D12_PUMP.name, dd_enum_repository.DDDialysatePumpAttributes.CONTROL.name, DataTypes.U32)) + sensor_list.append((dd_enum_repository.DDDialysatePumpNames.D48_PUMP.name, dd_enum_repository.DDDialysatePumpAttributes.CONTROL.name, DataTypes.U32)) + sensor_list.append((dd_enum_repository.DDDialysatePumpNames.D12_PUMP.name, dd_enum_repository.DDDialysatePumpAttributes.DIRECTION_ERROR_COUNT.name, DataTypes.U32)) + sensor_list.append((dd_enum_repository.DDDialysatePumpNames.D48_PUMP.name, dd_enum_repository.DDDialysatePumpAttributes.DIRECTION_ERROR_COUNT.name, DataTypes.U32)) + sensor_list.append((dd_enum_repository.DDDialysatePumpNames.D12_PUMP.name, dd_enum_repository.DDDialysatePumpAttributes.MEASURED_DIRECTION.name, DataTypes.U32)) + sensor_list.append((dd_enum_repository.DDDialysatePumpNames.D48_PUMP.name, dd_enum_repository.DDDialysatePumpAttributes.MEASURED_DIRECTION.name, DataTypes.U32)) self.process_into_dict(dict_to_update = self.dd_dialysate_pumps, decoder_list = sensor_list, Index: leahi_dialin/dd/modules/drybicart.py =================================================================== diff -u -r8007c58c88b92652c64b3742f73d2ea10bce1440 -r8ef0478470000c7e0de4dc05440521c955e18107 --- leahi_dialin/dd/modules/drybicart.py (.../drybicart.py) (revision 8007c58c88b92652c64b3742f73d2ea10bce1440) +++ leahi_dialin/dd/modules/drybicart.py (.../drybicart.py) (revision 8ef0478470000c7e0de4dc05440521c955e18107) @@ -51,10 +51,10 @@ message_id = MsgIds.MSG_ID_DD_DRY_BICART_DATA.value, function = self._handler_dry_bicart_sync) - self.dd_dry_bicart_timestamp = 0 #: The timestamp of the last message + self.dd_dry_bicart_timestamp = 0.0 #: The timestamp of the last message self.dd_dry_bicart_fill_execution_state = 0 #: The Dry Bicart fill execution state self.dd_bicarb_chamber_fill_execution_state = 0 #: The Bicarb chamber fill execution state - self.dd_dry_bicart_drain_execution_state = 0 #: The Dry Bicart drain execution state + self.dd_dry_bicart_drain_execution_state = 0.0 #: The Dry Bicart drain execution state self.dd_dry_bicart_fill_cycle_counter = 0 #: The Dry Bicart fill cycle counter self.dd_dry_bicart_max_fill_cycle_count = 0 #: The Dry Bicart max fill cycle state self.dd_dry_bicart_fill_request = 0 #: Is fill requested for Dry Bicart or not Index: leahi_dialin/dd/modules/events.py =================================================================== diff -u -re45b20cdc5d4c5dcff8cef530b173ca94cb2e422 -r8ef0478470000c7e0de4dc05440521c955e18107 --- leahi_dialin/dd/modules/events.py (.../events.py) (revision e45b20cdc5d4c5dcff8cef530b173ca94cb2e422) +++ leahi_dialin/dd/modules/events.py (.../events.py) (revision 8ef0478470000c7e0de4dc05440521c955e18107) @@ -216,7 +216,7 @@ last_op_mode_message = op_modes_list[-1] # Check if this is not the very first Sub Mode Change message - if len(sub_mode_list != 0): + if len(sub_mode_list) != 0: # Get the timestamps of the last messages of both list for comparison prev_op_mode_timestamp = datetime.strptime(last_op_mode_message[0], '%Y-%m-%d %H:%M:%S.%f') prev_sub_mode_timestamp = datetime.strptime(sub_mode_list[-1][0], '%Y-%m-%d %H:%M:%S.%f') Index: leahi_dialin/dd/modules/gen_dialysate.py =================================================================== diff -u -re45b20cdc5d4c5dcff8cef530b173ca94cb2e422 -r8ef0478470000c7e0de4dc05440521c955e18107 --- leahi_dialin/dd/modules/gen_dialysate.py (.../gen_dialysate.py) (revision e45b20cdc5d4c5dcff8cef530b173ca94cb2e422) +++ leahi_dialin/dd/modules/gen_dialysate.py (.../gen_dialysate.py) (revision 8ef0478470000c7e0de4dc05440521c955e18107) @@ -49,7 +49,7 @@ message_id = MsgIds.MSG_ID_DD_GEN_DIALYSATE_MODE_DATA.value, function = self._handler_gen_dialysate_sync) - self.dd_gen_dialysate_timestamp = 0 #: The timestamp of the last message + self.dd_gen_dialysate_timestamp = 0.0 #: The timestamp of the last message self.execution_state = 0 #: The Execution state self.dialysate_delivery_in_progress = 0 #: Is Dialysate delivery in progress or not self.dialysate_good_to_deliver = 0 #: The Dialysate is good to delover or not Index: leahi_dialin/dd/modules/temperature_sensors.py =================================================================== diff -u -re45b20cdc5d4c5dcff8cef530b173ca94cb2e422 -r8ef0478470000c7e0de4dc05440521c955e18107 --- leahi_dialin/dd/modules/temperature_sensors.py (.../temperature_sensors.py) (revision e45b20cdc5d4c5dcff8cef530b173ca94cb2e422) +++ leahi_dialin/dd/modules/temperature_sensors.py (.../temperature_sensors.py) (revision 8ef0478470000c7e0de4dc05440521c955e18107) @@ -64,6 +64,7 @@ dd_enum_repository.DDTemperatureSensorNames.D28_AVG_TEMP.name: 0.0, dd_enum_repository.DDTemperatureSensorNames.D30_AVG_TEMP.name: 0.0, dd_enum_repository.DDTemperatureSensorNames.D78_AVG_TEMP.name: 0.0, + dd_enum_repository.DDTemperatureSensorNames.D1_AVG_TEMP.name: 0.0, dd_enum_repository.DDTemperatureSensorNames.D9_TEMP.name: 0.0, dd_enum_repository.DDTemperatureSensorNames.D66_TEMP.name: 0.0, dd_enum_repository.DDTemperatureSensorNames.D51_TEMP.name: 0.0, @@ -99,6 +100,7 @@ sensor_list.append((dd_enum_repository.DDTemperatureSensorNames.D28_AVG_TEMP.name, DataTypes.F32)) sensor_list.append((dd_enum_repository.DDTemperatureSensorNames.D30_AVG_TEMP.name, DataTypes.F32)) sensor_list.append((dd_enum_repository.DDTemperatureSensorNames.D78_AVG_TEMP.name, DataTypes.F32)) + sensor_list.append((dd_enum_repository.DDTemperatureSensorNames.D1_AVG_TEMP.name, DataTypes.F32)) sensor_list.append((dd_enum_repository.DDTemperatureSensorNames.D9_TEMP.name, DataTypes.F32)) sensor_list.append((dd_enum_repository.DDTemperatureSensorNames.D66_TEMP.name, DataTypes.F32)) sensor_list.append((dd_enum_repository.DDTemperatureSensorNames.D51_TEMP.name, DataTypes.F32)) Index: leahi_dialin/dd/modules/voltages.py =================================================================== diff -u -re45b20cdc5d4c5dcff8cef530b173ca94cb2e422 -r8ef0478470000c7e0de4dc05440521c955e18107 --- leahi_dialin/dd/modules/voltages.py (.../voltages.py) (revision e45b20cdc5d4c5dcff8cef530b173ca94cb2e422) +++ leahi_dialin/dd/modules/voltages.py (.../voltages.py) (revision 8ef0478470000c7e0de4dc05440521c955e18107) @@ -50,7 +50,16 @@ self.dd_voltages_timestamp = 0.0 #: The timestamp of the latest message #: The Voltages data in list format - self.monitored_voltages = [0.0] * dd_enum_repository.DDMonitoredVoltages.NUM_OF_MONITORED_VOLTAGE_LINES.value + self.monitored_voltages = { + dd_enum_repository.DDMonitoredVoltages.MONITORED_LINE_1_2V.name: 0.0, + dd_enum_repository.DDMonitoredVoltages.MONITORED_LINE_3_3V.name: 0.0, + dd_enum_repository.DDMonitoredVoltages.MONITORED_LINE_5V_LOGIC.name: 0.0, + dd_enum_repository.DDMonitoredVoltages.MONITORED_LINE_24V_1.name: 0.0, + dd_enum_repository.DDMonitoredVoltages.MONITORED_LINE_24V_2.name: 0.0, + dd_enum_repository.DDMonitoredVoltages.MONITORED_LINE_FPGA_VCC_V.name: 0.0, + dd_enum_repository.DDMonitoredVoltages.MONITORED_LINE_FPGA_AUX_V.name: 0.0, + dd_enum_repository.DDMonitoredVoltages.MONITORED_LINE_FPGA_PVN_V.name: 0.0 + } @publish(["msg_id_dd_voltages_data","dd_voltages_timestamp","monitored_voltages"]) Index: leahi_dialin/fp/modules/boost_pump.py =================================================================== diff -u -re45b20cdc5d4c5dcff8cef530b173ca94cb2e422 -r8ef0478470000c7e0de4dc05440521c955e18107 --- leahi_dialin/fp/modules/boost_pump.py (.../boost_pump.py) (revision e45b20cdc5d4c5dcff8cef530b173ca94cb2e422) +++ leahi_dialin/fp/modules/boost_pump.py (.../boost_pump.py) (revision 8ef0478470000c7e0de4dc05440521c955e18107) @@ -79,7 +79,7 @@ sensor_list.append((fp_enum_repository.FPBoostPumpNames.P40_PUMP.name, fp_enum_repository.FPPumpAttributes.DUTY_CYCLE.name, DataTypes.U32)) sensor_list.append((fp_enum_repository.FPBoostPumpNames.P40_PUMP.name, fp_enum_repository.FPPumpAttributes.FB_DUTY_CYCLE.name, DataTypes.U32)) sensor_list.append((fp_enum_repository.FPBoostPumpNames.P40_PUMP.name, fp_enum_repository.FPPumpAttributes.SPEED.name, DataTypes.F32)) - sensor_list.append((fp_enum_repository.FPBoostPumpNames.P40_PUMP.name, fp_enum_repository.FPPumpAttributes.TARGET_PRESSURE.name, DataTypes.F32)) + sensor_list.append((fp_enum_repository.FPBoostPumpNames.P40_PUMP.name, fp_enum_repository.FPPumpAttributes.TARGET_PRES.name, DataTypes.F32)) sensor_list.append((fp_enum_repository.FPBoostPumpNames.P40_PUMP.name, fp_enum_repository.FPPumpAttributes.TARGET_FLOW.name, DataTypes.F32)) sensor_list.append((fp_enum_repository.FPBoostPumpNames.P40_PUMP.name, fp_enum_repository.FPPumpAttributes.TARGET_DUTY_CYCLE_PCT.name, DataTypes.F32)) sensor_list.append((fp_enum_repository.FPBoostPumpNames.P40_PUMP.name, fp_enum_repository.FPPumpAttributes.DUTY_CYCLE_PCT.name, DataTypes.F32)) Index: leahi_dialin/fp/modules/events.py =================================================================== diff -u -re45b20cdc5d4c5dcff8cef530b173ca94cb2e422 -r8ef0478470000c7e0de4dc05440521c955e18107 --- leahi_dialin/fp/modules/events.py (.../events.py) (revision e45b20cdc5d4c5dcff8cef530b173ca94cb2e422) +++ leahi_dialin/fp/modules/events.py (.../events.py) (revision 8ef0478470000c7e0de4dc05440521c955e18107) @@ -216,7 +216,7 @@ last_op_mode_message = op_modes_list[-1] # Check if this is not the very first Sub Mode Change message - if len(sub_mode_list != 0): + if len(sub_mode_list) != 0: # Get the timestamps of the last messages of both list for comparison prev_op_mode_timestamp = datetime.strptime(last_op_mode_message[0], '%Y-%m-%d %H:%M:%S.%f') prev_sub_mode_timestamp = datetime.strptime(sub_mode_list[-1][0], '%Y-%m-%d %H:%M:%S.%f') Index: leahi_dialin/fp/modules/ro_pump.py =================================================================== diff -u -re45b20cdc5d4c5dcff8cef530b173ca94cb2e422 -r8ef0478470000c7e0de4dc05440521c955e18107 --- leahi_dialin/fp/modules/ro_pump.py (.../ro_pump.py) (revision e45b20cdc5d4c5dcff8cef530b173ca94cb2e422) +++ leahi_dialin/fp/modules/ro_pump.py (.../ro_pump.py) (revision 8ef0478470000c7e0de4dc05440521c955e18107) @@ -84,7 +84,6 @@ sensor_list.append((fp_enum_repository.FPROPumpNames.P12_PUMP.name, fp_enum_repository.FPPumpAttributes.TARGET_DUTY_CYCLE_PCT.name, DataTypes.F32)) sensor_list.append((fp_enum_repository.FPROPumpNames.P12_PUMP.name, fp_enum_repository.FPPumpAttributes.DUTY_CYCLE_PCT.name, DataTypes.F32)) sensor_list.append((fp_enum_repository.FPROPumpNames.P12_PUMP.name, fp_enum_repository.FPPumpAttributes.FB_DUTY_CYCLE_PCT.name, DataTypes.F32)) - sensor_list.appen self.process_into_dict(dict_to_update = self.ro_pump, decoder_list = sensor_list, Index: leahi_dialin/td/modules/events.py =================================================================== diff -u -re45b20cdc5d4c5dcff8cef530b173ca94cb2e422 -r8ef0478470000c7e0de4dc05440521c955e18107 --- leahi_dialin/td/modules/events.py (.../events.py) (revision e45b20cdc5d4c5dcff8cef530b173ca94cb2e422) +++ leahi_dialin/td/modules/events.py (.../events.py) (revision 8ef0478470000c7e0de4dc05440521c955e18107) @@ -211,7 +211,7 @@ last_op_mode_message = op_modes_list[-1] # Check if this is not the very first Sub Mode Change message - if len(sub_mode_list != 0): + if len(sub_mode_list) != 0: # Get the timestamps of the last messages of both list for comparison prev_op_mode_timestamp = datetime.strptime(last_op_mode_message[0], '%Y-%m-%d %H:%M:%S.%f') prev_sub_mode_timestamp = datetime.strptime(sub_mode_list[-1][0], '%Y-%m-%d %H:%M:%S.%f') Index: leahi_dialin/td/modules/pressure_sensors.py =================================================================== diff -u -re45b20cdc5d4c5dcff8cef530b173ca94cb2e422 -r8ef0478470000c7e0de4dc05440521c955e18107 --- leahi_dialin/td/modules/pressure_sensors.py (.../pressure_sensors.py) (revision e45b20cdc5d4c5dcff8cef530b173ca94cb2e422) +++ leahi_dialin/td/modules/pressure_sensors.py (.../pressure_sensors.py) (revision 8ef0478470000c7e0de4dc05440521c955e18107) @@ -97,20 +97,19 @@ @param message: published pressure & occlusion data message @return: none """ + sensor_list_1 = [] sensor_list_1.append((td_enum_repository.TDPressureSensorNames.H2_PRES.name, td_enum_repository.TDPressureSensorAttributes.PRES.name, DataTypes.F32)) sensor_list_1.append((td_enum_repository.TDPressureSensorNames.H14_PRES.name, td_enum_repository.TDPressureSensorAttributes.PRES.name, DataTypes.F32)) msg_list_1 = [] msg_list_1.append(['self.pressure_limits_state', DataTypes.U32]) sensor_list_2 = [] - sensor_list_2.append((td_enum_repository.TDPressureSensorNames.H2_PRES.name, td_enum_repository.TDPressureSensorAttributes.PRES_LIMIT_MIN.name, DataTypes.U32)) - sensor_list_2.append((td_enum_repository.TDPressureSensorNames.H2_PRES.name, td_enum_repository.TDPressureSensorAttributes.PRES_LIMIT_MAX.name, DataTypes.U32)) - sensor_list_2.append((td_enum_repository.TDPressureSensorNames.H14_PRES.name, td_enum_repository.TDPressureSensorAttributes.PRES_LIMIT_MIN.name, DataTypes.U32)) - sensor_list_2.append((td_enum_repository.TDPressureSensorNames.H14_PRES.name, td_enum_repository.TDPressureSensorAttributes.PRES_LIMIT_MAX.name, DataTypes.U32)) + sensor_list_2.append((td_enum_repository.TDPressureSensorNames.H2_PRES.name, td_enum_repository.TDPressureSensorAttributes.PRES_LIMIT_MIN.name, DataTypes.S32)) + sensor_list_2.append((td_enum_repository.TDPressureSensorNames.H2_PRES.name, td_enum_repository.TDPressureSensorAttributes.PRES_LIMIT_MAX.name, DataTypes.S32)) + sensor_list_2.append((td_enum_repository.TDPressureSensorNames.H14_PRES.name, td_enum_repository.TDPressureSensorAttributes.PRES_LIMIT_MIN.name, DataTypes.S32)) + sensor_list_2.append((td_enum_repository.TDPressureSensorNames.H14_PRES.name, td_enum_repository.TDPressureSensorAttributes.PRES_LIMIT_MAX.name, DataTypes.S32)) sensor_list_2.append((td_enum_repository.TDPressureSensorNames.H2_PRES.name, td_enum_repository.TDPressureSensorAttributes.LONG_FILTERED_PRESSURE.name, DataTypes.F32)) sensor_list_2.append((td_enum_repository.TDPressureSensorNames.H14_PRES.name, td_enum_repository.TDPressureSensorAttributes.LONG_FILTERED_PRESSURE.name, DataTypes.F32)) - sensor_list_2.append((td_enum_repository.TDPressureSensorNames.H14_PRES.name, td_enum_repository.TDPressureSensorAttributes.LONG_FILTERED_PRESSURE.name, DataTypes.F32)) - sensor_list_2.append((td_enum_repository.TDPressureSensorNames.H14_PRES.name, td_enum_repository.TDPressureSensorAttributes.LONG_FILTERED_PRESSURE.name, DataTypes.F32)) sensor_list_2.append(('TMP_PRES', td_enum_repository.TDPressureSensorAttributes.PRES.name, DataTypes.F32)) sensor_list_2.append(('TMP_PRES', td_enum_repository.TDPressureSensorAttributes.LONG_FILTERED_PRESSURE.name, DataTypes.F32)) sensor_list_2.append(('TMP_PRES', td_enum_repository.TDPressureSensorAttributes.PRES_LIMIT_MIN.name, DataTypes.F32)) Index: leahi_dialin/td/modules/syringe_pump.py =================================================================== diff -u -r3e2f7365bb1a643d2fc9bea2dc51f4b15f0ba9e2 -r8ef0478470000c7e0de4dc05440521c955e18107 --- leahi_dialin/td/modules/syringe_pump.py (.../syringe_pump.py) (revision 3e2f7365bb1a643d2fc9bea2dc51f4b15f0ba9e2) +++ leahi_dialin/td/modules/syringe_pump.py (.../syringe_pump.py) (revision 8ef0478470000c7e0de4dc05440521c955e18107) @@ -80,7 +80,6 @@ @param message: published syringe pump data message @return: None """ - msg_list = [] msg_list.append(('self.syringe_pump_state', DataTypes.U32)) msg_list.append(('self.heparin_state', DataTypes.U32)) @@ -98,44 +97,8 @@ msg_list.append(('self.syringe_pump_adc_read_counter', DataTypes.U08)) self.process_into_vars(decoder_list = msg_list, - message = message) - sta = struct.unpack('i', bytearray( - message['message'][MsgFieldPositions.START_POS_FIELD_1:MsgFieldPositions.END_POS_FIELD_1])) - hep = struct.unpack('i', bytearray( - message['message'][MsgFieldPositions.START_POS_FIELD_2:MsgFieldPositions.END_POS_FIELD_2])) - srt = struct.unpack('f', bytearray( - message['message'][MsgFieldPositions.START_POS_FIELD_3:MsgFieldPositions.END_POS_FIELD_3])) - mrt = struct.unpack('f', bytearray( - message['message'][MsgFieldPositions.START_POS_FIELD_4:MsgFieldPositions.END_POS_FIELD_4])) - pos = struct.unpack('i', bytearray( - message['message'][MsgFieldPositions.START_POS_FIELD_5:MsgFieldPositions.END_POS_FIELD_5])) - vol = struct.unpack('f', bytearray( - message['message'][MsgFieldPositions.START_POS_FIELD_6:MsgFieldPositions.END_POS_FIELD_6])) - hom = struct.unpack('f', bytearray( - message['message'][MsgFieldPositions.START_POS_FIELD_7:MsgFieldPositions.END_POS_FIELD_7])) - det = struct.unpack('f', bytearray( - message['message'][MsgFieldPositions.START_POS_FIELD_8:MsgFieldPositions.END_POS_FIELD_8])) - frc = struct.unpack('f', bytearray( - message['message'][MsgFieldPositions.START_POS_FIELD_9:MsgFieldPositions.END_POS_FIELD_9])) - saf = struct.unpack('f', bytearray( - message['message'][MsgFieldPositions.START_POS_FIELD_10:MsgFieldPositions.END_POS_FIELD_10])) - sts = struct.unpack('i', bytearray( - message['message'][MsgFieldPositions.START_POS_FIELD_11:MsgFieldPositions.END_POS_FIELD_11])) + message = message) - self.syringe_pump_state = sta[0] - self.heparin_state = hep[0] - self.syringe_pump_set_rate_ml_hr = srt[0] - self.syringe_pump_meas_rate_ml_hr = mrt[0] - self.syringe_pump_position = pos[0] - self.syringe_pump_volume_ml = vol[0] - self.syringe_pump_home_v = hom[0] - self.syringe_pump_switch_v = det[0] - self.syringe_pump_force_v = frc[0] - self.syringe_pump_safety_volume_ml = saf[0] - self.syringe_pump_status = (sts[0] & 0xFF000000) >> 24 - self.syringe_pump_encoder_status = (sts[0] & 0x00FF0000) >> 16 - self.syringe_pump_adc_dac_status = (sts[0] & 0x0000FF00) >> 8 - self.syringe_pump_adc_read_counter = (sts[0] & 0x000000FF) self.td_syringe_pump_timestamp = timestamp Index: leahi_dialin/utils/abstract_classes.py =================================================================== diff -u -r775f2d7ca9a4d1c86c02bc27130f8765dc4156ad -r8ef0478470000c7e0de4dc05440521c955e18107 --- leahi_dialin/utils/abstract_classes.py (.../abstract_classes.py) (revision 775f2d7ca9a4d1c86c02bc27130f8765dc4156ad) +++ leahi_dialin/utils/abstract_classes.py (.../abstract_classes.py) (revision 8ef0478470000c7e0de4dc05440521c955e18107) @@ -88,12 +88,16 @@ variable_name = decode_details[0] datatype: DataTypes = decode_details[-1] end_pos = start_pos + datatype.size() - value = struct.unpack(datatype.unpack_attrib(), bytearray(message['message'][start_pos:end_pos]))[0] + try: + value = struct.unpack(datatype.unpack_attrib(), bytearray(message['message'][start_pos:end_pos]))[0] + except Exception as e: + value = None if debug: - print(f'value: {value} ({datatype.name})') + print(f'{variable_name}: {value} ({datatype.name})') print(f'pos: {start_pos} - {end_pos}') if 'nan' in str(value).lower(): - raise ValueError(f'{value} is not an accepted value!') + value = None + # raise ValueError(f'{value} is not an accepted value!') if datatype is DataTypes.BOOL: value = True if value == 1 else False results[variable_name] = value @@ -141,7 +145,8 @@ print(f'value: {value} ({datatype.name})') print(f'pos: {start_pos} - {end_pos}') if 'nan' in str(value).lower(): - raise ValueError(f'{value} is not an accepted value!') + value = None + # raise ValueError(f'{value} is not an accepted value!') # If the type is Bool, convert the value from Integer to Boolean if datatype is DataTypes.BOOL: value = True if value == 1 else False