Merge branch 'master' of https://github.com/toblum/McLighting
This commit is contained in:
commit
e40a7db54b
2 changed files with 30 additions and 4 deletions
|
@ -299,7 +299,12 @@ void loop() {
|
||||||
|
|
||||||
// Simple statemachine that handles the different modes
|
// Simple statemachine that handles the different modes
|
||||||
if (mode == OFF) {
|
if (mode == OFF) {
|
||||||
colorWipe(strip.Color(0, 0, 0), 50);
|
//colorWipe(strip.Color(0, 0, 0), 50);
|
||||||
|
uint16_t i;
|
||||||
|
for (i = 0; i < strip.numPixels(); i++) {
|
||||||
|
strip.setPixelColor(i, 0, 0, 0);
|
||||||
|
}
|
||||||
|
strip.show();
|
||||||
mode = HOLD;
|
mode = HOLD;
|
||||||
}
|
}
|
||||||
if (mode == ALL) {
|
if (mode == ALL) {
|
||||||
|
@ -308,7 +313,7 @@ void loop() {
|
||||||
strip.setPixelColor(i, main_color.red, main_color.green, main_color.blue);
|
strip.setPixelColor(i, main_color.red, main_color.green, main_color.blue);
|
||||||
}
|
}
|
||||||
strip.show();
|
strip.show();
|
||||||
mode = HOLD;
|
//mode = HOLD;
|
||||||
}
|
}
|
||||||
if (mode == WIPE) {
|
if (mode == WIPE) {
|
||||||
colorWipe(strip.Color(main_color.red, main_color.green, main_color.blue), delay_ms);
|
colorWipe(strip.Color(main_color.red, main_color.green, main_color.blue), delay_ms);
|
||||||
|
|
|
@ -120,16 +120,28 @@ void webSocketEvent(uint8_t num, WStype_t type, uint8_t * payload, size_t lenght
|
||||||
main_color.green = ((rgb >> 8) & 0xFF);
|
main_color.green = ((rgb >> 8) & 0xFF);
|
||||||
main_color.blue = ((rgb >> 0) & 0xFF);
|
main_color.blue = ((rgb >> 0) & 0xFF);
|
||||||
DBG_OUTPUT_PORT.printf("Set main color to: [%u] [%u] [%u]\n", main_color.red, main_color.green, main_color.blue);
|
DBG_OUTPUT_PORT.printf("Set main color to: [%u] [%u] [%u]\n", main_color.red, main_color.green, main_color.blue);
|
||||||
|
webSocket.sendTXT(num, "OK");
|
||||||
}
|
}
|
||||||
|
|
||||||
// # ==> Set delay
|
// # ==> Set delay
|
||||||
if(payload[0] == '?') {
|
if(payload[0] == '?') {
|
||||||
// decode rgb data
|
// decode delay data
|
||||||
uint8_t d = (uint8_t) strtol((const char *) &payload[1], NULL, 16);
|
uint8_t d = (uint8_t) strtol((const char *) &payload[1], NULL, 10);
|
||||||
delay_ms = ((d >> 0) & 0xFF);
|
delay_ms = ((d >> 0) & 0xFF);
|
||||||
DBG_OUTPUT_PORT.printf("WS: Set delay to: [%u]\n", delay_ms);
|
DBG_OUTPUT_PORT.printf("WS: Set delay to: [%u]\n", delay_ms);
|
||||||
|
webSocket.sendTXT(num, "OK");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// # ==> Set brightness
|
||||||
|
if(payload[0] == '%') {
|
||||||
|
uint8_t b = (uint8_t) strtol((const char *) &payload[1], NULL, 10);
|
||||||
|
brightness = ((b >> 0) & 0xFF);
|
||||||
|
DBG_OUTPUT_PORT.printf("WS: Set brightness to: [%u]\n", brightness);
|
||||||
|
strip.setBrightness(brightness);
|
||||||
|
webSocket.sendTXT(num, "OK");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// * ==> Set main color and light all LEDs (Shortcut)
|
// * ==> Set main color and light all LEDs (Shortcut)
|
||||||
if(payload[0] == '*') {
|
if(payload[0] == '*') {
|
||||||
// decode rgb data
|
// decode rgb data
|
||||||
|
@ -145,6 +157,7 @@ void webSocketEvent(uint8_t num, WStype_t type, uint8_t * payload, size_t lenght
|
||||||
strip.show();
|
strip.show();
|
||||||
DBG_OUTPUT_PORT.printf("WS: Set all leds to main color: [%u] [%u] [%u]\n", main_color.red, main_color.green, main_color.blue);
|
DBG_OUTPUT_PORT.printf("WS: Set all leds to main color: [%u] [%u] [%u]\n", main_color.red, main_color.green, main_color.blue);
|
||||||
mode = HOLD;
|
mode = HOLD;
|
||||||
|
webSocket.sendTXT(num, "OK");
|
||||||
}
|
}
|
||||||
|
|
||||||
// ! ==> Set single LED in given color
|
// ! ==> Set single LED in given color
|
||||||
|
@ -166,6 +179,7 @@ void webSocketEvent(uint8_t num, WStype_t type, uint8_t * payload, size_t lenght
|
||||||
strip.show();
|
strip.show();
|
||||||
}
|
}
|
||||||
mode = HOLD;
|
mode = HOLD;
|
||||||
|
webSocket.sendTXT(num, "OK");
|
||||||
}
|
}
|
||||||
|
|
||||||
// ! ==> Activate mode
|
// ! ==> Activate mode
|
||||||
|
@ -174,6 +188,12 @@ void webSocketEvent(uint8_t num, WStype_t type, uint8_t * payload, size_t lenght
|
||||||
String str_mode = String((char *) &payload[0]);
|
String str_mode = String((char *) &payload[0]);
|
||||||
|
|
||||||
exit_func = true;
|
exit_func = true;
|
||||||
|
if (str_mode.startsWith("=off")) {
|
||||||
|
mode = OFF;
|
||||||
|
}
|
||||||
|
if (str_mode.startsWith("=all")) {
|
||||||
|
mode = ALL;
|
||||||
|
}
|
||||||
if (str_mode.startsWith("=wipe")) {
|
if (str_mode.startsWith("=wipe")) {
|
||||||
mode = WIPE;
|
mode = WIPE;
|
||||||
}
|
}
|
||||||
|
@ -194,6 +214,7 @@ void webSocketEvent(uint8_t num, WStype_t type, uint8_t * payload, size_t lenght
|
||||||
}
|
}
|
||||||
|
|
||||||
DBG_OUTPUT_PORT.printf("Activated mode [%u]!\n", mode);
|
DBG_OUTPUT_PORT.printf("Activated mode [%u]!\n", mode);
|
||||||
|
webSocket.sendTXT(num, "OK");
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue