Skip to content

Instantly share code, notes, and snippets.

@dasl-
Created February 28, 2019 05:11
Show Gist options
  • Save dasl-/067b21b267389c021419378d1831ba0a to your computer and use it in GitHub Desktop.
Save dasl-/067b21b267389c021419378d1831ba0a to your computer and use it in GitHub Desktop.
void process_data (char * data) {
Serial.println("data");
Serial.println(data);
// old code for x,y:rrr,ggg,bbb
// char *end_str;
// char *token = strtok_r(data, "&", &end_str);
// while (token != NULL) {
// char *end_token;
// char *token2 = strtok_r(token, ",", &end_token);
// byte commands[5];
// byte command_i = 0;
// while (token2 != NULL) {
// commands[command_i] = atoi(token2);
// command_i++;
// token2 = strtok_r(NULL, ",", &end_token);
// }
// setPixel(commands[0], commands[1], commands[2], commands[3], commands[4]);
// token = strtok_r(NULL, "&", &end_str);
// }
// FastLED.show();
// format: x:bbb&bbb&bbb&...
char *state;
// row:num&num&num
char *row = strtok_r(data, ":", &state);
char *brightness;
while (row != NULL) {
brightness = strtok_r(NULL, "&", &state);
byte brightnesses[COLS];
byte brightness_i = 0;
while (brightness != NULL) {
brightnesses[brightness_i] = atoi(brightness);
brightnesses++;
brightness = strtok_r(NULL, "&", &state);
}
setPixels(atoi(row), brightnesses);
row = strtok_r(NULL, ":", &state);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment