#include #include // Include the required Wire library for I2C
#define numpixels 1 #define pixelpower 11 #define pixelpin 12 long int setMillis; Adafruit_NeoPixel pixel(numpixels, pixelpin, NEO_GRB + NEO_KHZ800); int x = 0; void setup() { Wire.begin(); Serial.begin(); pixel.begin(); pinMode(pixelpower, OUTPUT); digitalWrite(pixelpower, HIGH); setMillis = millis(); } void loop() { Wire.beginTransmission(9); Wire.write(x); Wire.endTransmission(); // long int setMillis = millis(); if (x == 0) { pixel.setPixelColor(0, pixel.Color(255, 0, 0)); pixel.show(); // delay(200); } if (x == 1) { pixel.setPixelColor(0, pixel.Color(0, 255, 0)); pixel.show(); // delay(200); } if (x == 2) { pixel.setPixelColor(0, pixel.Color(0, 0, 255)); pixel.show(); // delay(200); } if (x == 3) { pixel.setPixelColor(0, pixel.Color(255, 255, 0)); pixel.show(); // delay(200); } if (x == 4) { pixel.setPixelColor(0, pixel.Color(0, 255, 255)); pixel.show(); // delay(200); } if (x == 5) { pixel.setPixelColor(0, pixel.Color(255, 0, 255)); pixel.show(); // delay(200); } long int nowMillis = millis(); if (nowMillis - setMillis > 200) { x++; // Increment x setMillis = millis(); } if (x > 5) { x = 0; } // `reset x once it gets 6 // delay(200); }