Index: firmware/App/Controllers/BloodLeak.c =================================================================== diff -u -r9c785a779da348df1c066ae0da2d0f53de7ea936 -rc5979dcd628346a3df374ae3defd16a4dd47468e --- firmware/App/Controllers/BloodLeak.c (.../BloodLeak.c) (revision 9c785a779da348df1c066ae0da2d0f53de7ea936) +++ firmware/App/Controllers/BloodLeak.c (.../BloodLeak.c) (revision c5979dcd628346a3df374ae3defd16a4dd47468e) @@ -483,7 +483,7 @@ { BLOOD_LEAK_STATES_T state = BLOOD_LEAK_SELF_TEST_STATE; -#ifndef IGNORE_BLOOD_LEAK_ALARM +#ifndef IGNORE_BLOOD_LEAK_SELF_TEST if ( SELF_TEST_STATUS_IN_PROGRESS == bloodLeakSelfTestStatus ) { if ( FALSE == noFPGABloodLeakDetected() ) // Faked blood leak caused by independent MCU board @@ -494,8 +494,9 @@ else if ( TRUE == didTimeout( bloodLeakSelfTestStartTime, BLOOD_LEAK_TIMEOUT_MS ) ) { bloodLeakSelfTestStatus = SELF_TEST_STATUS_FAILED; - +#ifndef IGNORE_BLOOD_LEAK_ALARM activateAlarmNoData( ALARM_ID_HD_BLOOD_LEAK_SELF_TEST_FAILURE ); +#endif } } else Index: firmware/App/Drivers/Battery.c =================================================================== diff -u -r2892e3f528d76f45719b7124358e9d242bf27172 -rc5979dcd628346a3df374ae3defd16a4dd47468e --- firmware/App/Drivers/Battery.c (.../Battery.c) (revision 2892e3f528d76f45719b7124358e9d242bf27172) +++ firmware/App/Drivers/Battery.c (.../Battery.c) (revision c5979dcd628346a3df374ae3defd16a4dd47468e) @@ -134,7 +134,7 @@ batteryRelStateOfCharge_pct.data = (U32)relStateOfCharge_pct; if ( getBatteryRemainingPercent() < BATTERY_PACK_MIN_CHARGE_PCT ) { - //SET_ALARM_WITH_1_U32_DATA( ALARM_ID_HD_BATTERY_PACK_CHARGE_TOO_LOW, getBatteryRemainingPercent() ); // DEBUG_DENALI + SET_ALARM_WITH_1_U32_DATA( ALARM_ID_HD_BATTERY_PACK_CHARGE_TOO_LOW, getBatteryRemainingPercent() ); } else { Index: firmware/App/HDCommon.h =================================================================== diff -u -r1511be2b12834a910983093cf4c3a465ee4cda2e -rc5979dcd628346a3df374ae3defd16a4dd47468e --- firmware/App/HDCommon.h (.../HDCommon.h) (revision 1511be2b12834a910983093cf4c3a465ee4cda2e) +++ firmware/App/HDCommon.h (.../HDCommon.h) (revision c5979dcd628346a3df374ae3defd16a4dd47468e) @@ -10,8 +10,8 @@ * @author (last) Dara Navaei * @date (last) 04-Jan-2022 * -* @author (original) Sean -* @date (original) 27-Feb-2020 +* @author (original) Sean +* @date (original) 27-Feb-2020 * ***************************************************************************/ @@ -25,7 +25,7 @@ #define HD_VERSION_MAJOR 0 #define HD_VERSION_MINOR 6 #define HD_VERSION_MICRO 0 -#define HD_VERSION_BUILD 31 +#define HD_VERSION_BUILD 172 // ********** development build switches ********** @@ -49,21 +49,21 @@ // #define RUN_BP_OPEN_LOOP 1 // Run blood pump in open loop mode // #define RUN_DPI_OPEN_LOOP 1 // Run dialysate inlet pump in open loop mode #define WORN_OUT_CARTRIDGE 1 // Running with an old worn out cartridge (max wear) -// #define PBA_ESTIMATION 1 // Estimate arterial pressure rather than look at PBA sensor + #define PBA_ESTIMATION 1 // Estimate arterial pressure rather than look at PBA sensor #define DISABLE_MOTOR_CURRENT_CHECKS 1 // Do not error on HD pump current checks #define DISABLE_PUMP_FLOW_CHECKS 1 // Do not error on HD pump flow checks #define DISABLE_PUMP_SPEED_CHECKS 1 // Do not error on HD pump speed checks #define DISABLE_PUMP_DIRECTION_CHECKS 1 // Do not error on HD pump direction checks #define DISABLE_SYRINGE_PUMP 1 // Disable syringe pump functionality #define ALWAYS_ALLOW_SYRINGE_PUMP_CMDS 1 // Allow syringe pump commands at any time except when pump is busy #define DISABLE_PRESSURE_CHECKS 1 // Do not error on HD pressure checks - #define DISABLE_ARTERIAL_PRESSURE_CHECK 1 // Do not error on arterial pressure out of range - #define DISABLE_VENOUS_PRESSURE_CHECK 1 // Do not error on venous pressure out of range +// #define DISABLE_ARTERIAL_PRESSURE_CHECK 1 // Do not error on arterial pressure out of range +// #define DISABLE_VENOUS_PRESSURE_CHECK 1 // Do not error on venous pressure out of range // #define DISABLE_UF_ALARMS 1 // Do not error on HD ultrafiltration checks #define DISABLE_DIALYSATE_TEMP_CHECK 1 // Disable dialysate temperature check // #define DISABLE_VALVE_ALARMS 1 // Do not error on HD valve position - #define SKIP_CAL_CHECK 1 + #define SKIP_CAL_CHECK 1 // // #define RUN_PUMPS_OPEN_LOOP 1 // BP and DPi pumps will be run open loop (no flow sensor feedback) // #define READ_FPGA_ASYNC_DATA 1 // Test build reads non-priority register page every other time // #define EMC_TEST_BUILD 1 // EMC test build - HD/DG run separately but connected, HD pumps toggle on/off w/ stop button @@ -77,14 +77,15 @@ #define DISABLE_VOLTAGE_MONITOR 1 // Disable voltage monitoring/alarms #define ALLOW_1_MIN_TREATMENT_DURATION 1 // Allow user to change treatment duration to as low as 1 minute #define DISABLE_SYRINGE_PUMP_ALARMS 1 // Disable some syringe pump alarms that are triggering intermittently -// #define NO_PUMP_FLOW_LIMITS 1 // Allow any commanded flow rate for peristaltic pumps + #define NO_PUMP_FLOW_LIMITS 1 // Allow any commanded flow rate for peristaltic pumps #define DISABLE_BUBBLE_ALARMS 1 // Disable bubble alarms #define DISABLE_UI_POST_TEST 1 // Disable the UI POST // #define DISABLE_UI_COMM_TO_ALARM 1 // Disable UI comm timeouts #define DISABLE_WD_AND_SFTY_POST_TESTS 1 // Disable watchdog and safety shutdown POST tests #define DISABLE_ILLEGAL_AIR_TRAP_ALARM 1 // Disable illegal state for air trap alarm #define SKIP_RESERVOIR_ALARMS 1 // Skip reservoir management alarms - #define IGNORE_BLOOD_LEAK_SELF_TEST 1 // Ignore blood leak self test +// #define SKIP_RESERVOIR_ALARMS 1 // Skip reservoir management alarms +// #define IGNORE_BLOOD_LEAK_SELF_TEST 1 // Ignore blood leak self test #define IGNORE_BLOOD_LEAK_ALARM 1 // Ignore blood leak alarm // Skip Pre-Treatment and get to treatment as soon as possible Index: firmware/App/Services/SystemComm.c =================================================================== diff -u -r9c785a779da348df1c066ae0da2d0f53de7ea936 -rc5979dcd628346a3df374ae3defd16a4dd47468e --- firmware/App/Services/SystemComm.c (.../SystemComm.c) (revision 9c785a779da348df1c066ae0da2d0f53de7ea936) +++ firmware/App/Services/SystemComm.c (.../SystemComm.c) (revision c5979dcd628346a3df374ae3defd16a4dd47468e) @@ -52,8 +52,7 @@ #define MAX_COMM_CRC_FAILURE_WINDOW_MS (10 * SEC_PER_MIN * MS_PER_SECOND) ///< CRC error window #define MSG_NOT_ACKED_TIMEOUT_MS 150 ///< Maximum time for a Denali message that requires ACK to be ACK'd - -#define MSG_NOT_ACKED_TIMEOUT_MS_INIT 5000 ///< Maximum time for a Denali message that requires ACK to be ACK'd on the INIT state for the first (UI version request) message of the POST +#define MSG_NOT_ACKED_TIMEOUT_MS_INIT 5000 ///< Maximum time for a Denali message that requires ACK to be ACK'd on the INIT state for the first (UI version request) message of the POST #define MSG_NOT_ACKED_MAX_RETRIES 3 ///< Maximum number of times a message that requires ACK that was not ACK'd can be re-sent before alarm #define PENDING_ACK_LIST_SIZE 25 ///< Maximum number of Denali messages that can be pending ACK at any given time Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -r9c785a779da348df1c066ae0da2d0f53de7ea936 -rc5979dcd628346a3df374ae3defd16a4dd47468e --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 9c785a779da348df1c066ae0da2d0f53de7ea936) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision c5979dcd628346a3df374ae3defd16a4dd47468e) @@ -2307,7 +2307,7 @@ TEMPERATURE_SENSORS_DATA_T payload; memcpy( &payload, message->payload, sizeof( TEMPERATURE_SENSORS_DATA_T ) ); - setDialysateTemperatureReadings( payload.inletDialysate, payload.outletRedundant ); + setDialysateTemperatureReadings( payload.TDi, payload.TRo ); } // TODO - what to do if invalid payload length? // TODO - how to know if DG stops sending these? @@ -5123,6 +5123,7 @@ if ( sizeof( TEST_OVERRIDE_PAYLOAD_T ) == message->hdr.payloadLen ) { memcpy( &payload, message->payload, sizeof( TEST_OVERRIDE_PAYLOAD_T ) ); + if ( FALSE == payload.reset ) { result = testSetBatteryRemainingPercentOverride( payload.state.u32 ); Index: firmware/App/Tasks/TaskPriority.c =================================================================== diff -u -r9c785a779da348df1c066ae0da2d0f53de7ea936 -rc5979dcd628346a3df374ae3defd16a4dd47468e --- firmware/App/Tasks/TaskPriority.c (.../TaskPriority.c) (revision 9c785a779da348df1c066ae0da2d0f53de7ea936) +++ firmware/App/Tasks/TaskPriority.c (.../TaskPriority.c) (revision c5979dcd628346a3df374ae3defd16a4dd47468e) @@ -94,9 +94,10 @@ // Monitor fluid leak detector execFluidLeak(); +#ifndef IGNORE_BLOOD_LEAK_SELF_TEST // Monitor blood leak detector execBloodLeak(); - +#endif // Monitor air bubble detectors execBubbles();