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:
parent
32bb5ed7ac
commit
ae371e0844
3 changed files with 6 additions and 5 deletions
Arduino/McLighting
|
@ -585,7 +585,7 @@ void loop() {
|
|||
strip.setMode(FX_MODE_THEATER_CHASE_RAINBOW);
|
||||
mode = HOLD;
|
||||
}
|
||||
if (mode == HOLD) {
|
||||
if (mode == HOLD || mode == CUSTOM) {
|
||||
if (exit_func) {
|
||||
exit_func = false;
|
||||
}
|
||||
|
@ -594,7 +594,8 @@ void loop() {
|
|||
tv();
|
||||
}
|
||||
|
||||
if (mode != TV) {
|
||||
// Only for modes with WS2812FX functionality
|
||||
if (mode != TV && mode != CUSTOM) {
|
||||
strip.service();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -31,7 +31,7 @@ const char HOSTNAME[] = "ESP8266_01"; // Friedly hostname
|
|||
#define DBG_OUTPUT_PORT Serial // Set debug output port
|
||||
|
||||
// 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
|
||||
|
||||
|
|
|
@ -71,7 +71,7 @@ void handleSetSingleLED(uint8_t * mypayload) {
|
|||
// decode led index
|
||||
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()) {
|
||||
ledstates[led].red = ((rgb >> 16) & 0xFF);
|
||||
ledstates[led].green = ((rgb >> 8) & 0xFF);
|
||||
|
@ -85,7 +85,7 @@ void handleSetSingleLED(uint8_t * mypayload) {
|
|||
strip.show();
|
||||
}
|
||||
exit_func = true;
|
||||
mode = ALL;
|
||||
mode = CUSTOM;
|
||||
}
|
||||
|
||||
void handleSetNamedMode(String str_mode) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue