Index: firmware/App/Modes/Rinseback.c =================================================================== diff -u -r028345aae95254cd8ff027d0da533b345da06b4f -ra31707ccbf01a1b40f8500bc491dc9c616e7a163 --- firmware/App/Modes/Rinseback.c (.../Rinseback.c) (revision 028345aae95254cd8ff027d0da533b345da06b4f) +++ firmware/App/Modes/Rinseback.c (.../Rinseback.c) (revision a31707ccbf01a1b40f8500bc491dc9c616e7a163) @@ -1005,8 +1005,9 @@ { RINSEBACK_DATA_PAYLOAD_T data; U32 timeout = MAX_RINSEBACK_TIME / ( MS_PER_SECOND / TASK_GENERAL_INTERVAL ); - U32 countdown = ( getRinsebackVolume() >= TARGET_RINSEBACK_VOLUME_ML ? MAX_RINSEBACK_TIME : MAX_RINSEBACK_DONE_TIME ); + U32 countdown = ( getRinsebackVolume() >= TARGET_RINSEBACK_VOLUME_ML ? MAX_RINSEBACK_DONE_TIME : MAX_RINSEBACK_TIME ); + countdown -= rinsebackTimerCtr; // Handle countdown past zero if ( countdown > MAX_RINSEBACK_DONE_TIME ) {