diff --git a/usermods/Temperature/usermod_temperature.h b/usermods/Temperature/usermod_temperature.h index 6a37ed248..40df0e533 100644 --- a/usermods/Temperature/usermod_temperature.h +++ b/usermods/Temperature/usermod_temperature.h @@ -128,6 +128,7 @@ class UsermodTemperature : public Usermod { } } } + DEBUG_PRINTLN(F("Sensor NOT found.")); return false; } @@ -162,6 +163,7 @@ class UsermodTemperature : public Usermod { void loop() { if (!enabled || !sensorFound || strip.isUpdating()) return; + static uint8_t errorCount = 0; unsigned long now = millis(); // check to see if we are due for taking a measurement @@ -179,7 +181,12 @@ class UsermodTemperature : public Usermod { // we were waiting for a conversion to complete, have we waited log enough? if (now - lastTemperaturesRequest >= 750 /* 93.75ms per the datasheet but can be up to 750ms */) { readTemperature(); - if (getTemperatureC() < -100.0f) lastMeasurement = now - readingInterval + 300; // force new measurement in 300ms + if (getTemperatureC() < -100.0f) { + if (++errorCount > 10) sensorFound = 0; + lastMeasurement = now - readingInterval + 300; // force new measurement in 300ms + return; + } + errorCount = 0; if (WLED_MQTT_CONNECTED) { char subuf[64]; diff --git a/wled00/FX_fcn.cpp b/wled00/FX_fcn.cpp index 3a7703d94..b8c066d65 100644 --- a/wled00/FX_fcn.cpp +++ b/wled00/FX_fcn.cpp @@ -1243,28 +1243,28 @@ const char JSON_mode_names[] PROGMEM = R"=====([ "Blink@!,;!,!,;!", "Breathe@!,;!,!;!", "Wipe@!,!;!,!,;!", -"Wipe Random@!,;;!", -"Random Colors@!,Fade time;;!", +"Wipe Random@!,;1,2,3;!", +"Random Colors@!,Fade time;1,2,3;!", "Sweep@!,!;!,!,;!", -"Dynamic", -"Colorloop@!,Saturation;;!", -"Rainbow", +"Dynamic@!,!;1,2,3;!", +"Colorloop@!,Saturation;1,2,3;!", +"Rainbow@!,Size;1,2,3;!", "Scan@!,# of dots;!,!,;!", "Scan Dual@!,# of dots;!,!,;!", -"Fade", +"Fade@!,;!,!,;!", "Theater@!,Gap size;!,!,;!", -"Theater Rainbow", +"Theater Rainbow!,Gap size;1,2,3;!", "Running@!,Wave width;!,!,;!", "Saw@!,Width;!,!,;!", -"Twinkle", -"Dissolve", -"Dissolve Rnd", +"Twinkle@!,;!,!,;!", +"Dissolve@Repeat speed,Dissolve speed;!,!,;!", +"Dissolve Rnd@Repeat speed,Dissolve speed;,!,;!", "Sparkle@!,;!,!,;!", "Sparkle Dark@!,!;Bg,Fx,;!", "Sparkle+@!,!;Bg,Fx,;!", -"Strobe", -"Strobe Rainbow", -"Strobe Mega", +"Strobe@!,;!,!,;!", +"Strobe Rainbow@!,;,!,;!", +"Strobe Mega@!,!;!,!,;!", "Blink Rainbow@Frequency,Blink duration;!,!,;!", "Android@!,Width;!,!,;!", "Chase@!,Width;!,!,!;!", @@ -1272,9 +1272,9 @@ const char JSON_mode_names[] PROGMEM = R"=====([ "Chase Rainbow@!,Width;!,!,;0", "Chase Flash@!,;Bg,Fx,!;!", "Chase Flash Rnd@!,;,Fx,;!", -"Rainbow Runner", +"Rainbow Runner@!,Size;Bg,,;!", "Colorful@!,Saturation;1,2,3;!", -"Traffic Light", +"Traffic Light@!,;,!,;!", "Sweep Random", "Chase 2@!,Width;!,!,;!", "Aurora@!=24,!;1,2,3;!=50", @@ -1304,17 +1304,17 @@ const char JSON_mode_names[] PROGMEM = R"=====([ "Oscillate", "Pride 2015@!,;;", "Juggle@!=16,Trail=240;!,!,;!", -"Palette@!,;;!", -"Fire 2012@Spark rate=120,Decay=64;;!", +"Palette@!,;1,2,3;!", +"Fire 2012@Spark rate=120,Decay=64;1,2,3;!", "Colorwaves", -"Bpm@!=64,;,,,;!", +"Bpm@!=64,;1,2,3;!", "Fill Noise", "Noise 1", "Noise 2", "Noise 3", "Noise 4", "Colortwinkles@Fade speed,Spawn speed;1,2,3;!", -"Lake@!,;,,,;!", +"Lake@!,;1,2,3;!", "Meteor@!,Trail length;!,!,;!", "Meteor Smooth@!,Trail length;!,!,;!", "Railway", @@ -1339,7 +1339,7 @@ const char JSON_mode_names[] PROGMEM = R"=====([ "Plasma@Phase,;1,2,3;!", "Percent@,% of fill;!,!,;!", "Ripple Rainbow", -"Heartbeat", +"Heartbeat@!,!;!,!,;!", "Pacifica", "Candle Multi@Flicker rate=96,Flicker intensity=224;!,!,;0", "Solid Glitter@,!;!,,;0", @@ -1353,7 +1353,7 @@ const char JSON_mode_names[] PROGMEM = R"=====([ "Chunchun@!,Gap size;!,!,;!", "Dancing Shadows@!,# of shadows;!,,;!", "Washing Machine", -"Candy Cane@!,Width;,,,;", +"Candy Cane@!,Width;;", "Blends@Shift speed,Blend speed;1,2,3,!", "TV Simulator", "Dynamic Smooth"