kopia lustrzana https://github.com/Aircoookie/WLED
TM1814 requires refreshes to remain powered off and a slightly faster refresh speed.
rodzic
ced0cc1bac
commit
8b759bc5d9
|
@ -34,7 +34,7 @@
|
||||||
*/
|
*/
|
||||||
uint16_t WS2812FX::mode_static(void) {
|
uint16_t WS2812FX::mode_static(void) {
|
||||||
fill(SEGCOLOR(0));
|
fill(SEGCOLOR(0));
|
||||||
return (SEGMENT.getOption(SEG_OPTION_TRANSITIONAL)) ? FRAMETIME : 380; //update faster if in transition
|
return (SEGMENT.getOption(SEG_OPTION_TRANSITIONAL)) ? FRAMETIME : 350; //update faster if in transition
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -606,6 +606,7 @@ class WS2812FX {
|
||||||
|
|
||||||
bool
|
bool
|
||||||
isRgbw = false,
|
isRgbw = false,
|
||||||
|
isOffRefreshRequred = false, //periodic refresh is required for the strip to remain off.
|
||||||
gammaCorrectBri = false,
|
gammaCorrectBri = false,
|
||||||
gammaCorrectCol = true,
|
gammaCorrectCol = true,
|
||||||
applyToAllSelected = true,
|
applyToAllSelected = true,
|
||||||
|
|
|
@ -399,6 +399,11 @@ class BusManager {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//Return true if the strip requires a refresh to stay off.
|
||||||
|
static bool isOffRefreshRequred(uint8_t type) {
|
||||||
|
return type == TYPE_TM1814;
|
||||||
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
uint8_t numBusses = 0;
|
uint8_t numBusses = 0;
|
||||||
Bus* busses[WLED_MAX_BUSSES];
|
Bus* busses[WLED_MAX_BUSSES];
|
||||||
|
|
|
@ -128,6 +128,8 @@ void deserializeConfig() {
|
||||||
bool reversed = elm["rev"];
|
bool reversed = elm["rev"];
|
||||||
//RGBW mode is enabled if at least one of the strips is RGBW
|
//RGBW mode is enabled if at least one of the strips is RGBW
|
||||||
strip.isRgbw = (strip.isRgbw || BusManager::isRgbw(ledType));
|
strip.isRgbw = (strip.isRgbw || BusManager::isRgbw(ledType));
|
||||||
|
//refresh is required to remain off if at least one of the strips requires the refresh.
|
||||||
|
strip.isOffRefreshRequred |= BusManager::isOffRefreshRequred(ledType);
|
||||||
s++;
|
s++;
|
||||||
BusConfig bc = BusConfig(ledType, pins, start, length, colorOrder, reversed);
|
BusConfig bc = BusConfig(ledType, pins, start, length, colorOrder, reversed);
|
||||||
mem += busses.memUsage(bc);
|
mem += busses.memUsage(bc);
|
||||||
|
|
|
@ -221,7 +221,7 @@ void WLED::loop()
|
||||||
|
|
||||||
yield();
|
yield();
|
||||||
|
|
||||||
if (!offMode)
|
if (!offMode || strip.isOffRefreshRequred)
|
||||||
strip.service();
|
strip.service();
|
||||||
#ifdef ESP8266
|
#ifdef ESP8266
|
||||||
else if (!noWifiSleep)
|
else if (!noWifiSleep)
|
||||||
|
|
Ładowanie…
Reference in New Issue