diff options
author | Johannes Kroll <jkroll@lavabit.com> | 2012-03-06 20:46:41 +0100 |
---|---|---|
committer | Johannes Kroll <jkroll@lavabit.com> | 2012-03-06 20:46:41 +0100 |
commit | 7fe5913b904880137f80ba4a4260039ba610776b (patch) | |
tree | ccdb86f0f93d09400e9216ec5c48b45961a9901e /command.c | |
parent | f8bf5cf4bb61ef4b8c01c68dfc3fe826d9e91360 (diff) |
begin coding shiftbrite support
Diffstat (limited to 'command.c')
-rw-r--r-- | command.c | 16 |
1 files changed, 13 insertions, 3 deletions
@@ -23,6 +23,7 @@ #include "pwm.h" #include "serial.h" #include "util.h" +#include "shiftbrite.h" static void command_error(void) { @@ -49,9 +50,18 @@ static void handle_immediate(char *buffer, uint16_t len) command_error(); return; } - - pwm_set_rgb(new_red, new_green, new_blue); - command_success(); + + uint8_t sb_no; + if ((len > sizeof("irrggbb\r") - 1) + && parse_hex_number(&buffer[7], &sb_no)==0 + && sb_no) { + sb_setcolor(sb_no-1, new_red, new_green, new_blue); + command_success(); + } + else { + pwm_set_rgb(new_red, new_green, new_blue); + command_success(); + } } uint16_t serial_rx_cb(char *buffer, uint16_t len) |