Index: firmware/App/Controllers/BloodFlow.c =================================================================== diff -u -rda838b2d59d8b12a239cd31f8b68b2b1bf78e4ae -rd4c8e0246e5bc34d1ef6a2e1709647716c84a378 --- firmware/App/Controllers/BloodFlow.c (.../BloodFlow.c) (revision da838b2d59d8b12a239cd31f8b68b2b1bf78e4ae) +++ firmware/App/Controllers/BloodFlow.c (.../BloodFlow.c) (revision d4c8e0246e5bc34d1ef6a2e1709647716c84a378) @@ -1004,7 +1004,7 @@ U16 last = bpLastMotorHallSensorCounts[ bpMotorSpeedCalcIdx ]; U32 nextIdx = INC_WRAP( bpMotorSpeedCalcIdx, 0, BP_SPEED_CALC_BUFFER_LEN - 1 ); U16 incDelta = u16DiffWithWrap( bpLastMotorHallSensorCounts[ nextIdx ], bpMotorHallSensorCount ); - U16 decDelta = HEX_64_K - incDelta; + U16 decDelta = ( 0 == incDelta ? 0xFFFF : HEX_64_K - incDelta ); U16 spdDelta; S16 delta; Index: firmware/App/Controllers/DialInFlow.c =================================================================== diff -u -rda838b2d59d8b12a239cd31f8b68b2b1bf78e4ae -rd4c8e0246e5bc34d1ef6a2e1709647716c84a378 --- firmware/App/Controllers/DialInFlow.c (.../DialInFlow.c) (revision da838b2d59d8b12a239cd31f8b68b2b1bf78e4ae) +++ firmware/App/Controllers/DialInFlow.c (.../DialInFlow.c) (revision d4c8e0246e5bc34d1ef6a2e1709647716c84a378) @@ -952,7 +952,7 @@ U16 incDelta = ( dipMotorHallSensorCount >= dipLastMotorHallSensorCounts[ nextIdx ] ? \ dipMotorHallSensorCount - dipLastMotorHallSensorCounts[ nextIdx ] : \ ( HEX_64_K - dipLastMotorHallSensorCounts[ nextIdx ] ) + dipMotorHallSensorCount ); - U16 decDelta = HEX_64_K - incDelta; + U16 decDelta = ( 0 == incDelta ? 0xFFFF : HEX_64_K - incDelta ); U16 delta; // Determine dialysate inlet pump speed/direction from delta hall sensor count since last interval Index: firmware/App/Controllers/DialOutFlow.c =================================================================== diff -u -rda838b2d59d8b12a239cd31f8b68b2b1bf78e4ae -rd4c8e0246e5bc34d1ef6a2e1709647716c84a378 --- firmware/App/Controllers/DialOutFlow.c (.../DialOutFlow.c) (revision da838b2d59d8b12a239cd31f8b68b2b1bf78e4ae) +++ firmware/App/Controllers/DialOutFlow.c (.../DialOutFlow.c) (revision d4c8e0246e5bc34d1ef6a2e1709647716c84a378) @@ -284,7 +284,6 @@ dialOutPumpControlMode = mode; // Set PWM duty cycle target to an estimated initial target to ramp to based on target flow rate - then we will control to flow when ramp completed dialOutPumpPWMDutyCyclePct = pwmDC; - dialOutPumpPWMDutyCyclePct = MIN( dialOutPumpPWMDutyCyclePct, MAX_DIAL_OUT_PUMP_PWM_DUTY_CYCLE ); switch ( dialOutPumpState ) { @@ -866,7 +865,7 @@ U16 incDelta = ( dopMotorHallSensorCount >= dopLastMotorHallSensorCounts[ nextIdx ] ? \ dopMotorHallSensorCount - dopLastMotorHallSensorCounts[ nextIdx ] : \ ( HEX_64_K - dopLastMotorHallSensorCounts[ nextIdx ] ) + dopMotorHallSensorCount ); - U16 decDelta = HEX_64_K - incDelta; + U16 decDelta = ( 0 == incDelta ? 0xFFFF : HEX_64_K - incDelta ); U16 delta; // Determine dialysate outlet pump speed/direction from delta hall sensor count since last interval Index: firmware/App/Controllers/Fans.c =================================================================== diff -u -rf6b78d1fe6741043de38707211710ab0e8a08483 -rd4c8e0246e5bc34d1ef6a2e1709647716c84a378 --- firmware/App/Controllers/Fans.c (.../Fans.c) (revision f6b78d1fe6741043de38707211710ab0e8a08483) +++ firmware/App/Controllers/Fans.c (.../Fans.c) (revision d4c8e0246e5bc34d1ef6a2e1709647716c84a378) @@ -637,17 +637,16 @@ * start time offset. * @details Inputs: none * @details Outputs: rpmAlarmStartTimeOffset - * @param hours hours to override - * @param minutes minutes to override + * @param seconds seconds to override * @return TRUE if override successful, FALSE if not *************************************************************************/ -BOOL testSetFanRPMAlarmStartTimeOffsetOverride( U32 hours, U32 minutes ) +BOOL testSetFanRPMAlarmStartTimeOffsetOverride( U32 seconds ) { BOOL result = FALSE; if ( TRUE == isTestingActivated() ) { - rpmAlarmStartTimeOffset.ovData = rpmAlarmStartTimeOffset.ovData + ( ( hours * MIN_PER_HOUR * SEC_PER_MIN ) + ( minutes * SEC_PER_MIN ) ) * MS_PER_SECOND; + rpmAlarmStartTimeOffset.ovData = seconds * MS_PER_SECOND; rpmAlarmStartTimeOffset.override = OVERRIDE_KEY; result = TRUE; Index: firmware/App/Controllers/Fans.h =================================================================== diff -u -rf6b78d1fe6741043de38707211710ab0e8a08483 -rd4c8e0246e5bc34d1ef6a2e1709647716c84a378 --- firmware/App/Controllers/Fans.h (.../Fans.h) (revision f6b78d1fe6741043de38707211710ab0e8a08483) +++ firmware/App/Controllers/Fans.h (.../Fans.h) (revision d4c8e0246e5bc34d1ef6a2e1709647716c84a378) @@ -58,7 +58,7 @@ BOOL testSetFanRPMOverride( U32 fanId, F32 rpm ); BOOL testResetFanRPMOverride( U32 fanId ); -BOOL testSetFanRPMAlarmStartTimeOffsetOverride( U32 hours, U32 minutes ); +BOOL testSetFanRPMAlarmStartTimeOffsetOverride( U32 seconds ); BOOL testResetFanRPMAlarmStartTimeOffsetOverride( void ); BOOL testSetFansDutyCycleOverride( F32 value ); Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -rf6b78d1fe6741043de38707211710ab0e8a08483 -rd4c8e0246e5bc34d1ef6a2e1709647716c84a378 --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision f6b78d1fe6741043de38707211710ab0e8a08483) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision d4c8e0246e5bc34d1ef6a2e1709647716c84a378) @@ -6900,17 +6900,17 @@ *************************************************************************/ void handleTestFansRPMAlarmStartTimeOffsetOverrideRequest( MESSAGE_T *message ) { - TEST_OVERRIDE_ARRAY_PAYLOAD_T payload; + TEST_OVERRIDE_PAYLOAD_T payload; BOOL result = FALSE; // verify payload length - if ( sizeof( TEST_OVERRIDE_ARRAY_PAYLOAD_T ) == message->hdr.payloadLen ) + if ( sizeof( TEST_OVERRIDE_PAYLOAD_T ) == message->hdr.payloadLen ) { - memcpy( &payload, message->payload, sizeof( TEST_OVERRIDE_ARRAY_PAYLOAD_T ) ); + memcpy( &payload, message->payload, sizeof( TEST_OVERRIDE_PAYLOAD_T ) ); if ( FALSE == payload.reset ) { - result = testSetFanRPMAlarmStartTimeOffsetOverride( payload.state.u32, payload.index ); + result = testSetFanRPMAlarmStartTimeOffsetOverride( payload.state.u32 ); } else {