ahh! I used serial as a voltmeter for testing and didn't take it out so that could be the problem!
Sorry if im not making it very clear! I have for example the brake going to pin A0 and then out pin 3 for the signal for the led's if that makes sense?
The delay is around 1/4 of a second.
Yes thats what I have been doing so far, I have it all in a little project box now but its fairy easy to hook up to the bike battery for testing.
Terrible picture but basically;
the led's are in three sections output pins 3,5,6
As you can't physically turn the lights off when the ignition is on I used the taillight feed to power the arduino, and the three feeds from both indicators and brake light.
Here's the very sketchy code;
#include <Adafruit_NeoPixel.h>
#ifdef AVR
#include <avr/power.h>
#endif
Adafruit_NeoPixel strip_a = Adafruit_NeoPixel(13, 6, NEO_GRB + NEO_KHZ800); // rightInd (orange)
Adafruit_NeoPixel strip_b = Adafruit_NeoPixel(6, 3, NEO_GRB + NEO_KHZ800); // brakeLight (white)
Adafruit_NeoPixel strip_c = Adafruit_NeoPixel(13, 5, NEO_GRB + NEO_KHZ800); // leftInd (blue)
int rightInd = A0;
int brakeLight = A2;
int leftInd = A4;
////////////////////////////////////////////////////////////////////////
void setup() {
Serial.begin(9600);
strip_a.begin();
strip_b.begin();
strip_c.begin();
strip_a.show();
strip_b.show();
strip_c.show();
pinMode(rightInd, INPUT); // A0
pinMode(brakeLight, INPUT); // A2
pinMode(leftInd, INPUT); // A4
}
//////////////////////////////////////////////////////////////////////
void loop() {
///////////////////////
int voltageIn = analogRead(A0);
Serial.println (voltageIn);
delay (200);
//////////////////////
int voltageIn2 = analogRead(A2);
Serial.println (voltageIn2);
delay (200);
//////////////////////
int voltageIn3 = analogRead(A4);
Serial.println (voltageIn3);
delay (200);
////////////////////////
int rightIndIn = analogRead (A0); ////strip_a - right indicator -
int brakeLightIn = analogRead (A4); ////strip_b - brake light -
int leftIndIn = analogRead (A2); ////strip_c - left indicator -
if (rightIndIn >= 100){
strip_a.setPixelColor (0, 70, 35, 0);
strip_a.setPixelColor (1, 70, 35, 0);
strip_a.setPixelColor (2, 70, 35, 0);
strip_a.setPixelColor (3, 70, 35, 0);
strip_a.setPixelColor (4, 70, 35, 0);
strip_a.setPixelColor (5, 70, 35, 0);
strip_a.setPixelColor (6, 70, 35, 0);
strip_a.setPixelColor (7, 70, 35, 0);
strip_a.setPixelColor (8, 70, 35, 0);
strip_a.setPixelColor (9, 70, 35, 0);
strip_a.setPixelColor (10, 70, 35, 0);
strip_a.setPixelColor (11, 70, 35, 0);
strip_a.setPixelColor (12, 70, 35, 0);
strip_a.show();
} else {
strip_a.setPixelColor (0, 20, 0, 0);
strip_a.setPixelColor (1, 20, 0, 0);
strip_a.setPixelColor (2, 20, 0, 0);
strip_a.setPixelColor (3, 20, 0, 0);
strip_a.setPixelColor (4, 20, 0, 0);
strip_a.setPixelColor (5, 20, 0, 0);
strip_a.setPixelColor (6, 20, 0, 0);
strip_a.setPixelColor (7, 20, 0, 0);
strip_a.setPixelColor (8, 20, 0, 0);
strip_a.setPixelColor (9, 20, 0, 0);
strip_a.setPixelColor (10, 20, 0, 0);
strip_a.setPixelColor (11, 20, 0, 0);
strip_a.setPixelColor (12, 20, 0, 0);
strip_a.show();
}
if (leftIndIn >= 100){
strip_c.setPixelColor (0, 70, 35, 0);
strip_c.setPixelColor (1, 70, 35, 0);
strip_c.setPixelColor (2, 70, 35, 0);
strip_c.setPixelColor (3, 70, 35, 0);
strip_c.setPixelColor (4, 70, 35, 0);
strip_c.setPixelColor (5, 70, 35, 0);
strip_c.setPixelColor (6, 70, 35, 0);
strip_c.setPixelColor (7, 70, 35, 0);
strip_c.setPixelColor (8, 70, 35, 0);
strip_c.setPixelColor (9, 70, 35, 0);
strip_c.setPixelColor (10, 70, 35, 0);
strip_c.setPixelColor (11, 70, 35, 0);
strip_c.setPixelColor (12, 70, 35, 0);
strip_c.show();
} else {
strip_c.setPixelColor (0, 20, 0, 0);
strip_c.setPixelColor (1, 20, 0, 0);
strip_c.setPixelColor (2, 20, 0, 0);
strip_c.setPixelColor (3, 20, 0, 0);
strip_c.setPixelColor (4, 20, 0, 0);
strip_c.setPixelColor (5, 20, 0, 0);
strip_c.setPixelColor (6, 20, 0, 0);
strip_c.setPixelColor (7, 20, 0, 0);
strip_c.setPixelColor (8, 20, 0, 0);
strip_c.setPixelColor (9, 20, 0, 0);
strip_c.setPixelColor (10, 20, 0, 0);
strip_c.setPixelColor (11, 20, 0, 0);
strip_c.setPixelColor (12, 20, 0, 0);
strip_c.show();
}
if (brakeLightIn >= 100){
strip_b.setPixelColor (0, 255, 0, 0);
strip_b.setPixelColor (1, 255, 0, 0);
strip_b.setPixelColor (2, 255, 0, 0);
strip_b.setPixelColor (3, 255, 0, 0);
strip_b.setPixelColor (4, 255, 0, 0);
strip_b.setPixelColor (5, 255, 0, 0);
strip_b.show();
} else {
strip_b.setPixelColor (0, 20, 0, 0);
strip_b.setPixelColor (1, 20, 0, 0);
strip_b.setPixelColor (2, 20, 0, 0);
strip_b.setPixelColor (3, 20, 0, 0);
strip_b.setPixelColor (4, 20, 0, 0);
strip_b.setPixelColor (5, 20, 0, 0);
strip_b.show();
}
}