Bugfix issue: Just a flicker on WS set single pixel command #31

See: https://github.com/toblum/McLighting/issues/31
This commit is contained in:
Tobias Blum
2017-08-19 23:36:23 +02:00
parent 32bb5ed7ac
commit ae371e0844
3 changed files with 6 additions and 5 deletions
+3 -2
View File
@@ -585,7 +585,7 @@ void loop() {
strip.setMode(FX_MODE_THEATER_CHASE_RAINBOW); strip.setMode(FX_MODE_THEATER_CHASE_RAINBOW);
mode = HOLD; mode = HOLD;
} }
if (mode == HOLD) { if (mode == HOLD || mode == CUSTOM) {
if (exit_func) { if (exit_func) {
exit_func = false; exit_func = false;
} }
@@ -594,7 +594,8 @@ void loop() {
tv(); tv();
} }
if (mode != TV) { // Only for modes with WS2812FX functionality
if (mode != TV && mode != CUSTOM) {
strip.service(); strip.service();
} }
} }
+1 -1
View File
@@ -31,7 +31,7 @@ const char HOSTNAME[] = "ESP8266_01"; // Friedly hostname
#define DBG_OUTPUT_PORT Serial // Set debug output port #define DBG_OUTPUT_PORT Serial // Set debug output port
// List of all color modes // List of all color modes
enum MODE { SET_MODE, HOLD, OFF, ALL, WIPE, RAINBOW, RAINBOWCYCLE, THEATERCHASE, THEATERCHASERAINBOW, TV }; enum MODE { SET_MODE, HOLD, OFF, ALL, WIPE, RAINBOW, RAINBOWCYCLE, THEATERCHASE, THEATERCHASERAINBOW, TV, CUSTOM };
MODE mode = RAINBOW; // Standard mode that is active when software starts MODE mode = RAINBOW; // Standard mode that is active when software starts
+2 -2
View File
@@ -71,7 +71,7 @@ void handleSetSingleLED(uint8_t * mypayload) {
// decode led index // decode led index
uint64_t rgb = (uint64_t) strtol((const char *) &mypayload[1], NULL, 16); uint64_t rgb = (uint64_t) strtol((const char *) &mypayload[1], NULL, 16);
uint8_t led = ((rgb >> 24) & 0xFF); uint8_t led = ((rgb >> 24) & 0xFF);
if (led < strip.numPixels()) { if (led < strip.numPixels()) {
ledstates[led].red = ((rgb >> 16) & 0xFF); ledstates[led].red = ((rgb >> 16) & 0xFF);
ledstates[led].green = ((rgb >> 8) & 0xFF); ledstates[led].green = ((rgb >> 8) & 0xFF);
@@ -85,7 +85,7 @@ void handleSetSingleLED(uint8_t * mypayload) {
strip.show(); strip.show();
} }
exit_func = true; exit_func = true;
mode = ALL; mode = CUSTOM;
} }
void handleSetNamedMode(String str_mode) { void handleSetNamedMode(String str_mode) {