Index: firmware/App/Controllers/BloodLeak.c =================================================================== diff -u -rea3922a0b9f1cec5becaa26e2ba5f34ab4579209 -r863a9c650d97fbf75d56c60b907b9117d033ca94 --- firmware/App/Controllers/BloodLeak.c (.../BloodLeak.c) (revision ea3922a0b9f1cec5becaa26e2ba5f34ab4579209) +++ firmware/App/Controllers/BloodLeak.c (.../BloodLeak.c) (revision 863a9c650d97fbf75d56c60b907b9117d033ca94) @@ -666,18 +666,21 @@ { BLOOD_LEAK_STATE_T state = BLOOD_LEAK_SELF_TEST_STATE; +#ifndef IGNORE_BLOOD_LEAK_SELF_TEST if ( SELF_TEST_STATUS_IN_PROGRESS == bloodLeakSelfTestStatus ) { if ( FALSE == noFPGABloodLeakDetected() ) // Faked blood leak caused by independent MCU board { bloodLeakSelfTestStatus = SELF_TEST_STATUS_PASSED; clearFPGABloodLeakSelfTest(); } + 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 @@ -688,6 +691,7 @@ state = BLOOD_LEAK_NORMAL_STATE; } } +#endif return state; } Index: firmware/App/Controllers/BloodLeak.h =================================================================== diff -u -r208ceefa8e8b1cc30feb93be771ced6d313e6995 -r863a9c650d97fbf75d56c60b907b9117d033ca94 --- firmware/App/Controllers/BloodLeak.h (.../BloodLeak.h) (revision 208ceefa8e8b1cc30feb93be771ced6d313e6995) +++ firmware/App/Controllers/BloodLeak.h (.../BloodLeak.h) (revision 863a9c650d97fbf75d56c60b907b9117d033ca94) @@ -66,7 +66,7 @@ SELF_TEST_STATUS_T execBloodLeakSelfTest( void ); BLOOD_LEAK_STATUS_T getBloodLeakStatus( void ); -SELF_TEST_STATUS_T getBloodLeakSelfTestStatus( void ); +SELF_TEST_STATUS_T getBloodLeakSelfTestStatus( void ); BOOL testSetBloodLeakDataPublishIntervalOverride( U32 value ); BOOL testResetBloodLeakDataPublishIntervalOverride( void ); Index: firmware/App/Controllers/SyringePump.c =================================================================== diff -u -r49533d4870aa10c1b20406dd5c013567fe854694 -r863a9c650d97fbf75d56c60b907b9117d033ca94 --- firmware/App/Controllers/SyringePump.c (.../SyringePump.c) (revision 49533d4870aa10c1b20406dd5c013567fe854694) +++ firmware/App/Controllers/SyringePump.c (.../SyringePump.c) (revision 863a9c650d97fbf75d56c60b907b9117d033ca94) @@ -90,6 +90,7 @@ /// Expected position of empty in relation to home position. #define SYRINGE_PUMP_EMPTY_POS ( SYRINGE_ENCODER_COUNTS_PER_ML * 10.84F ) + /// Margin of error for empty position determination. #define SYRINGE_PUMP_EMPTY_POS_MARGIN ( SYRINGE_ENCODER_COUNTS_PER_ML * 0.5F ) /// Minimum retract position. @@ -1920,6 +1921,7 @@ *************************************************************************/ + /*********************************************************************//** * @brief * The testSetSyringePumpDataPublishIntervalOverride function overrides the Index: firmware/App/Services/SystemComm.c =================================================================== diff -u -r22cab5beebd48faf29e78c5003b0bdd0a32748e8 -r863a9c650d97fbf75d56c60b907b9117d033ca94 --- firmware/App/Services/SystemComm.c (.../SystemComm.c) (revision 22cab5beebd48faf29e78c5003b0bdd0a32748e8) +++ firmware/App/Services/SystemComm.c (.../SystemComm.c) (revision 863a9c650d97fbf75d56c60b907b9117d033ca94) @@ -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 @@ -1618,10 +1617,6 @@ handleTestSyringePumpHeprinBolusTargetRateOverrideRequest( message ); break; - case MSG_ID_HD_REQ_CURRENT_TREATMENT_PARAMETERS: - handleTestCurrentTreamtmentParametersRequest( message ); - break; - case MSG_ID_HD_FANS_DUTY_CYCLE_OVERRIDE: handleSetFansDutyCycleOverrideRequest( message ); break; @@ -1654,9 +1649,6 @@ handleSetBloodEmbeddedModeCommand( message ); break; - case MSG_ID_HD_SET_BLOOD_LEAK_EMB_MODE_SET_POINT: - break; - default: // Unrecognized message ID received - ignore break; Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -r22cab5beebd48faf29e78c5003b0bdd0a32748e8 -r863a9c650d97fbf75d56c60b907b9117d033ca94 --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 22cab5beebd48faf29e78c5003b0bdd0a32748e8) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 863a9c650d97fbf75d56c60b907b9117d033ca94) @@ -1824,7 +1824,6 @@ payload.alarmsFlags |= ( almStatus.alarmsToEscalate ? BIT_BY_POS(ALARM_STATE_FLAG_BIT_POS_ALARMS_TO_ESCALATE) : 0 ); payload.alarmsFlags |= ( almStatus.alarmsSilenced ? BIT_BY_POS(ALARM_STATE_FLAG_BIT_POS_ALARMS_SILENCED) : 0 ); payload.alarmsFlags |= ( almStatus.lampOn ? BIT_BY_POS(ALARM_STATE_FLAG_BIT_POS_LAMP_ON) : 0 ); - payload.alarmsFlags |= ( almStatus.noDialRecirc ? BIT_BY_POS(ALARM_STATE_FLAG_BIT_POS_DIALYSATE_RECIRC) : 0 ); payload.alarmsFlags |= ( almStatus.noMinimize ? BIT_BY_POS(ALARM_STATE_FLAG_BIT_POS_NO_MINIMIZE) : 0 ); payload.alarmsFlags |= ( almStatus.topAlarmConditionDetected ? BIT_BY_POS(ALARM_STATE_FLAG_BIT_POS_TOP_CONDITION) : 0 ); @@ -2325,7 +2324,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? @@ -5151,6 +5150,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 );