This commit is contained in:
parent
d96504d3eb
commit
f6681d54de
3 changed files with 36 additions and 12 deletions
|
@ -26,13 +26,10 @@ struct apa10xx_pixel_t {
|
|||
|
||||
static ws2812_pixel_t next_colour(int i) {
|
||||
ws2812_pixel_t colour = {{0, 0, 0, 0}};
|
||||
if(i == 8) {
|
||||
colour.white = 32;
|
||||
} else {
|
||||
colour.red = i & 1 ? 32 : 0;
|
||||
colour.green = i & 2 ? 32 : 0;
|
||||
colour.blue = i & 4 ? 32 : 0;
|
||||
}
|
||||
colour.red = 0;
|
||||
colour.green = 0;
|
||||
colour.blue = 0;
|
||||
colour.white = 8;
|
||||
|
||||
return colour;
|
||||
}
|
||||
|
@ -40,9 +37,9 @@ static ws2812_pixel_t next_colour(int i) {
|
|||
static apa10xx_pixel_t next_color(int i) {
|
||||
apa10xx_pixel_t colour;
|
||||
colour.global.mod = 8;
|
||||
colour.r = i & 1 ? 32 : 0;
|
||||
colour.g = i & 2 ? 32 : 0;
|
||||
colour.b = i & 4 ? 32 : 0;
|
||||
colour.r = 16;
|
||||
colour.g = 16;
|
||||
colour.b = 16;
|
||||
|
||||
return colour;
|
||||
}
|
||||
|
@ -229,16 +226,20 @@ extern "C" void signal_led(bool state) {
|
|||
fiatlux::signal::write_data(state);
|
||||
}
|
||||
|
||||
extern "C" void white_led(bool state) {
|
||||
gpio_write(signal_led_pin, !state);
|
||||
}
|
||||
|
||||
|
||||
/* This task uses the high level GPIO API (esp_gpio.h) to blink an LED.
|
||||
*
|
||||
*/
|
||||
extern "C" [[noreturn]] void lux_task(void *pvParameters) {
|
||||
|
||||
int32_t lux_ws2812_number = 8;
|
||||
int32_t lux_ws2812_number = 40;
|
||||
auto ret = sysparam_get_int32("lux_ws2812_number", &lux_ws2812_number);
|
||||
if(ret != SYSPARAM_OK)
|
||||
lux_ws2812_number = 8;
|
||||
lux_ws2812_number = 40;
|
||||
|
||||
int32_t lux_apa10xx_number = 40;
|
||||
ret = sysparam_get_int32("lux_apa10xx_number", &lux_apa10xx_number);
|
||||
|
|
|
@ -291,6 +291,18 @@ void websocket_cb(struct tcp_pcb *pcb, char *data, u16_t data_len,
|
|||
ret = OK;
|
||||
val = 0;
|
||||
break;
|
||||
case 'd': // Disable LED
|
||||
signal_led(false);
|
||||
cmd = 'G';
|
||||
ret = OK;
|
||||
val = 1;
|
||||
break;
|
||||
case 'e': // Enable LED
|
||||
signal_led(true);
|
||||
cmd = 'G';
|
||||
ret = OK;
|
||||
val = 0;
|
||||
break;
|
||||
case 'F':
|
||||
togl = !togl;
|
||||
signal_led(togl);
|
||||
|
|
|
@ -301,6 +301,10 @@
|
|||
<input type="checkbox" name="onoffswitch" id="led-switch" onclick="gpio()">
|
||||
<span class="toggle button">toggle signal led</span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" name="whiteswitch" id="white-switch" onclick="leds()">
|
||||
<span class="toggle button">toggle white leds</span>
|
||||
</label>
|
||||
</footer>
|
||||
</article>
|
||||
</div>
|
||||
|
@ -446,6 +450,13 @@
|
|||
wsWrite('D');
|
||||
}
|
||||
|
||||
function leds() {
|
||||
if (document.getElementById('white-switch').checked)
|
||||
wsWrite('e');
|
||||
else
|
||||
wsWrite('d');
|
||||
}
|
||||
|
||||
window.onload = function () {
|
||||
wsOpen();
|
||||
startPolling();
|
||||
|
|
Loading…
Reference in a new issue