diff --git a/mpod.cpp b/mpod.cpp
index 8a4ba3238c15d39167d4ac04e98c9ca6085882e6..d46fd3f791ea5cc1bf08b69b1ccc70412305dc56 100644
--- a/mpod.cpp
+++ b/mpod.cpp
@@ -263,7 +263,7 @@ void setChannelStateAndWait(const IPAddress *ipAddr, const uint16_t channel, con
         loopCount += 1;
         ramping = (mpod.isRampingUp() || mpod.isRampingDown());
         if (!ramping) {
-            if (mpod.isOn() == (bool)output) {
+            if ((mpod.isOn() == (bool)output || mpod.isInterlocked())) {
                 settingChannelState = false;
             } else if (loopCount >= 5) {
                 // Resend set command