Addded Controls for WS2812
This commit is contained in:
@@ -41,8 +41,16 @@ const int stepPerRev = 4096;
|
||||
#define ANALOGBUTTONS_SAMPLING_INTERVAL 10
|
||||
|
||||
//Feedback for button presses
|
||||
#define ledPin D1
|
||||
#define ledBrightness //Not used yet
|
||||
#define lightEnable true //Allow control of LED
|
||||
#define lightMode 1 //0-PWM 1-FastLED
|
||||
#define ledPin D1 //Feedback LED
|
||||
|
||||
|
||||
|
||||
|
||||
int ledBrightness = 2; //Not used yet
|
||||
|
||||
|
||||
|
||||
//Extra Stuff
|
||||
#define alternateFunction false //Enable alternate use of the reset button
|
||||
|
||||
@@ -25,7 +25,7 @@ void configLoad() {
|
||||
Serial.println(savedPosition);
|
||||
}
|
||||
|
||||
void ledFeedback() {
|
||||
void ledFeedbackf() {
|
||||
|
||||
if (ledMode == 0) {
|
||||
if (ledTimer > millis() - 500) {
|
||||
@@ -58,7 +58,7 @@ void ledFeedback() {
|
||||
|
||||
void ledTurn(int _mode) {
|
||||
ledTimer = millis();
|
||||
ledOn = true;
|
||||
ledFeedback = true;
|
||||
ledMode = _mode;
|
||||
}
|
||||
|
||||
@@ -157,3 +157,5 @@ void moveNow() {
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
@@ -25,6 +25,16 @@
|
||||
#include <Ethernet.h>
|
||||
#include "config.h"
|
||||
|
||||
#include <FastLED.h>
|
||||
FASTLED_USING_NAMESPACE
|
||||
#define NUM_LEDS 9
|
||||
|
||||
#define DATA_PIN 2
|
||||
#define LED_TYPE WS2812
|
||||
#define COLOR_ORDER GRB
|
||||
|
||||
CRGB leds[NUM_LEDS];
|
||||
|
||||
#if cmds
|
||||
#include <Cmd.h>
|
||||
#endif
|
||||
@@ -49,9 +59,12 @@ bool moveUp = false;
|
||||
int motorPos = 0;
|
||||
|
||||
unsigned long ledTimer;
|
||||
bool ledOn = false;
|
||||
bool ledFeedback = false;
|
||||
byte ledMode = 0;
|
||||
|
||||
bool lightOn = false;
|
||||
bool lightOld = true;
|
||||
|
||||
|
||||
#include "wifi.h"
|
||||
#include "functions.h"
|
||||
@@ -123,8 +136,13 @@ byte ledMode = 0;
|
||||
BlynkTimer timer1;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
void setup() {
|
||||
|
||||
//FastLED.addLeds<WS2811, 2, GRB>(leds, NUM_LEDS);
|
||||
FastLED.addLeds<LED_TYPE,DATA_PIN,COLOR_ORDER>(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);
|
||||
|
||||
pinMode(ledPin,OUTPUT);
|
||||
digitalWrite(ledPin,LOW);
|
||||
|
||||
@@ -172,12 +190,16 @@ void setup() {
|
||||
|
||||
|
||||
Serial.print(F("Loaded | Position S|C : ")); Serial.print(savedPosition); Serial.print("|"); Serial.println(stepper.currentPosition());
|
||||
|
||||
FastLED.setBrightness(ledBrightness);
|
||||
FastLED.setDither(1);
|
||||
}
|
||||
|
||||
|
||||
void loop() {
|
||||
if (ledOn == true) {
|
||||
ledFeedback();
|
||||
|
||||
if (ledFeedback == true) {
|
||||
ledFeedbackf();
|
||||
}
|
||||
|
||||
#if cmds
|
||||
@@ -199,10 +221,29 @@ void loop() {
|
||||
stepper.run(); //AccelStepper runs here
|
||||
|
||||
moveNow();
|
||||
|
||||
lightControl();
|
||||
|
||||
FastLED.setBrightness(ledBrightness);
|
||||
FastLED.show();
|
||||
}
|
||||
|
||||
|
||||
|
||||
void lightControl() {
|
||||
|
||||
if (lightOn == true && lightOld != lightOn) {
|
||||
for (int i = 0;i<NUM_LEDS;i++) {
|
||||
leds[i] = CRGB::White;
|
||||
}
|
||||
}
|
||||
|
||||
if (lightOn == false) {
|
||||
for (int i=0;i<NUM_LEDS;i++) {
|
||||
leds[i].fadeToBlackBy( 32 );
|
||||
}
|
||||
}
|
||||
lightOld = lightOn;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -21,3 +21,12 @@ BLYNK_WRITE(V13) {
|
||||
BLYNK_WRITE(V20) {
|
||||
motorPos = param.asInt();
|
||||
}
|
||||
|
||||
BLYNK_WRITE(V21) {
|
||||
lightOn = param.asInt();
|
||||
}
|
||||
|
||||
BLYNK_WRITE(V22) {
|
||||
ledBrightness = param.asInt();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user