#include <SoftwareSerial.h>
/* 14CORE | Bluetooth RGB Led Strip Commander
www.14core.com / Download the Android to google play | LED Commander |
Wiring with Arduino UNO
* UNO(PIN-10) - RED PIN
* UNO(PIN-9) - GREEN PIN
* UNO(PIN-11) - BLUE PIN
* UNO SERIAL RX(PIN 2) - HC06 TX PIN
* UNO SERIAL TX(PIN 3) - HC06 RX PIN
* UNO 3.3v - HC06 VCC
* UNO GND - HC06 GROUND
*
Wiring with MEGA
* MEGA(PIN-10) - RED PIN
* MEGA(PIN-9) - GREEN PIN
* MEGA(PIN-11) - BLUE PIN
* MEGASERIAL RX(PIN 2) - HC06 TX PIN
* MEGASERIAL TX(PIN 3) - HC06 RX PIN
* MEGA 3.3v - HC06 VCC
* MEGA GND - HC06 GROUND
*
Wiring with Teensy (Refer to pin configuration)
*/
#define pRED 10
#define pGREEN 9
#define pBLUE 11
SoftwareSerial mySerial(2, 3);
char state;
int counter = 0;
int pulse = 0;
int timeRand (100);
int speedPatroll(50); //SET SPEED FOR 2 state FLASHING
int speedFading(10); //SET SPEED FOR FADING SEQUENCE
int FRED, FGREEN, FBLUE;
long RRAND, GRAND, BRAND, TRAND;
void setup() {
Serial.begin(9600);
pinMode(pRED, OUTPUT);
pinMode(pGREEN, OUTPUT);
pinMode(pBLUE, OUTPUT);
}
void loop(){
if (Serial.available()>0){
state = Serial.read();
char start = char(state);
if (start != 0){
}
Serial.println(start);
}
if (state == 'o'){off();}
if (state == 'n'){on();}
if (state == 'w'){cwhite();}
if (state == 'r'){cRed();}
if (state == 'e'){cOrange();}
if (state == 'y'){cYellow();}
if (state == 'g'){cGreen();}
if (state == 'l'){cLime();}
if (state == 'b'){cBlue();}
if (state == 's'){cSkyBlue();}
if (state == 'p'){cPurple();}
if (state == 'k'){cPink();}
if (state == 'f'){strobeWhite();}
if (state == 'q'){setPatroll();}
if (state == 't'){fading();}
if (state == 'i'){setRandom();}
}
/* 14CORE | FX */
// --------------------
void off(){
analogWrite(pRED, 0);
analogWrite(pGREEN, 0);
analogWrite(pBLUE, 0);
}
void on(){
analogWrite(pRED, 255);
analogWrite(pGREEN, 255);
analogWrite(pBLUE, 255);
}
void cwhite(){
analogWrite(pRED, 255);
analogWrite(pGREEN, 255);
analogWrite(pBLUE, 255);
}
void cRed(){
analogWrite(pRED, 255);
analogWrite(pGREEN, 0);
analogWrite(pBLUE, 0);
}
void cGreen(){
analogWrite(pRED, 0);
analogWrite(pGREEN, 255);
analogWrite(pBLUE, 0);
}
void cBlue(){
analogWrite(pRED, 0);
analogWrite(pGREEN, 0);
analogWrite(pBLUE, 255);
}
void cSkyBlue(){
analogWrite(pRED, 250);
analogWrite(pGREEN, 200);
analogWrite(pBLUE, 0);
}
void cOrange(){
analogWrite(pRED, 255);
analogWrite(pGREEN, 153);
analogWrite(pBLUE, 0);
}
void cYellow(){
analogWrite(pRED, 255);
analogWrite(pGREEN, 255);
analogWrite(pBLUE, 0);
}
void cLime(){
analogWrite(pRED, 100);
analogWrite(pGREEN, 255);
analogWrite(pBLUE, 100);
}
void cPurple(){
analogWrite(pRED, 102);
analogWrite(pGREEN, 0);
analogWrite(pBLUE, 153);
}
void cPink(){
analogWrite(pRED, 102);
analogWrite(pGREEN, 100);
analogWrite(pBLUE, 153);
}
void strobeWhite(){
if (counter < 3){
analogWrite(pRED,250);
analogWrite(pGREEN,250);
analogWrite(pBLUE,250);
delay(200);
analogWrite(pRED,250);
analogWrite(pGREEN,250);
analogWrite(pBLUE,250);
delay(100);
counter++;
}
}
void fading(){
for (FRED = 0; FRED < 255; FRED++) {
analogWrite(pRED, FRED);
delay(speedFading);
}
for (FBLUE = 255; FBLUE > 0; FBLUE--){
analogWrite(pBLUE, FBLUE);
delay(speedFading);
}
for (FGREEN = 0; FGREEN <255; FGREEN ++){
analogWrite(pGREEN, FGREEN);
delay(speedFading);
}
for (FRED = 255; FRED > 0; FRED--) {
analogWrite(pRED, FRED);
delay(speedFading);
}
for (FBLUE = 0; FBLUE < 255; FBLUE++){
analogWrite(pBLUE, FBLUE);
delay(speedFading);
}
for (FGREEN = 255; FGREEN > 0; FGREEN--){
analogWrite(pGREEN, FGREEN);
delay(speedFading);
}
}
void setRandom(){
RRAND = random(0, 255); //CHANGE VALUE FOR RANDOM RANGE NUMBERS
GRAND = random(0, 255); //CHANGE VALUE FOR RANDOM RANGE NUMBERS
BRAND = random(0, 255); //CHANGE VALUE FOR RANDOM RANGE NUMBERS
TRAND = random(200, 800); //CHANGE VALUE FOR DELAY RANGE NUMBERS
analogWrite(pRED, RRAND);
analogWrite(pGREEN, GRAND);
analogWrite(pBLUE, BRAND);
delay(TRAND);
analogWrite(pRED, 255);
analogWrite(pGREEN, GRAND);
analogWrite(pBLUE, BRAND);
delay(TRAND);
analogWrite(pRED, RRAND);
analogWrite(pGREEN, 255);
analogWrite(pBLUE, BRAND);
delay(TRAND);
analogWrite(pRED, RRAND);
analogWrite(pGREEN, GRAND);
analogWrite(pBLUE, 255);
delay(TRAND);
}
void setPatroll(){
analogWrite(pRED, 255);
analogWrite(pGREEN, 0);
analogWrite(pBLUE, 0);
delay(speedPatroll);
analogWrite(pRED, 0);
analogWrite(pGREEN, 0);
analogWrite(pBLUE, 255);
delay(speedPatroll);
analogWrite(pRED, 0);
analogWrite(pGREEN, 0);
analogWrite(pBLUE, 0);
delay(speedPatroll);
analogWrite(pRED, 255);
analogWrite(pGREEN, 0);
analogWrite(pBLUE, 0);
delay(speedPatroll);
analogWrite(pRED, 0);
analogWrite(pGREEN, 0);
analogWrite(pBLUE, 255);
}