diff --git a/esp-deckenlicht.ino b/esp-deckenlicht.ino index 5fcfee1..8968db8 100644 --- a/esp-deckenlicht.ino +++ b/esp-deckenlicht.ino @@ -157,10 +157,30 @@ bool light3Handler(const HomieRange& range, const String& value) { void output() { // * 4 to scale the input up for ESP Arduino default 10 bit PWM - analogWrite(PIN_LIGHT, w0 * 4); - analogWrite(PIN_LIGHT1, w1 * 4); - analogWrite(PIN_LIGHT2, w2 * 4); - analogWrite(PIN_LIGHT3, w3 * 4); + if (w0 == FULL) + { + digitalWrite(PIN_LIGHT, HIGH); + } else { + analogWrite(PIN_LIGHT, w0 * 4); + } + if (w1 == FULL) + { + digitalWrite(PIN_LIGHT1, HIGH); + } else { + analogWrite(PIN_LIGHT1, w0 * 4); + } + if (w2 == FULL) + { + digitalWrite(PIN_LIGHT2, HIGH); + } else { + analogWrite(PIN_LIGHT2, w0 * 4); + } + if (w3 == FULL) + { + digitalWrite(PIN_LIGHT3, HIGH); + } else { + analogWrite(PIN_LIGHT3, w0 * 4); + } } void loopHandler()