Pith - arduino_bluetooth_hand_flame_3
arduino_bluetooth_hand_flame_3/arduino_bluetooth_hand_flame_3.ino [2.1 kb]
Modified: 00:12:24 58 026 (16 May 026)
15 Days Ago
// Bluetooth Hand Flame 3.0
// vgmlr
#include "FastLED.h"
#define NUM_LEDS 12
CRGB leds[NUM_LEDS];
#define PIN 3
// button
int button = 7;
int state = 0;
// mosfet
int mosfet = 5;
int burn = 1250;
void setup()
{
  Serial.begin(9600);
  FastLED.addLeds< WS2812B, PIN, GRB >(leds, NUM_LEDS).setCorrection( TypicalLEDStrip );
  pinMode(button, INPUT);
  pinMode(mosfet, OUTPUT);
  digitalWrite(mosfet, LOW);
  fire();
  setAll(0, 0, 0);
  showStrip();
}
void loop() {
  if (Serial.available())  {
    char data;
    data = Serial.read();
    if (data == '1') {
      huzzah();
    }
  }
  state = digitalRead(button);
  if (state == LOW) {
    delay(1000);
    huzzah();
  } else {
    digitalWrite(mosfet, LOW);
  }
}
void huzzah() {
  fire();
  digitalWrite(mosfet, HIGH);
  delay(burn);
  digitalWrite(mosfet, LOW);
  setAll(0, 0, 0);
  showStrip();
}
void fire() {
  for (int k = 0; k < 255; k++) {
    setPixel(0, 0, 0, k);
    showStrip();
    k = k + 3;
  }
  for (int k = 0; k < 255; k++) {
    setPixel(11, 0, 0, k);
    setPixel(1, 0, 0, k);
    showStrip();
    k = k + 3;
  }
  for (int k = 0; k < 255; k++) {
    setPixel(10, 0, 0, k);
    setPixel(2, 0, 0, k);
    showStrip();
    k = k + 3;
  }
  for (int k = 0; k < 255; k++) {
    setPixel(9, 0, 0, k);
    setPixel(3, 0, 0, k);
    showStrip();
    k = k + 3;
  }
  for (int k = 0; k < 255; k++) {
    setPixel(8, 0, 0, k);
    setPixel(4, 0, 0, k);
    showStrip();
    k = k + 3;
  }
  for (int k = 0; k < 255; k++) {
    setPixel(7, 0, 0, k);
    setPixel(6, 0, 0, k);
    setPixel(5, 0, 0, k);
    showStrip();
    k = k + 3;
  }
}
void showStrip() {
#ifdef ADAFRUIT_NEOPIXEL_H
  // NeoPixel
  strip.show();
#endif
#ifndef ADAFRUIT_NEOPIXEL_H
  // FastLED
  FastLED.show();
#endif
}
void setPixel(int Pixel, byte red, byte green, byte blue) {
#ifdef ADAFRUIT_NEOPIXEL_H
  // NeoPixel
  strip.setPixelColor(Pixel, strip.Color(red, green, blue));
#endif
#ifndef ADAFRUIT_NEOPIXEL_H
  // FastLED
  leds[Pixel].r = red;
  leds[Pixel].g = green;
  leds[Pixel].b = blue;
#endif
}
void setAll(byte red, byte green, byte blue) {
  for (int i = 0; i < NUM_LEDS; i++ ) {
    setPixel(i, red, green, blue);
  }
  showStrip();
}
Updates
Shim - Android 70.026.1
Wedge - Linux 68.026.1
Wedge - Android 68.026.1
Taper - Linux 64.026.1
Ayh Extension - Chrome 63.026.1
Dev
TVShow (227) 'CSA'
TVShow (228) 'APT'
TVProgram (83) 'BXT'
Miter Update(s)
Shim (Dictation)

Menu
Calendar
Project Tin (024/029)
Miter
RSS Feed