From dac9d0ad3513c1f5543e6039c4839390fbe32239 Mon Sep 17 00:00:00 2001 From: Christian Hammacher Date: Fri, 23 Dec 2022 20:20:56 +0100 Subject: [PATCH] Bug fix for SPI timeout handling SPI interface was not invalidated when the connection could be established again after a timeout --- src/DuetControlServer/SPI/DataTransfer.cs | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/DuetControlServer/SPI/DataTransfer.cs b/src/DuetControlServer/SPI/DataTransfer.cs index 831d5756b..027268c67 100644 --- a/src/DuetControlServer/SPI/DataTransfer.cs +++ b/src/DuetControlServer/SPI/DataTransfer.cs @@ -242,19 +242,17 @@ public static void PerformFullTransfer(bool connecting = false) Logger.LogOutput(MessageType.Warning, "Incompatible firmware, please upgrade as soon as possible"); } - // Deal with timeouts + // Deal with timeouts and the first transmission if (_hadTimeout) { Logger.LogOutput(MessageType.Success, "Connection to Duet established"); _hadTimeout = _resetting = false; } - - // Deal with the first transmission - if (!_connected) + else if (!_connected) { _lastTransferNumber = (ushort)(_rxHeader.SequenceNumber - 1); - _connected = true; } + _connected = true; // Transfer OK _numMeasuredTransfers++;