Index: leahi_dialin/dd/modules/records.py =================================================================== diff -u -r5ebadf2099b379c5ee6d8417be5e3121c74611cf -r0bc2d3976315c12417c992717621a0284bbedef4 --- leahi_dialin/dd/modules/records.py (.../records.py) (revision 5ebadf2099b379c5ee6d8417be5e3121c74611cf) +++ leahi_dialin/dd/modules/records.py (.../records.py) (revision 0bc2d3976315c12417c992717621a0284bbedef4) @@ -132,58 +132,13 @@ @return: none """ record_list = [] - for service_member in dd_enum_repository.ServiceRecordFields: - record_list.append((service_member.name, service_member.datatype())) + for member in dd_enum_repository.SystemRecordFields: + record_list.append((member.name, member.datatype(), member.multichar_length())) self.process_into_dict(dict_to_update = self.service_records, decoder_list = record_list, message = message) - # Get the payload related values - msg_list =[] - msg_list.append(('current_page', DataTypes.U32)) - msg_list.append(('all_pages', DataTypes.U32)) - msg_list.append(('payload_count', DataTypes.U32)) - result = self.process_into_vars(decoder_list = msg_list, - message = message) - - # Get the record data - record_list = [] - for i in range(0, result['payload_count']): - sys_record = dd_enum_repository.SystemRecordFields(i + self.pager_system_record) - if sys_record.multichar_length > 1: - for j in range(0, sys_record.multichar_length - 1): - name = f'{sys_record.name}_{j}' - record_list.append((name, sys_record.datatype())) - else: - name = sys_record.name - record_list.append((name, sys_record.datatype())) - result_payload = self.process_into_vars(decoder_list = record_list, - message = message, - start_from_byte = len(msg_list) * DataTypes.U32.size()) - - # Saving data into System Records - self.system_records[dd_enum_repository.SystemRecordFields.TOP_LEVEL_PN.name] = '' - self.system_records[dd_enum_repository.SystemRecordFields.TOP_LEVEL_SN.name] = '' - self.system_records[dd_enum_repository.SystemRecordFields.MFG_LOCATION.name] = 0 - self.system_records[dd_enum_repository.SystemRecordFields.MFG_DATE.name] = 0 - self.system_records[dd_enum_repository.SystemRecordFields.CRC.name] = 0 - for key in result_payload: - if key.startswith(dd_enum_repository.SystemRecordFields.TOP_LEVEL_PN.name): - value = result_payload[key] - self.system_records[dd_enum_repository.SystemRecordFields.TOP_LEVEL_PN.name] += value - elif key.startswith(dd_enum_repository.SystemRecordFields.TOP_LEVEL_SN.name): - value = result_payload[key] - self.system_records[dd_enum_repository.SystemRecordFields.TOP_LEVEL_SN.name] += value - else: - self.system_records[key] = result_payload[key] - - # Increase the pager by the payload count to know where the next message should resume, or reset when it's the last message - if result['current_page'] == result['all_pages']: - self.pager_system_record = 0 - else: - self.pager_system_record =+ result['payload_count'] - self.system_records_timestamp = timestamp @@ -663,7 +618,7 @@ payload = payload, reset = None, channel_id = CanChannels.dialin_to_dd_ch_id, - msg_id = MsgIds.MSG_ID_DD_NVM_SET_SERVICE_RECORD, + msg_id = MsgIds.MSG_ID_UI_DD_NVM_SET_SERVICE_RECORD, entity_name = f'New DD Service Record', override_text = 'being set', logger = self.logger, @@ -681,14 +636,14 @@ @return: 1 if successful, zero otherwise """ msg_id_pairing = { - self.CALIB_RECORDS_PRESSURE_SENSORS: MsgIds.MSG_ID_DD_NVM_SET_CAL_PRESSURE_SENSOR, - self.CALIB_RECORDS_TEMPERATURE_SENSORS: MsgIds.MSG_ID_DD_NVM_SET_CAL_TEMP_SENSOR, - self.CALIB_RECORDS_CONCENTRATE_PUMPS: MsgIds.MSG_ID_DD_NVM_SET_CAL_D48_PUMP, - self.CALIB_RECORDS_DIALYSATE_PUMPS: MsgIds.MSG_ID_DD_NVM_SET_CAL_CONC_PUMP, - self.CALIB_RECORDS_ACID_CONCENTRATE: MsgIds.MSG_ID_DD_NVM_SET_CAL_ACID_CONCENTRATE, - self.CALIB_RECORDS_BICARB_CONCENTRATE: MsgIds.MSG_ID_DD_NVM_SET_CAL_BICARB_CONCENTRATE, - self.CALIB_RECORDS_ACCELEROMETER: MsgIds.MSG_ID_DD_NVM_SET_CAL_ACCEL_SENSOR, - self.CALIB_RECORDS_BLOOD_LEAK: MsgIds.MSG_ID_DD_NVM_SET_CAL_BLOOD_LEAK_SENSOR, + self.CALIB_RECORDS_PRESSURE_SENSORS: MsgIds.MSG_ID_UI_DD_NVM_SET_CAL_PRESSURE_SENSOR, + self.CALIB_RECORDS_TEMPERATURE_SENSORS: MsgIds.MSG_ID_UI_DD_NVM_SET_CAL_TEMP_SENSOR, + self.CALIB_RECORDS_CONCENTRATE_PUMPS: MsgIds.MSG_ID_UI_DD_NVM_SET_CAL_D48_PUMP, + self.CALIB_RECORDS_DIALYSATE_PUMPS: MsgIds.MSG_ID_UI_DD_NVM_SET_CAL_CONC_PUMP, + self.CALIB_RECORDS_ACID_CONCENTRATE: MsgIds.MSG_ID_UI_DD_NVM_SET_CAL_ACID_CONCENTRATE, + self.CALIB_RECORDS_BICARB_CONCENTRATE: MsgIds.MSG_ID_UI_DD_NVM_SET_CAL_BICARB_CONCENTRATE, + self.CALIB_RECORDS_ACCELEROMETER: MsgIds.MSG_ID_UI_DD_NVM_SET_CAL_ACCEL_SENSOR, + self.CALIB_RECORDS_BLOOD_LEAK: MsgIds.MSG_ID_UI_DD_NVM_SET_CAL_BLOOD_LEAK_SENSOR, } # Make a dictionary to store all the send functions for later send @@ -700,7 +655,7 @@ if sensor in [dd_enum_repository.DDDialysatePumpNames.D12_PUMP]: # Store the function but do not execute it send_data.append(partial(self.cmd_set_calibration_records_sensor(sensor_enum = sensor, - msg_id = MsgIds.MSG_ID_DD_NVM_SET_CAL_D12_PUMP, + msg_id = MsgIds.MSG_ID_UI_DD_NVM_SET_CAL_D12_PUMP, dialysate_pump_target_speed = calibration_records[key][sensor]['target_speed'], forth_order_coeff = calibration_records[key][sensor]['forth_order_coeff'], third_order_coeff = calibration_records[key][sensor]['third_order_coeff'], @@ -803,7 +758,7 @@ send_data.append(partial(cmd_generic_override(payload = payload, reset = None, channel_id = CanChannels.dialin_to_dd_ch_id, - msg_id = MsgIds.MSG_ID_DD_NVM_SET_INSTITUTIONAL_RECORD, + msg_id = MsgIds.MSG_ID_UI_DD_NVM_SET_INSTITUTIONAL_RECORD, entity_name = f'DD Institutional Record', override_text = 'being set', logger = self.logger, @@ -852,7 +807,7 @@ payload = payload, reset = None, channel_id = CanChannels.dialin_to_dd_ch_id, - msg_id = MsgIds.MSG_ID_DD_NVM_SET_USAGE_INFO_RECORD, + msg_id = MsgIds.MSG_ID_UI_DD_NVM_SET_USAGE_INFO_RECORD, entity_name = f'New DD Usage Information Record', override_text = 'being set', logger = self.logger,