From c5dab86d76acb3e0dc7dd41a60f21cfb56fd7c93 Mon Sep 17 00:00:00 2001 From: Antonio Ospite Date: Wed, 16 Apr 2014 12:47:26 +0200 Subject: [PATCH] Initial import --- .gitignore | 1 + BareButton.h | 18 ++ JMPRope_player.ino | 60 ++++ LICENSE | 21 ++ Makefile | 13 + README | 4 + animations/Adafruit.h | 300 ++++++++++++++++++ animations/Debian.h | 470 ++++++++++++++++++++++++++++ animations/Firefox.h | 629 +++++++++++++++++++++++++++++++++++++ animations/JMPrope.h | 364 +++++++++++++++++++++ animations/Openhardware.h | 256 +++++++++++++++ animations/Opensource.h | 379 ++++++++++++++++++++++ animations/S.S.C.Napoli.h | 763 +++++++++++++++++++++++++++++++++++++++++++++ animations/ao2.h | 484 ++++++++++++++++++++++++++++ animations/ao2it.h | 321 +++++++++++++++++++ contrib/gphoto2_capture.sh | 54 ++++ 16 files changed, 4137 insertions(+) create mode 100644 .gitignore create mode 100644 BareButton.h create mode 100644 JMPRope_player.ino create mode 100644 LICENSE create mode 100644 Makefile create mode 100644 README create mode 100644 animations/Adafruit.h create mode 100644 animations/Debian.h create mode 100644 animations/Firefox.h create mode 100644 animations/JMPrope.h create mode 100644 animations/Openhardware.h create mode 100644 animations/Opensource.h create mode 100644 animations/S.S.C.Napoli.h create mode 100644 animations/ao2.h create mode 100644 animations/ao2it.h create mode 100755 contrib/gphoto2_capture.sh diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..dd07bff --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +build-* diff --git a/BareButton.h b/BareButton.h new file mode 100644 index 0000000..2784792 --- /dev/null +++ b/BareButton.h @@ -0,0 +1,18 @@ +#ifndef BAREBUTTON_H +#define BAREBUTTON_H + +class BareButton { +private: + uint8_t _pin; +public: + BareButton(uint8_t pin) { + _pin = pin; + pinMode(_pin, INPUT_PULLUP); + } + + boolean isPressed() { + return !digitalRead(_pin); // pin low -> pressed + } +}; + +#endif // BAREBUTTON_H diff --git a/JMPRope_player.ino b/JMPRope_player.ino new file mode 100644 index 0000000..7c48e9b --- /dev/null +++ b/JMPRope_player.ino @@ -0,0 +1,60 @@ +#include +#include + +#include "BareButton.h" + +//#include "animations/Adafruit.h" +//#include "animations/Debian.h" +//#include "animations/Firefox.h" +#include "animations/JMPrope.h" +//#include "animations/Openhardware.h" +//#include "animations/Opensource.h" +//#include "animations/S.S.C.Napoli.h" +//#include "animations/ao2.h" +//#include "animations/ao2it.h" + +#define DATA_PIN 0 +#define INPUT_PIN 2 + +/* This is the same exposure time to set up on the camera */ +#define EXPOSURE_TIME_MSEC 500UL + +static struct CRGB leds[NUM_LEDS]; + +static BareButton button = BareButton(INPUT_PIN); +static unsigned long frame_delay_usecs = EXPOSURE_TIME_MSEC * 1000UL / NUM_FRAMES; + +void setup() +{ + LEDS.addLeds(leds, NUM_LEDS); +} + +void loop() +{ + unsigned long remaining; + unsigned long elapsed = 0; + + if (button.isPressed()) { + unsigned long t0 = micros(); + animation.draw(leds); + elapsed = micros() - t0; + } else { + for (int i = 0; i < NUM_LEDS; i++) + leds[i] = CRGB(0, 0, 0); + LEDS.show(); + animation.reset(); + } + remaining = frame_delay_usecs - elapsed; +#if 0 + /* use leds to show how many _milliseconds_ we will have to wait to + * achieve a constant framerate */ + for (unsigned int i = 0; i < NUM_LEDS; i++) + leds[i] = CRGB(0, 0, 0); + for (unsigned int i = 0; i < remaining / 1000; i++) + leds[i] = CRGB(255, 0, 0); + LEDS.show(); + delay(100); +#else + delayMicroseconds(remaining); +#endif +} diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..fb75abf --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2013 Blinkinlabs, LLC +Copyright (C) 2014 Antonio Ospite + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..4ab100a --- /dev/null +++ b/Makefile @@ -0,0 +1,13 @@ +ARDUINO_VAR_PATH := $(HOME)/sketchbook/hardware/attiny/variants +BOARDS_TXT := $(HOME)/sketchbook/hardware/attiny/boards.txt +BOARD_TAG := trinket3 +ISP_PROG := usbtiny +AVRDUDE_OPTS = -q + +ARDUINO_LIBS = FastLED FastLED_animation + +-include $(HOME)/.arduino/Arduino.mk.inc +include /usr/share/arduino/Arduino.mk + +upload: $(TARGET_HEX) verify_size + $(MAKE) ispload diff --git a/README b/README new file mode 100644 index 0000000..bc62c50 --- /dev/null +++ b/README @@ -0,0 +1,4 @@ +Animate a LED strip for Light Painting with a JMPrope. + +Inpired by Blinknlabs PatternPlayer: +https://github.com/Blinkinlabs/BlinkyTape_Arduino/tree/master/examples/PatternPlayer diff --git a/animations/Adafruit.h b/animations/Adafruit.h new file mode 100644 index 0000000..bae7dcc --- /dev/null +++ b/animations/Adafruit.h @@ -0,0 +1,300 @@ +const PROGMEM prog_uint8_t animationData[] = { +// Length of the color table - 1, in bytes. length: 1 byte + 1, +// Color table section. Each entry is 3 bytes. length: 6 bytes + 238, 76, 132, + 0, 0, 0, +// Pixel runs section. Each pixel run is 2 bytes. length: -1 bytes + 17, 0, + 13, 1, + 15, 0, + 15, 1, + 13, 0, + 17, 1, + 13, 0, + 17, 1, + 15, 0, + 15, 1, + 17, 0, + 13, 1, + 19, 0, + 11, 1, + 20, 0, + 10, 1, + 2, 0, + 2, 1, + 17, 0, + 9, 1, + 1, 0, + 5, 1, + 17, 0, + 7, 1, + 1, 0, + 7, 1, + 17, 0, + 5, 1, + 1, 0, + 8, 1, + 19, 0, + 2, 1, + 1, 0, + 9, 1, + 20, 0, + 1, 0, + 9, 1, + 20, 0, + 1, 0, + 8, 1, + 19, 0, + 2, 1, + 1, 0, + 7, 1, + 17, 0, + 5, 1, + 1, 0, + 5, 1, + 17, 0, + 7, 1, + 2, 0, + 1, 1, + 18, 0, + 9, 1, + 20, 0, + 10, 1, + 19, 0, + 11, 1, + 17, 0, + 13, 1, + 15, 0, + 15, 1, + 13, 0, + 17, 1, + 13, 0, + 17, 1, + 15, 0, + 15, 1, + 17, 0, + 13, 1, + 18, 0, + 12, 1, + 20, 0, + 10, 1, + 2, 0, + 2, 1, + 17, 0, + 9, 1, + 1, 0, + 5, 1, + 17, 0, + 7, 1, + 1, 0, + 6, 1, + 18, 0, + 5, 1, + 1, 0, + 8, 1, + 19, 0, + 2, 1, + 1, 0, + 9, 1, + 20, 0, + 1, 0, + 9, 1, + 20, 0, + 1, 0, + 8, 1, + 19, 0, + 2, 1, + 1, 0, + 7, 1, + 17, 0, + 5, 1, + 1, 0, + 5, 1, + 17, 0, + 7, 1, + 2, 0, + 2, 1, + 17, 0, + 9, 1, + 20, 0, + 10, 1, + 19, 0, + 11, 1, + 17, 0, + 13, 1, + 16, 0, + 14, 1, + 13, 0, + 17, 1, + 12, 0, + 18, 1, + 15, 0, + 15, 1, + 17, 0, + 13, 1, + 18, 0, + 12, 1, + 20, 0, + 10, 1, + 21, 0, + 9, 1, + 1, 0, + 5, 1, + 16, 0, + 8, 1, + 1, 0, + 6, 1, + 17, 0, + 6, 1, + 1, 0, + 8, 1, + 18, 0, + 3, 1, + 1, 0, + 9, 1, + 19, 0, + 1, 1, + 1, 0, + 9, 1, + 20, 0, + 1, 0, + 8, 1, + 20, 0, + 1, 1, + 1, 0, + 7, 1, + 19, 0, + 3, 1, + 1, 0, + 5, 1, + 18, 0, + 6, 1, + 2, 0, + 3, 1, + 17, 0, + 8, 1, + 20, 0, + 10, 1, + 19, 0, + 11, 1, + 17, 0, + 13, 1, + 16, 0, + 14, 1, + 14, 0, + 16, 1, + 12, 0, + 18, 1, + 15, 0, + 15, 1, + 17, 0, + 13, 1, + 18, 0, + 12, 1, + 19, 0, + 11, 1, + 21, 0, + 9, 1, + 1, 0, + 5, 1, + 16, 0, + 8, 1, + 1, 0, + 6, 1, + 17, 0, + 6, 1, + 1, 0, + 7, 1, + 19, 0, + 3, 1, + 1, 0, + 8, 1, + 20, 0, + 1, 1, + 1, 0, + 9, 1, + 20, 0, + 1, 0, + 8, 1, + 20, 0, + 1, 1, + 1, 0, + 7, 1, + 19, 0, + 3, 1, + 1, 0, + 6, 1, + 17, 0, + 6, 1, + 2, 0, + 3, 1, + 17, 0, + 8, 1, + 20, 0, + 10, 1, + 19, 0, + 11, 1, + 18, 0, + 12, 1, + 16, 0, + 14, 1, + 14, 0, + 16, 1, + 12, 0, + 18, 1, + 14, 0, + 16, 1, + 16, 0, + 14, 1, + 18, 0, + 12, 1, + 19, 0, + 11, 1, + 21, 0, + 9, 1, + 2, 0, + 3, 1, + 17, 0, + 8, 1, + 1, 0, + 6, 1, + 18, 0, + 5, 1, + 1, 0, + 7, 1, + 20, 0, + 2, 1, + 1, 0, + 8, 1, + 21, 0, + 1, 0, + 9, 1, + 20, 0, + 1, 0, + 8, 1, + 20, 0, + 1, 1, + 1, 0, + 7, 1, + 18, 0, + 4, 1, + 1, 0, + 6, 1, + 17, 0, + 6, 1, + 2, 0, + 3, 1, + 17, 0, + 8, 1, + 20, 0, + 10, 1, + 19, 0, + 11, 1, + 18, 0, + 12, 1, +}; + +#define NUM_FRAMES 101 +#define NUM_LEDS 30 +Animation animation(NUM_FRAMES, animationData, NUM_LEDS); diff --git a/animations/Debian.h b/animations/Debian.h new file mode 100644 index 0000000..8640841 --- /dev/null +++ b/animations/Debian.h @@ -0,0 +1,470 @@ +const PROGMEM prog_uint8_t animationData[] = { +// Length of the color table - 1, in bytes. length: 1 byte + 1, +// Color table section. Each entry is 3 bytes. length: 6 bytes + 213, 7, 78, + 0, 1, 0, +// Pixel runs section. Each pixel run is 2 bytes. length: -1 bytes + 3, 1, + 2, 0, + 1, 1, + 1, 0, + 23, 1, + 3, 1, + 2, 0, + 1, 1, + 1, 0, + 21, 1, + 1, 0, + 1, 1, + 3, 1, + 2, 0, + 22, 1, + 2, 0, + 1, 1, + 2, 1, + 2, 0, + 1, 1, + 1, 0, + 20, 1, + 2, 0, + 2, 1, + 2, 1, + 2, 0, + 1, 1, + 1, 0, + 20, 1, + 2, 0, + 2, 1, + 2, 1, + 2, 0, + 21, 1, + 3, 0, + 2, 1, + 2, 1, + 2, 0, + 1, 1, + 1, 0, + 18, 1, + 3, 0, + 3, 1, + 2, 1, + 2, 0, + 20, 1, + 3, 0, + 3, 1, + 2, 1, + 2, 0, + 19, 1, + 3, 0, + 4, 1, + 2, 1, + 2, 0, + 19, 1, + 3, 0, + 4, 1, + 2, 1, + 1, 0, + 19, 1, + 3, 0, + 5, 1, + 2, 1, + 1, 0, + 19, 1, + 3, 0, + 5, 1, + 1, 1, + 2, 0, + 18, 1, + 4, 0, + 5, 1, + 1, 1, + 2, 0, + 2, 1, + 1, 0, + 14, 1, + 4, 0, + 6, 1, + 1, 1, + 2, 0, + 2, 1, + 1, 0, + 14, 1, + 4, 0, + 6, 1, + 1, 1, + 2, 0, + 2, 1, + 1, 0, + 14, 1, + 4, 0, + 6, 1, + 1, 1, + 2, 0, + 2, 1, + 1, 0, + 13, 1, + 5, 0, + 6, 1, + 1, 1, + 2, 0, + 2, 1, + 1, 0, + 13, 1, + 5, 0, + 6, 1, + 1, 1, + 2, 0, + 17, 1, + 3, 0, + 7, 1, + 1, 1, + 2, 0, + 17, 1, + 3, 0, + 7, 1, + 1, 1, + 2, 0, + 17, 1, + 3, 0, + 7, 1, + 1, 1, + 2, 0, + 17, 1, + 3, 0, + 7, 1, + 1, 1, + 2, 0, + 16, 1, + 4, 0, + 7, 1, + 1, 1, + 3, 0, + 16, 1, + 3, 0, + 7, 1, + 2, 1, + 2, 0, + 16, 1, + 3, 0, + 7, 1, + 2, 1, + 2, 0, + 16, 1, + 3, 0, + 7, 1, + 2, 1, + 2, 0, + 16, 1, + 3, 0, + 7, 1, + 2, 1, + 2, 0, + 16, 1, + 3, 0, + 7, 1, + 2, 1, + 2, 0, + 16, 1, + 3, 0, + 7, 1, + 2, 1, + 2, 0, + 16, 1, + 4, 0, + 6, 1, + 2, 1, + 2, 0, + 16, 1, + 4, 0, + 6, 1, + 2, 1, + 3, 0, + 16, 1, + 3, 0, + 6, 1, + 2, 1, + 3, 0, + 15, 1, + 4, 0, + 6, 1, + 3, 1, + 2, 0, + 15, 1, + 5, 0, + 5, 1, + 3, 1, + 2, 0, + 16, 1, + 4, 0, + 5, 1, + 3, 1, + 3, 0, + 15, 1, + 4, 0, + 5, 1, + 4, 1, + 2, 0, + 15, 1, + 4, 0, + 5, 1, + 4, 1, + 2, 0, + 15, 1, + 4, 0, + 5, 1, + 4, 1, + 2, 0, + 15, 1, + 5, 0, + 4, 1, + 5, 1, + 1, 0, + 15, 1, + 5, 0, + 4, 1, + 5, 1, + 2, 0, + 14, 1, + 6, 0, + 3, 1, + 5, 1, + 2, 0, + 14, 1, + 6, 0, + 3, 1, + 6, 1, + 2, 0, + 13, 1, + 6, 0, + 3, 1, + 6, 1, + 2, 0, + 14, 1, + 5, 0, + 3, 1, + 7, 1, + 1, 0, + 14, 1, + 6, 0, + 2, 1, + 7, 1, + 2, 0, + 13, 1, + 6, 0, + 2, 1, + 8, 1, + 1, 0, + 13, 1, + 6, 0, + 2, 1, + 8, 1, + 2, 0, + 12, 1, + 7, 0, + 1, 1, + 9, 1, + 1, 0, + 13, 1, + 6, 0, + 1, 1, + 9, 1, + 2, 0, + 12, 1, + 6, 0, + 1, 1, + 10, 1, + 1, 0, + 12, 1, + 5, 0, + 2, 1, + 10, 1, + 2, 0, + 11, 1, + 5, 0, + 2, 1, + 10, 1, + 2, 0, + 11, 1, + 5, 0, + 2, 1, + 11, 1, + 1, 0, + 12, 1, + 5, 0, + 1, 1, + 11, 1, + 2, 0, + 11, 1, + 5, 0, + 1, 1, + 12, 1, + 1, 0, + 11, 1, + 4, 0, + 2, 1, + 12, 1, + 1, 0, + 11, 1, + 4, 0, + 2, 1, + 12, 1, + 1, 0, + 11, 1, + 5, 0, + 1, 1, + 12, 1, + 1, 0, + 11, 1, + 5, 0, + 1, 1, + 23, 1, + 6, 0, + 1, 1, + 23, 1, + 6, 0, + 1, 1, + 23, 1, + 6, 0, + 1, 1, + 22, 1, + 7, 0, + 1, 1, + 22, 1, + 7, 0, + 1, 1, + 22, 1, + 6, 0, + 2, 1, + 21, 1, + 7, 0, + 2, 1, + 21, 1, + 3, 0, + 2, 1, + 1, 0, + 3, 1, + 20, 1, + 5, 0, + 5, 1, + 20, 1, + 3, 0, + 7, 1, + 11, 1, + 1, 0, + 7, 1, + 4, 0, + 7, 1, + 19, 1, + 4, 0, + 7, 1, + 18, 1, + 5, 0, + 7, 1, + 18, 1, + 4, 0, + 8, 1, + 18, 1, + 3, 0, + 9, 1, + 17, 1, + 3, 0, + 10, 1, + 17, 1, + 2, 0, + 11, 1, + 15, 1, + 4, 0, + 11, 1, + 15, 1, + 3, 0, + 12, 1, + 15, 1, + 2, 0, + 13, 1, + 14, 1, + 3, 0, + 13, 1, + 4, 1, + 1, 0, + 8, 1, + 3, 0, + 14, 1, + 3, 1, + 2, 0, + 8, 1, + 2, 0, + 15, 1, + 12, 1, + 3, 0, + 15, 1, + 11, 1, + 3, 0, + 16, 1, + 11, 1, + 2, 0, + 17, 1, + 10, 1, + 3, 0, + 17, 1, + 9, 1, + 3, 0, + 18, 1, + 9, 1, + 2, 0, + 19, 1, + 8, 1, + 3, 0, + 19, 1, + 8, 1, + 2, 0, + 20, 1, + 7, 1, + 3, 0, + 20, 1, + 7, 1, + 2, 0, + 21, 1, + 6, 1, + 3, 0, + 1, 1, + 1, 0, + 19, 1, + 6, 1, + 2, 0, + 1, 1, + 1, 0, + 20, 1, + 5, 1, + 3, 0, + 1, 1, + 1, 0, + 20, 1, + 5, 1, + 2, 0, + 23, 1, + 5, 1, + 2, 0, + 1, 1, + 1, 0, + 21, 1, + 4, 1, + 3, 0, + 23, 1, + 4, 1, + 2, 0, + 1, 1, + 1, 0, + 22, 1, + 4, 1, + 3, 0, + 23, 1, + 3, 1, + 4, 0, + 22, 1, + 1, 0, +}; + +#define NUM_FRAMES 101 +#define NUM_LEDS 30 +Animation animation(NUM_FRAMES, animationData, NUM_LEDS); diff --git a/animations/Firefox.h b/animations/Firefox.h new file mode 100644 index 0000000..1e5a02b --- /dev/null +++ b/animations/Firefox.h @@ -0,0 +1,629 @@ +const PROGMEM prog_uint8_t animationData[] = { +// Length of the color table - 1, in bytes. length: 1 byte + 5, +// Color table section. Each entry is 3 bytes. length: 18 bytes + 0, 255, 255, + 22, 0, 255, + 255, 0, 0, + 0, 0, 0, + 255, 255, 1, + 255, 255, 255, +// Pixel runs section. Each pixel run is 2 bytes. length: -1 bytes + 2, 1, + 1, 3, + 3, 4, + 3, 2, + 5, 3, + 14, 2, + 2, 3, + 2, 1, + 1, 3, + 3, 4, + 3, 2, + 4, 3, + 15, 2, + 2, 3, + 2, 1, + 1, 3, + 3, 4, + 3, 2, + 3, 3, + 15, 2, + 3, 3, + 2, 1, + 1, 3, + 3, 4, + 3, 2, + 3, 3, + 16, 2, + 2, 3, + 2, 1, + 1, 3, + 2, 4, + 5, 2, + 2, 3, + 16, 2, + 2, 3, + 2, 1, + 2, 3, + 1, 4, + 5, 2, + 2, 3, + 16, 2, + 2, 3, + 2, 1, + 2, 3, + 1, 4, + 5, 2, + 2, 3, + 15, 2, + 3, 3, + 3, 1, + 1, 3, + 1, 4, + 6, 2, + 1, 3, + 15, 2, + 3, 3, + 3, 1, + 1, 3, + 1, 4, + 22, 2, + 3, 3, + 3, 1, + 2, 3, + 22, 2, + 3, 3, + 3, 1, + 2, 3, + 22, 2, + 3, 3, + 3, 1, + 2, 3, + 22, 2, + 3, 3, + 3, 1, + 3, 3, + 21, 2, + 3, 3, + 4, 1, + 2, 3, + 21, 2, + 3, 3, + 4, 1, + 2, 3, + 21, 2, + 3, 3, + 4, 1, + 2, 3, + 21, 2, + 3, 3, + 5, 1, + 1, 3, + 21, 2, + 3, 3, + 5, 1, + 2, 3, + 20, 2, + 3, 3, + 6, 1, + 1, 3, + 20, 2, + 3, 3, + 6, 1, + 1, 3, + 19, 2, + 4, 3, + 7, 1, + 1, 3, + 18, 2, + 4, 3, + 8, 1, + 18, 2, + 4, 3, + 8, 1, + 18, 2, + 4, 3, + 8, 1, + 19, 2, + 3, 3, + 8, 1, + 18, 2, + 4, 3, + 8, 1, + 18, 2, + 4, 3, + 7, 1, + 1, 3, + 18, 2, + 4, 3, + 7, 1, + 1, 3, + 19, 2, + 3, 3, + 4, 1, + 1, 3, + 2, 1, + 1, 2, + 1, 4, + 17, 2, + 4, 3, + 4, 1, + 6, 4, + 16, 2, + 4, 3, + 4, 1, + 6, 4, + 16, 2, + 4, 3, + 4, 1, + 7, 4, + 15, 2, + 4, 3, + 5, 1, + 7, 4, + 14, 2, + 4, 3, + 5, 1, + 8, 4, + 13, 2, + 4, 3, + 5, 1, + 9, 4, + 13, 2, + 3, 3, + 6, 1, + 9, 4, + 13, 2, + 2, 3, + 6, 1, + 1, 2, + 10, 4, + 12, 2, + 1, 3, + 6, 1, + 2, 2, + 9, 4, + 6, 2, + 2, 0, + 2, 3, + 1, 2, + 1, 4, + 1, 3, + 6, 1, + 1, 2, + 1, 4, + 2, 2, + 9, 4, + 2, 2, + 1, 1, + 3, 0, + 5, 3, + 5, 1, + 1, 4, + 1, 2, + 1, 4, + 3, 2, + 9, 4, + 2, 1, + 3, 0, + 5, 3, + 5, 1, + 1, 4, + 2, 5, + 4, 2, + 7, 4, + 1, 0, + 1, 1, + 4, 0, + 5, 3, + 5, 1, + 1, 4, + 2, 5, + 5, 2, + 6, 4, + 7, 0, + 4, 3, + 5, 1, + 1, 4, + 1, 5, + 6, 2, + 1, 0, + 5, 4, + 6, 0, + 1, 5, + 4, 3, + 5, 1, + 2, 5, + 4, 2, + 4, 0, + 4, 4, + 6, 0, + 1, 5, + 4, 3, + 5, 1, + 2, 5, + 3, 2, + 1, 4, + 5, 0, + 3, 4, + 6, 0, + 1, 5, + 4, 3, + 6, 1, + 1, 5, + 3, 2, + 7, 0, + 2, 4, + 6, 0, + 1, 5, + 4, 3, + 6, 1, + 1, 5, + 2, 2, + 1, 4, + 8, 0, + 1, 4, + 6, 0, + 1, 5, + 4, 3, + 6, 1, + 1, 5, + 2, 2, + 1, 4, + 15, 0, + 1, 5, + 4, 3, + 6, 1, + 1, 5, + 2, 2, + 1, 4, + 15, 0, + 1, 5, + 4, 3, + 7, 1, + 1, 2, + 2, 3, + 15, 0, + 1, 5, + 4, 3, + 7, 1, + 3, 3, + 16, 0, + 4, 3, + 6, 1, + 20, 0, + 4, 3, + 6, 1, + 20, 0, + 4, 3, + 6, 1, + 20, 0, + 4, 3, + 6, 1, + 20, 0, + 4, 3, + 6, 1, + 20, 0, + 4, 3, + 6, 1, + 20, 0, + 4, 3, + 6, 1, + 20, 0, + 4, 3, + 7, 1, + 17, 0, + 1, 5, + 1, 0, + 4, 3, + 7, 1, + 17, 0, + 1, 5, + 1, 0, + 4, 3, + 8, 1, + 16, 0, + 1, 5, + 1, 0, + 4, 3, + 9, 1, + 1, 0, + 1, 1, + 12, 0, + 1, 1, + 2, 5, + 1, 0, + 3, 3, + 12, 1, + 6, 0, + 1, 1, + 4, 0, + 1, 1, + 2, 5, + 1, 0, + 3, 3, + 12, 1, + 6, 0, + 3, 1, + 1, 5, + 1, 1, + 3, 5, + 1, 0, + 1, 4, + 2, 3, + 21, 1, + 1, 5, + 1, 1, + 2, 4, + 1, 5, + 1, 0, + 1, 4, + 2, 3, + 19, 1, + 2, 0, + 2, 5, + 2, 4, + 1, 5, + 1, 0, + 1, 4, + 2, 3, + 20, 1, + 3, 5, + 1, 4, + 2, 5, + 1, 0, + 1, 2, + 2, 3, + 20, 1, + 3, 5, + 1, 4, + 3, 5, + 1, 2, + 1, 4, + 1, 3, + 20, 1, + 3, 5, + 1, 4, + 3, 5, + 1, 4, + 2, 3, + 20, 1, + 3, 5, + 1, 4, + 1, 5, + 3, 4, + 2, 3, + 20, 1, + 2, 5, + 2, 4, + 1, 5, + 3, 4, + 2, 3, + 17, 1, + 1, 5, + 1, 3, + 5, 4, + 1, 5, + 3, 4, + 2, 3, + 14, 1, + 1, 3, + 2, 1, + 1, 5, + 1, 3, + 1, 4, + 1, 5, + 3, 4, + 1, 5, + 2, 4, + 1, 3, + 1, 2, + 1, 3, + 12, 1, + 3, 3, + 1, 1, + 3, 5, + 1, 4, + 1, 5, + 2, 4, + 2, 5, + 2, 4, + 1, 3, + 1, 2, + 1, 3, + 10, 1, + 6, 3, + 4, 5, + 3, 4, + 2, 5, + 2, 4, + 2, 2, + 1, 3, + 8, 1, + 8, 3, + 1, 4, + 2, 5, + 3, 4, + 3, 5, + 1, 4, + 1, 3, + 1, 2, + 1, 4, + 1, 3, + 6, 1, + 10, 3, + 6, 4, + 1, 5, + 3, 4, + 1, 3, + 1, 2, + 1, 4, + 1, 3, + 4, 1, + 1, 3, + 1, 1, + 10, 3, + 12, 4, + 2, 3, + 4, 1, + 1, 3, + 1, 1, + 11, 3, + 2, 4, + 1, 5, + 8, 4, + 2, 3, + 4, 1, + 1, 3, + 1, 1, + 11, 3, + 11, 4, + 2, 3, + 4, 1, + 1, 3, + 1, 1, + 11, 3, + 10, 4, + 1, 2, + 2, 3, + 7, 1, + 9, 3, + 10, 4, + 2, 2, + 2, 3, + 6, 1, + 10, 3, + 2, 4, + 1, 2, + 7, 4, + 1, 2, + 1, 3, + 1, 2, + 1, 3, + 6, 1, + 10, 3, + 2, 4, + 1, 2, + 7, 4, + 1, 2, + 1, 3, + 1, 2, + 1, 3, + 5, 1, + 11, 3, + 7, 4, + 4, 2, + 1, 3, + 1, 2, + 1, 3, + 5, 1, + 11, 3, + 7, 4, + 3, 2, + 1, 3, + 2, 2, + 1, 3, + 4, 1, + 13, 3, + 4, 4, + 8, 2, + 1, 3, + 4, 1, + 1, 3, + 3, 4, + 9, 3, + 3, 4, + 9, 2, + 1, 3, + 4, 1, + 4, 4, + 9, 3, + 3, 4, + 8, 2, + 2, 3, + 3, 1, + 5, 4, + 7, 3, + 3, 2, + 3, 4, + 7, 2, + 2, 3, + 3, 1, + 5, 4, + 7, 3, + 3, 2, + 2, 4, + 9, 2, + 1, 3, + 3, 1, + 4, 4, + 8, 3, + 3, 2, + 1, 4, + 8, 2, + 1, 3, + 1, 2, + 1, 3, + 3, 1, + 3, 4, + 1, 2, + 9, 3, + 11, 2, + 1, 3, + 1, 2, + 1, 3, + 2, 1, + 4, 4, + 1, 2, + 8, 3, + 14, 2, + 1, 3, + 2, 1, + 4, 4, + 1, 2, + 8, 3, + 14, 2, + 1, 3, + 2, 1, + 4, 4, + 1, 2, + 8, 3, + 13, 2, + 2, 3, + 2, 1, + 4, 4, + 1, 2, + 8, 3, + 13, 2, + 2, 3, + 2, 1, + 3, 4, + 3, 2, + 6, 3, + 14, 2, + 2, 3, + 2, 1, + 4, 4, + 2, 2, + 6, 3, + 14, 2, + 2, 3, + 2, 1, + 4, 4, + 2, 2, + 6, 3, + 14, 2, + 2, 3, + 2, 1, + 1, 3, + 3, 4, + 2, 2, + 6, 3, + 14, 2, + 2, 3, +}; + +#define NUM_FRAMES 101 +#define NUM_LEDS 30 +Animation animation(NUM_FRAMES, animationData, NUM_LEDS); diff --git a/animations/JMPrope.h b/animations/JMPrope.h new file mode 100644 index 0000000..3204da1 --- /dev/null +++ b/animations/JMPrope.h @@ -0,0 +1,364 @@ +const PROGMEM prog_uint8_t animationData[] = { +// Length of the color table - 1, in bytes. length: 1 byte + 8, +// Color table section. Each entry is 3 bytes. length: 27 bytes + 255, 255, 0, + 0, 255, 255, + 0, 255, 0, + 0, 0, 255, + 5, 252, 5, + 255, 0, 0, + 255, 0, 255, + 0, 0, 0, + 255, 255, 255, +// Pixel runs section. Each pixel run is 2 bytes. length: -1 bytes + 28, 7, + 2, 5, + 13, 7, + 5, 8, + 10, 7, + 2, 5, + 12, 7, + 7, 8, + 9, 7, + 2, 5, + 12, 7, + 2, 8, + 3, 7, + 2, 8, + 9, 7, + 2, 5, + 12, 7, + 2, 8, + 4, 7, + 2, 8, + 8, 7, + 2, 5, + 12, 7, + 2, 8, + 3, 7, + 2, 8, + 9, 7, + 2, 5, + 12, 7, + 7, 8, + 9, 7, + 2, 5, + 13, 7, + 5, 8, + 10, 7, + 2, 5, + 28, 7, + 2, 5, + 12, 7, + 3, 8, + 13, 7, + 2, 5, + 12, 7, + 2, 8, + 14, 7, + 2, 0, + 12, 7, + 2, 8, + 14, 7, + 2, 0, + 13, 7, + 7, 8, + 8, 7, + 2, 0, + 13, 7, + 7, 8, + 8, 7, + 2, 0, + 12, 7, + 2, 8, + 14, 7, + 2, 0, + 12, 7, + 1, 8, + 15, 7, + 2, 0, + 28, 7, + 2, 0, + 28, 7, + 2, 0, + 28, 7, + 2, 0, + 28, 7, + 2, 0, + 28, 7, + 2, 0, + 28, 7, + 2, 0, + 28, 7, + 2, 0, + 28, 7, + 2, 0, + 28, 7, + 2, 2, + 28, 7, + 2, 2, + 28, 7, + 2, 2, + 28, 7, + 2, 2, + 28, 7, + 2, 2, + 28, 7, + 2, 2, + 28, 7, + 2, 2, + 28, 7, + 2, 2, + 28, 7, + 2, 2, + 10, 7, + 3, 5, + 15, 7, + 2, 2, + 9, 7, + 2, 5, + 17, 7, + 2, 2, + 8, 7, + 2, 5, + 18, 7, + 2, 2, + 8, 7, + 2, 5, + 18, 7, + 2, 2, + 8, 7, + 3, 5, + 17, 7, + 2, 2, + 9, 7, + 11, 5, + 8, 7, + 2, 2, + 10, 7, + 10, 5, + 8, 7, + 2, 2, + 28, 7, + 2, 2, + 28, 7, + 2, 2, + 28, 7, + 2, 1, + 10, 7, + 2, 2, + 16, 7, + 2, 1, + 10, 7, + 5, 2, + 13, 7, + 2, 1, + 11, 7, + 7, 2, + 10, 7, + 2, 1, + 14, 7, + 6, 2, + 8, 7, + 2, 1, + 13, 7, + 6, 2, + 9, 7, + 2, 1, + 12, 7, + 5, 2, + 11, 7, + 2, 1, + 10, 7, + 1, 4, + 3, 2, + 14, 7, + 2, 1, + 9, 7, + 1, 4, + 3, 2, + 15, 7, + 2, 1, + 10, 7, + 1, 4, + 3, 2, + 14, 7, + 2, 1, + 12, 7, + 5, 2, + 11, 7, + 2, 1, + 13, 7, + 6, 2, + 9, 7, + 2, 1, + 14, 7, + 6, 2, + 8, 7, + 2, 1, + 11, 7, + 7, 2, + 10, 7, + 2, 1, + 10, 7, + 5, 2, + 13, 7, + 2, 1, + 10, 7, + 2, 2, + 16, 7, + 2, 3, + 28, 7, + 2, 3, + 28, 7, + 2, 3, + 28, 7, + 2, 3, + 28, 7, + 2, 3, + 8, 7, + 10, 3, + 10, 7, + 2, 3, + 8, 7, + 11, 3, + 9, 7, + 2, 3, + 12, 7, + 2, 3, + 3, 7, + 2, 3, + 9, 7, + 2, 3, + 12, 7, + 2, 3, + 3, 7, + 2, 3, + 9, 7, + 2, 3, + 12, 7, + 2, 3, + 3, 7, + 2, 3, + 9, 7, + 2, 3, + 12, 7, + 7, 3, + 9, 7, + 2, 3, + 13, 7, + 5, 3, + 10, 7, + 2, 3, + 28, 7, + 2, 3, + 28, 7, + 2, 3, + 28, 7, + 2, 3, + 28, 7, + 2, 3, + 28, 7, + 2, 3, + 28, 7, + 2, 3, + 28, 7, + 2, 6, + 28, 7, + 2, 6, + 28, 7, + 2, 6, + 28, 7, + 2, 6, + 28, 7, + 2, 6, + 28, 7, + 2, 6, + 28, 7, + 2, 6, + 28, 7, + 2, 6, + 28, 7, + 2, 6, + 28, 7, + 2, 6, + 13, 7, + 3, 8, + 2, 7, + 1, 8, + 9, 7, + 2, 6, + 12, 7, + 4, 8, + 2, 7, + 1, 8, + 9, 7, + 2, 6, + 12, 7, + 1, 8, + 2, 7, + 1, 8, + 2, 7, + 2, 8, + 8, 7, + 2, 6, + 12, 7, + 1, 8, + 2, 7, + 1, 8, + 2, 7, + 1, 8, + 9, 7, + 2, 6, + 12, 7, + 7, 8, + 9, 7, + 2, 5, + 13, 7, + 5, 8, + 10, 7, + 2, 5, + 28, 7, + 2, 5, + 28, 7, + 2, 5, + 13, 7, + 5, 8, + 10, 7, + 2, 5, + 13, 7, + 6, 8, + 9, 7, + 2, 5, + 13, 7, + 1, 8, + 3, 7, + 2, 8, + 9, 7, + 2, 5, + 13, 7, + 1, 8, + 4, 7, + 1, 8, + 9, 7, + 2, 5, + 13, 7, + 9, 8, + 6, 7, + 2, 5, + 12, 7, + 10, 8, + 6, 7, + 2, 5, + 12, 7, + 2, 8, + 14, 7, + 2, 5, + 28, 7, + 2, 5, +}; + +#define NUM_FRAMES 101 +#define NUM_LEDS 30 +Animation animation(NUM_FRAMES, animationData, NUM_LEDS); diff --git a/animations/Openhardware.h b/animations/Openhardware.h new file mode 100644 index 0000000..3555634 --- /dev/null +++ b/animations/Openhardware.h @@ -0,0 +1,256 @@ +const PROGMEM prog_uint8_t animationData[] = { +// Length of the color table - 1, in bytes. length: 1 byte + 1, +// Color table section. Each entry is 3 bytes. length: 6 bytes + 0, 0, 0, + 78, 218, 241, +// Pixel runs section. Each pixel run is 2 bytes. length: -1 bytes + 30, 0, + 30, 0, + 30, 0, + 30, 0, + 30, 0, + 30, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 17, 1, + 6, 0, + 7, 0, + 20, 1, + 3, 0, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 20, 1, + 3, 0, + 7, 0, + 17, 1, + 6, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 17, 1, + 6, 0, + 7, 0, + 20, 1, + 3, 0, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 20, 1, + 3, 0, + 7, 0, + 17, 1, + 6, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 17, 1, + 6, 0, + 7, 0, + 20, 1, + 3, 0, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 20, 1, + 3, 0, + 7, 0, + 17, 1, + 6, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 17, 1, + 6, 0, + 7, 0, + 20, 1, + 3, 0, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 20, 1, + 3, 0, + 7, 0, + 17, 1, + 6, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 17, 1, + 6, 0, + 7, 0, + 20, 1, + 3, 0, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 20, 1, + 3, 0, + 7, 0, + 17, 1, + 6, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 17, 1, + 6, 0, + 7, 0, + 20, 1, + 3, 0, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 20, 1, + 3, 0, + 7, 0, + 17, 1, + 6, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 15, 1, + 8, 0, + 7, 0, + 17, 1, + 6, 0, + 7, 0, + 20, 1, + 3, 0, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 23, 1, + 7, 0, + 20, 1, + 3, 0, + 7, 0, + 17, 1, + 6, 0, + 7, 0, + 15, 1, + 8, 0, + 30, 0, + 30, 0, + 30, 0, + 30, 0, + 30, 0, + 30, 0, +}; + +#define NUM_FRAMES 101 +#define NUM_LEDS 30 +Animation animation(NUM_FRAMES, animationData, NUM_LEDS); diff --git a/animations/Opensource.h b/animations/Opensource.h new file mode 100644 index 0000000..c410e8c --- /dev/null +++ b/animations/Opensource.h @@ -0,0 +1,379 @@ +const PROGMEM prog_uint8_t animationData[] = { +// Length of the color table - 1, in bytes. length: 1 byte + 2, +// Color table section. Each entry is 3 bytes. length: 9 bytes + 0, 0, 0, + 76, 255, 124, + 24, 127, 50, +// Pixel runs section. Each pixel run is 2 bytes. length: -1 bytes + 30, 0, + 30, 0, + 30, 0, + 30, 0, + 30, 0, + 8, 0, + 22, 2, + 8, 0, + 22, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 2, 2, + 18, 1, + 2, 2, + 8, 0, + 22, 2, + 8, 0, + 22, 2, + 30, 0, + 30, 0, + 30, 0, + 30, 0, + 30, 0, +}; + +#define NUM_FRAMES 101 +#define NUM_LEDS 30 +Animation animation(NUM_FRAMES, animationData, NUM_LEDS); diff --git a/animations/S.S.C.Napoli.h b/animations/S.S.C.Napoli.h new file mode 100644 index 0000000..6b8a900 --- /dev/null +++ b/animations/S.S.C.Napoli.h @@ -0,0 +1,763 @@ +const PROGMEM prog_uint8_t animationData[] = { +// Length of the color table - 1, in bytes. length: 1 byte + 3, +// Color table section. Each entry is 3 bytes. length: 12 bytes + 48, 169, 255, + 0, 0, 0, + 255, 255, 255, + 0, 60, 231, +// Pixel runs section. Each pixel run is 2 bytes. length: -1 bytes + 1, 2, + 1, 1, + 19, 0, + 1, 2, + 8, 3, + 2, 1, + 19, 0, + 1, 2, + 8, 3, + 1, 1, + 20, 0, + 1, 2, + 8, 3, + 1, 1, + 20, 0, + 1, 2, + 8, 3, + 1, 1, + 20, 0, + 1, 2, + 8, 3, + 1, 1, + 10, 0, + 1, 1, + 9, 0, + 1, 2, + 8, 3, + 1, 1, + 8, 0, + 3, 1, + 9, 0, + 1, 2, + 8, 3, + 1, 1, + 8, 0, + 1, 1, + 2, 2, + 1, 1, + 8, 0, + 1, 2, + 8, 3, + 1, 1, + 8, 0, + 1, 1, + 2, 2, + 1, 1, + 8, 0, + 1, 2, + 8, 3, + 1, 1, + 9, 0, + 1, 1, + 1, 2, + 1, 1, + 8, 0, + 1, 2, + 8, 3, + 1, 1, + 9, 0, + 1, 1, + 2, 2, + 1, 1, + 7, 0, + 1, 2, + 8, 3, + 1, 1, + 8, 0, + 1, 1, + 4, 2, + 1, 1, + 6, 0, + 1, 2, + 8, 3, + 1, 1, + 8, 0, + 1, 1, + 5, 2, + 1, 1, + 5, 0, + 1, 2, + 8, 3, + 1, 1, + 8, 0, + 1, 1, + 6, 2, + 1, 1, + 4, 0, + 1, 2, + 8, 3, + 1, 1, + 7, 0, + 1, 1, + 3, 2, + 3, 1, + 1, 2, + 1, 1, + 4, 0, + 1, 2, + 8, 3, + 1, 1, + 7, 0, + 1, 1, + 2, 2, + 1, 1, + 3, 0, + 2, 1, + 4, 0, + 1, 2, + 8, 3, + 1, 1, + 6, 0, + 1, 1, + 2, 2, + 1, 1, + 10, 0, + 1, 2, + 8, 3, + 1, 1, + 6, 0, + 1, 1, + 2, 2, + 1, 1, + 7, 0, + 3, 3, + 1, 2, + 8, 3, + 1, 1, + 6, 0, + 1, 1, + 1, 2, + 1, 1, + 4, 0, + 7, 3, + 1, 2, + 8, 3, + 1, 1, + 5, 0, + 1, 1, + 2, 2, + 1, 1, + 2, 0, + 9, 3, + 1, 2, + 8, 3, + 1, 1, + 5, 0, + 1, 1, + 2, 2, + 1, 1, + 11, 3, + 1, 2, + 8, 3, + 1, 1, + 5, 0, + 1, 1, + 2, 2, + 1, 1, + 11, 3, + 1, 2, + 8, 3, + 1, 1, + 5, 0, + 1, 1, + 1, 2, + 1, 1, + 12, 3, + 1, 2, + 8, 3, + 1, 1, + 5, 0, + 1, 1, + 1, 2, + 1, 1, + 12, 3, + 1, 2, + 8, 3, + 1, 1, + 5, 0, + 1, 1, + 1, 2, + 1, 1, + 12, 3, + 1, 2, + 5, 3, + 2, 0, + 1, 3, + 1, 1, + 5, 0, + 1, 1, + 1, 2, + 1, 1, + 12, 3, + 1, 2, + 3, 3, + 4, 0, + 1, 3, + 1, 1, + 5, 0, + 1, 1, + 1, 2, + 1, 1, + 12, 3, + 1, 2, + 1, 3, + 6, 0, + 1, 3, + 1, 2, + 1, 1, + 4, 0, + 1, 1, + 1, 2, + 1, 1, + 12, 3, + 1, 2, + 7, 0, + 1, 3, + 1, 2, + 1, 1, + 4, 0, + 1, 1, + 1, 2, + 1, 1, + 12, 3, + 1, 2, + 7, 0, + 1, 3, + 1, 2, + 1, 1, + 4, 0, + 1, 1, + 2, 2, + 1, 1, + 11, 3, + 1, 2, + 7, 0, + 1, 3, + 1, 2, + 2, 1, + 3, 0, + 1, 1, + 2, 2, + 1, 1, + 11, 3, + 1, 2, + 7, 0, + 1, 3, + 1, 2, + 2, 1, + 3, 0, + 1, 1, + 2, 2, + 1, 1, + 11, 3, + 1, 2, + 7, 0, + 1, 3, + 2, 2, + 2, 1, + 2, 0, + 1, 1, + 2, 2, + 1, 1, + 11, 3, + 1, 2, + 7, 0, + 1, 3, + 3, 2, + 1, 1, + 3, 0, + 1, 1, + 2, 2, + 1, 1, + 10, 3, + 1, 2, + 7, 0, + 1, 3, + 3, 2, + 3, 1, + 1, 0, + 1, 1, + 2, 2, + 1, 1, + 10, 3, + 1, 2, + 7, 0, + 1, 3, + 5, 2, + 4, 1, + 2, 2, + 1, 1, + 9, 3, + 1, 2, + 7, 0, + 1, 3, + 7, 2, + 2, 1, + 2, 2, + 6, 1, + 4, 3, + 1, 2, + 7, 0, + 1, 3, + 16, 2, + 2, 1, + 3, 3, + 1, 2, + 7, 0, + 1, 3, + 15, 2, + 1, 1, + 5, 3, + 1, 2, + 7, 0, + 1, 3, + 14, 2, + 1, 1, + 6, 3, + 1, 2, + 7, 0, + 1, 3, + 14, 2, + 1, 1, + 6, 3, + 1, 2, + 7, 0, + 1, 3, + 13, 2, + 1, 1, + 7, 3, + 1, 2, + 7, 0, + 1, 3, + 12, 2, + 1, 1, + 8, 3, + 1, 2, + 7, 0, + 1, 3, + 12, 2, + 1, 1, + 8, 3, + 1, 2, + 7, 0, + 1, 3, + 10, 2, + 2, 1, + 9, 3, + 1, 2, + 7, 0, + 1, 3, + 8, 2, + 2, 1, + 11, 3, + 1, 2, + 7, 0, + 1, 3, + 7, 2, + 2, 1, + 12, 3, + 1, 2, + 7, 0, + 1, 3, + 6, 2, + 1, 1, + 14, 3, + 1, 2, + 7, 0, + 1, 3, + 5, 2, + 1, 1, + 15, 3, + 1, 2, + 7, 0, + 1, 3, + 4, 2, + 2, 1, + 15, 3, + 1, 2, + 1, 3, + 6, 0, + 1, 3, + 4, 2, + 1, 1, + 1, 0, + 15, 3, + 1, 2, + 3, 3, + 4, 0, + 1, 3, + 4, 2, + 1, 1, + 1, 0, + 15, 3, + 1, 2, + 4, 3, + 3, 0, + 1, 3, + 3, 2, + 1, 1, + 3, 0, + 14, 3, + 1, 2, + 6, 3, + 1, 0, + 1, 3, + 3, 2, + 1, 1, + 4, 0, + 13, 3, + 1, 2, + 8, 3, + 3, 2, + 1, 1, + 4, 0, + 13, 3, + 1, 2, + 8, 3, + 3, 2, + 1, 1, + 6, 0, + 11, 3, + 1, 2, + 8, 3, + 2, 2, + 1, 1, + 6, 0, + 3, 1, + 9, 3, + 1, 2, + 8, 3, + 2, 2, + 1, 1, + 6, 0, + 1, 1, + 2, 2, + 1, 1, + 8, 3, + 1, 2, + 8, 3, + 2, 2, + 1, 1, + 7, 0, + 1, 1, + 1, 2, + 1, 1, + 4, 0, + 4, 3, + 1, 2, + 8, 3, + 2, 2, + 1, 1, + 7, 0, + 1, 1, + 2, 2, + 1, 1, + 7, 0, + 1, 2, + 8, 3, + 2, 2, + 1, 1, + 7, 0, + 1, 1, + 2, 2, + 1, 1, + 7, 0, + 1, 2, + 8, 3, + 2, 2, + 1, 1, + 7, 0, + 1, 1, + 3, 2, + 1, 1, + 6, 0, + 1, 2, + 8, 3, + 2, 2, + 1, 1, + 6, 0, + 1, 1, + 5, 2, + 1, 1, + 5, 0, + 1, 2, + 8, 3, + 2, 2, + 1, 1, + 6, 0, + 1, 1, + 6, 2, + 1, 1, + 4, 0, + 1, 2, + 8, 3, + 2, 2, + 1, 1, + 5, 0, + 1, 1, + 3, 2, + 3, 1, + 2, 2, + 1, 1, + 3, 0, + 1, 2, + 8, 3, + 2, 2, + 1, 1, + 5, 0, + 1, 1, + 2, 2, + 1, 1, + 3, 0, + 2, 1, + 4, 0, + 1, 2, + 8, 3, + 2, 2, + 1, 1, + 4, 0, + 1, 1, + 2, 2, + 1, 1, + 10, 0, + 1, 2, + 8, 3, + 2, 2, + 1, 1, + 4, 0, + 1, 1, + 2, 2, + 1, 1, + 10, 0, + 1, 2, + 8, 3, + 2, 2, + 1, 1, + 4, 0, + 1, 1, + 1, 2, + 1, 1, + 11, 0, + 1, 2, + 8, 3, + 2, 2, + 1, 1, + 3, 0, + 1, 1, + 2, 2, + 1, 1, + 11, 0, + 1, 2, + 8, 3, + 2, 2, + 1, 1, + 3, 0, + 1, 1, + 2, 2, + 1, 1, + 11, 0, + 1, 2, + 8, 3, + 2, 2, + 1, 1, + 3, 0, + 1, 1, + 2, 2, + 1, 1, + 11, 0, + 1, 2, + 8, 3, + 2, 2, + 1, 1, + 3, 0, + 1, 1, + 1, 2, + 1, 1, + 12, 0, + 1, 2, + 8, 3, + 3, 2, + 1, 1, + 2, 0, + 1, 1, + 1, 2, + 1, 1, + 12, 0, + 1, 2, + 8, 3, + 3, 2, + 1, 1, + 2, 0, + 1, 1, + 1, 2, + 1, 1, + 12, 0, + 1, 2, + 8, 3, + 3, 2, + 1, 1, + 2, 0, + 1, 1, + 1, 2, + 1, 1, + 12, 0, + 1, 2, + 8, 3, + 3, 2, + 1, 1, + 2, 0, + 1, 1, + 1, 2, + 1, 1, + 12, 0, + 1, 2, + 8, 3, + 4, 2, + 1, 1, + 1, 0, + 1, 1, + 1, 2, + 1, 1, + 12, 0, + 1, 2, + 8, 3, + 4, 2, + 1, 1, + 1, 0, + 1, 1, + 1, 2, + 1, 1, + 12, 0, + 1, 2, + 8, 3, + 4, 2, + 3, 1, + 1, 2, + 1, 1, + 12, 0, + 1, 2, + 8, 3, + 5, 2, + 2, 1, + 2, 2, + 1, 1, + 11, 0, + 1, 2, + 8, 3, + 6, 2, + 1, 1, + 2, 2, + 1, 1, + 11, 0, + 1, 2, + 8, 3, + 9, 2, + 1, 1, + 11, 0, + 1, 2, + 8, 3, + 9, 2, + 1, 1, + 11, 0, + 1, 2, + 8, 3, + 10, 2, + 1, 1, + 10, 0, + 1, 2, + 8, 3, + 10, 2, + 1, 1, + 10, 0, + 1, 2, + 8, 3, + 11, 2, + 1, 1, + 9, 0, + 1, 2, + 8, 3, + 12, 2, + 1, 1, + 8, 0, + 1, 2, + 8, 3, + 12, 2, + 2, 1, + 7, 0, + 1, 2, + 8, 3, + 13, 2, + 2, 1, + 6, 0, + 1, 2, + 8, 3, + 14, 2, + 1, 1, + 6, 0, + 1, 2, + 8, 3, + 13, 2, + 1, 1, + 7, 0, + 1, 2, + 8, 3, + 8, 2, + 5, 1, + 8, 0, + 1, 2, + 8, 3, + 5, 2, + 4, 1, + 12, 0, + 1, 2, + 8, 3, + 4, 2, + 2, 1, + 15, 0, + 1, 2, + 8, 3, + 3, 2, + 2, 1, + 16, 0, + 1, 2, + 8, 3, + 2, 2, + 2, 1, + 17, 0, + 1, 2, + 8, 3, + 2, 2, + 1, 1, + 18, 0, + 1, 2, + 8, 3, + 1, 2, + 2, 1, + 18, 0, + 1, 2, + 8, 3, + 1, 2, + 1, 1, + 19, 0, + 1, 2, + 8, 3, + 1, 2, + 1, 1, + 19, 0, + 1, 2, + 8, 3, +}; + +#define NUM_FRAMES 101 +#define NUM_LEDS 30 +Animation animation(NUM_FRAMES, animationData, NUM_LEDS); diff --git a/animations/ao2.h b/animations/ao2.h new file mode 100644 index 0000000..f198fef --- /dev/null +++ b/animations/ao2.h @@ -0,0 +1,484 @@ +const PROGMEM prog_uint8_t animationData[] = { +// Length of the color table - 1, in bytes. length: 1 byte + 2, +// Color table section. Each entry is 3 bytes. length: 9 bytes + 0, 89, 128, + 230, 230, 230, + 0, 128, 203, +// Pixel runs section. Each pixel run is 2 bytes. length: -1 bytes + 7, 2, + 23, 0, + 6, 2, + 24, 0, + 6, 2, + 24, 0, + 6, 2, + 24, 0, + 6, 2, + 24, 0, + 6, 2, + 24, 0, + 6, 2, + 24, 0, + 6, 2, + 9, 0, + 5, 1, + 10, 0, + 6, 2, + 8, 0, + 9, 1, + 7, 0, + 6, 2, + 9, 0, + 9, 1, + 6, 0, + 6, 2, + 8, 0, + 10, 1, + 6, 0, + 6, 2, + 6, 0, + 12, 1, + 6, 0, + 6, 2, + 7, 0, + 11, 1, + 6, 0, + 6, 2, + 8, 0, + 10, 1, + 6, 0, + 6, 2, + 7, 0, + 11, 1, + 6, 0, + 6, 2, + 6, 0, + 12, 1, + 6, 0, + 6, 2, + 6, 0, + 12, 1, + 6, 0, + 7, 2, + 6, 0, + 11, 1, + 6, 0, + 7, 2, + 5, 0, + 12, 1, + 6, 0, + 7, 2, + 5, 0, + 12, 1, + 6, 0, + 8, 2, + 5, 0, + 11, 1, + 6, 0, + 8, 2, + 5, 0, + 11, 1, + 6, 0, + 9, 2, + 3, 0, + 12, 1, + 6, 0, + 9, 2, + 3, 0, + 12, 1, + 6, 0, + 10, 2, + 3, 0, + 11, 1, + 6, 0, + 10, 2, + 3, 0, + 11, 1, + 6, 0, + 11, 2, + 3, 0, + 10, 1, + 6, 0, + 12, 2, + 3, 0, + 9, 1, + 6, 0, + 12, 2, + 2, 0, + 10, 1, + 6, 0, + 12, 2, + 1, 0, + 11, 1, + 6, 0, + 12, 2, + 1, 0, + 11, 1, + 6, 0, + 13, 2, + 2, 0, + 9, 1, + 6, 0, + 14, 2, + 2, 0, + 8, 1, + 6, 0, + 13, 2, + 2, 0, + 9, 1, + 6, 0, + 13, 2, + 1, 0, + 10, 1, + 6, 0, + 12, 2, + 3, 0, + 9, 1, + 6, 0, + 15, 2, + 1, 0, + 8, 1, + 1, 0, + 2, 2, + 3, 0, + 13, 2, + 1, 0, + 1, 2, + 1, 0, + 8, 1, + 1, 0, + 4, 2, + 1, 0, + 13, 2, + 3, 0, + 8, 1, + 1, 0, + 4, 2, + 1, 0, + 15, 2, + 2, 0, + 7, 1, + 1, 0, + 4, 2, + 1, 0, + 15, 2, + 1, 0, + 8, 1, + 1, 0, + 4, 2, + 1, 0, + 15, 2, + 2, 0, + 7, 1, + 1, 0, + 4, 2, + 1, 0, + 16, 2, + 1, 0, + 7, 1, + 1, 0, + 4, 2, + 1, 0, + 14, 2, + 2, 0, + 8, 1, + 1, 0, + 4, 2, + 1, 0, + 16, 2, + 1, 0, + 7, 1, + 1, 0, + 4, 2, + 1, 0, + 16, 2, + 1, 0, + 7, 1, + 1, 0, + 4, 2, + 1, 0, + 15, 2, + 5, 0, + 4, 1, + 1, 0, + 4, 2, + 1, 0, + 18, 2, + 1, 0, + 5, 1, + 1, 0, + 4, 2, + 1, 0, + 17, 2, + 1, 0, + 6, 1, + 1, 0, + 4, 2, + 1, 0, + 16, 2, + 1, 0, + 7, 1, + 1, 0, + 4, 2, + 1, 0, + 15, 2, + 1, 0, + 8, 1, + 1, 0, + 4, 2, + 1, 0, + 16, 2, + 1, 0, + 7, 1, + 1, 0, + 4, 2, + 1, 0, + 17, 2, + 1, 0, + 6, 1, + 1, 0, + 4, 2, + 1, 0, + 15, 2, + 4, 0, + 5, 1, + 1, 0, + 4, 2, + 1, 0, + 16, 2, + 1, 0, + 7, 1, + 1, 0, + 3, 1, + 1, 2, + 1, 0, + 17, 2, + 1, 0, + 6, 1, + 1, 0, + 4, 1, + 1, 0, + 17, 2, + 2, 0, + 5, 1, + 1, 0, + 4, 1, + 1, 0, + 16, 2, + 1, 0, + 7, 1, + 1, 0, + 4, 1, + 1, 0, + 17, 2, + 1, 0, + 6, 1, + 1, 0, + 4, 1, + 1, 0, + 16, 2, + 3, 0, + 5, 1, + 1, 0, + 4, 1, + 1, 0, + 16, 2, + 1, 0, + 7, 1, + 1, 0, + 4, 1, + 1, 0, + 16, 2, + 1, 0, + 7, 1, + 1, 0, + 4, 1, + 1, 0, + 16, 2, + 2, 0, + 6, 1, + 1, 0, + 4, 1, + 1, 0, + 16, 2, + 1, 0, + 7, 1, + 1, 0, + 4, 1, + 1, 0, + 15, 2, + 2, 0, + 7, 1, + 1, 0, + 4, 2, + 1, 0, + 14, 2, + 1, 0, + 9, 1, + 1, 0, + 4, 2, + 1, 0, + 15, 2, + 1, 0, + 8, 1, + 1, 0, + 4, 2, + 1, 0, + 14, 2, + 4, 0, + 6, 1, + 1, 0, + 4, 2, + 1, 0, + 14, 2, + 1, 0, + 9, 1, + 1, 0, + 4, 2, + 1, 0, + 15, 2, + 1, 0, + 8, 1, + 1, 0, + 4, 2, + 1, 0, + 14, 2, + 1, 0, + 9, 1, + 1, 0, + 4, 2, + 1, 0, + 14, 2, + 1, 0, + 9, 1, + 1, 0, + 4, 2, + 1, 0, + 13, 2, + 2, 0, + 9, 1, + 1, 0, + 4, 2, + 1, 0, + 13, 2, + 1, 0, + 10, 1, + 1, 0, + 4, 2, + 1, 0, + 13, 2, + 2, 0, + 9, 1, + 1, 0, + 4, 2, + 1, 0, + 14, 2, + 2, 0, + 8, 1, + 1, 0, + 4, 2, + 1, 0, + 13, 2, + 2, 0, + 9, 1, + 1, 0, + 4, 2, + 1, 0, + 13, 2, + 1, 0, + 10, 1, + 1, 0, + 4, 2, + 1, 0, + 13, 2, + 1, 0, + 10, 1, + 1, 0, + 4, 2, + 1, 0, + 13, 2, + 1, 0, + 10, 1, + 1, 0, + 4, 2, + 1, 0, + 12, 2, + 1, 0, + 11, 1, + 1, 0, + 4, 2, + 1, 0, + 12, 2, + 2, 0, + 10, 1, + 1, 0, + 3, 2, + 2, 0, + 13, 2, + 1, 0, + 10, 1, + 6, 0, + 13, 2, + 1, 0, + 10, 1, + 6, 0, + 12, 2, + 1, 0, + 11, 1, + 6, 0, + 13, 2, + 1, 0, + 10, 1, + 6, 0, + 13, 2, + 1, 0, + 10, 1, + 6, 0, + 12, 2, + 2, 0, + 10, 1, + 6, 0, + 12, 2, + 1, 0, + 11, 1, + 6, 0, + 13, 2, + 2, 0, + 9, 1, + 6, 0, + 12, 2, + 3, 0, + 9, 1, + 6, 0, + 11, 2, + 3, 0, + 10, 1, + 6, 0, + 11, 2, + 3, 0, + 9, 1, + 7, 0, + 10, 2, + 6, 0, + 4, 1, + 10, 0, + 9, 2, + 21, 0, + 9, 2, + 21, 0, + 8, 2, + 22, 0, + 8, 2, + 22, 0, + 7, 2, + 23, 0, + 7, 2, + 23, 0, + 7, 2, + 23, 0, +}; + +#define NUM_FRAMES 101 +#define NUM_LEDS 30 +Animation animation(NUM_FRAMES, animationData, NUM_LEDS); diff --git a/animations/ao2it.h b/animations/ao2it.h new file mode 100644 index 0000000..eb4822a --- /dev/null +++ b/animations/ao2it.h @@ -0,0 +1,321 @@ +const PROGMEM prog_uint8_t animationData[] = { +// Length of the color table - 1, in bytes. length: 1 byte + 2, +// Color table section. Each entry is 3 bytes. length: 9 bytes + 22, 101, 151, + 0, 0, 0, + 120, 175, 205, +// Pixel runs section. Each pixel run is 2 bytes. length: -1 bytes + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 14, 1, + 3, 2, + 2, 1, + 2, 2, + 8, 1, + 1, 0, + 13, 1, + 5, 2, + 2, 1, + 2, 2, + 7, 1, + 1, 0, + 13, 1, + 2, 2, + 2, 1, + 1, 2, + 2, 1, + 2, 2, + 7, 1, + 1, 0, + 13, 1, + 2, 2, + 2, 1, + 1, 2, + 2, 1, + 2, 2, + 7, 1, + 1, 0, + 13, 1, + 8, 2, + 8, 1, + 1, 0, + 14, 1, + 6, 2, + 9, 1, + 1, 0, + 14, 1, + 1, 2, + 14, 1, + 1, 0, + 29, 1, + 1, 0, + 16, 1, + 2, 2, + 11, 1, + 1, 0, + 14, 1, + 6, 2, + 9, 1, + 1, 0, + 13, 1, + 3, 2, + 2, 1, + 3, 2, + 8, 1, + 1, 0, + 13, 1, + 1, 2, + 6, 1, + 1, 2, + 8, 1, + 1, 0, + 13, 1, + 1, 2, + 6, 1, + 1, 2, + 8, 1, + 1, 0, + 13, 1, + 3, 2, + 2, 1, + 3, 2, + 8, 1, + 1, 0, + 14, 1, + 6, 2, + 9, 1, + 1, 0, + 16, 1, + 2, 2, + 11, 1, + 1, 0, + 29, 1, + 1, 0, + 14, 1, + 1, 2, + 14, 1, + 1, 0, + 14, 1, + 2, 2, + 2, 1, + 2, 2, + 9, 1, + 1, 0, + 14, 1, + 2, 2, + 3, 1, + 2, 2, + 8, 1, + 1, 0, + 14, 1, + 3, 2, + 3, 1, + 2, 2, + 7, 1, + 1, 0, + 14, 1, + 4, 2, + 2, 1, + 2, 2, + 7, 1, + 1, 0, + 14, 1, + 2, 2, + 1, 1, + 4, 2, + 8, 1, + 1, 0, + 14, 1, + 2, 2, + 2, 1, + 2, 2, + 9, 1, + 1, 0, + 14, 1, + 2, 2, + 13, 1, + 1, 0, + 29, 1, + 1, 0, + 14, 1, + 1, 2, + 14, 1, + 1, 0, + 13, 1, + 3, 2, + 13, 1, + 1, 0, + 14, 1, + 1, 2, + 14, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 14, 1, + 7, 2, + 1, 1, + 2, 2, + 5, 1, + 1, 0, + 14, 1, + 7, 2, + 1, 1, + 2, 2, + 5, 1, + 1, 0, + 14, 1, + 1, 2, + 14, 1, + 1, 0, + 29, 1, + 1, 0, + 20, 1, + 1, 2, + 8, 1, + 1, 0, + 14, 1, + 9, 2, + 6, 1, + 1, 0, + 14, 1, + 9, 2, + 6, 1, + 1, 0, + 14, 1, + 1, 2, + 5, 1, + 1, 2, + 8, 1, + 1, 0, + 14, 1, + 1, 2, + 14, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, + 29, 1, + 1, 0, +}; + +#define NUM_FRAMES 101 +#define NUM_LEDS 30 +Animation animation(NUM_FRAMES, animationData, NUM_LEDS); diff --git a/contrib/gphoto2_capture.sh b/contrib/gphoto2_capture.sh new file mode 100755 index 0000000..650c8b2 --- /dev/null +++ b/contrib/gphoto2_capture.sh @@ -0,0 +1,54 @@ +#!/bin/sh +# +# gphoto2_capture.sh - Do automated high exposure tethered photo shoots +# +# Copyright (C) 2014 Antonio Ospite +# +# This program is free software. It comes without any warranty, to +# the extent permitted by applicable law. You can redistribute it +# and/or modify it under the terms of the Do What The Fuck You Want +# To Public License, Version 2, as published by Sam Hocevar. See +# http://sam.zoy.org/wtfpl/COPYING for more details. + +set -e + +# Get the configuration variables with these commands: +# gphoto2 --set-config capture=1 +# gphoto2 --list-all-config | sed -e 's/^[^\/]/\t\0/g' > Camera-config.txt +# + +CAPTURE_MODE=$(LANG=C gphoto2 --get-config capture | grep Current | cut -d ' ' -f 2 | tr -d '\n') + +if [ "x$CAPTURE_MODE" = "x" ]; +then + exit 1 +fi + +if [ $CAPTURE_MODE -eq 0 ]; +then + gphoto2 --set-config capture=1 +fi + +# The settings below are for a Canon powershot A85, with these settings: +# - Save pictures on the memory card +# - F-number 2.8 +# - Manual shooting mode +# - Exposure 0.5 seconds +# - Superfine quality +# - ISO speed 100 + +gphoto2 \ + -I 1 \ + --set-config-index capturetarget=1 \ + --set-config-index /main/capturesettings/aperture=0 \ + --set-config-index /main/capturesettings/shootingmode=3 \ + --set-config-index /main/capturesettings/shutterspeed=15 \ + --set-config-index /main/imgsettings/imagequality=2 \ + --set-config-index /main/imgsettings/iso=1 \ + --capture-image \ + "$@" + +# Stop the capture with Ctrl-C and then download all the files on the PC, +# after that delete them from the camera: +# gphoto2 --get-all-files +# gphoto2 --delete-all-files --recurse -- 2.1.4