Hello
Sorry for this delayed response for your helpful comments.
@Idahowalker : I understand what you mean and thought the experts there would quite understand what I had posted as a query.
I am using 1.8.16 IDE as well the Beta version and tried compiling with both and had the same issue.
@SteveMann: I was happy to hear that I was not the only one facing the issue and quite agree to " sacrificing led[0] ![:slight_smile: :slight_smile:](https://emoji.discourse-cdn.com/twitter/slight_smile.png?v=12)
However, I have 2 strips from different manufacturers. One a black strip and the other a white. My errors were cropping up while using the black strip while the white strip worked flawlessly. I presume it has it has something to do with the chipset imbedded within the LED's from different manufacturers. Hope I am right about that !
I have also uploaded a short Video @ : New Clock - YouTube
Thank you all your help.
Regards
Vijay
My Code -
// Prog Date : 4 Nov 2021
// Changes Color every minute
// Change to Show 12 hrs format
//If Wifi Disconnects inside loop show WiFi red-white blink
// Added DTH 22 - Temperature / Humidty module
// Displaying of Temperature/Humdity incorporated
#define FASTLED_ESP8266_RAW_PIN_ORDER
#define FASTLED_INTERRUPT_RETRY_COUNT 0
#include<ESP8266WiFi.h>
#include <FastLED.h>
#include <NTPClient.h>
#include <WiFiUdp.h>
#include <DHT.h>
#define LED_TYPE WS2812
#define COLOR_ORDER GRB
#define PIN D5
#define NUM_LEDS 88
#define DHTPIN D6
//#define DHTTYPE DHT11 // DHT 11
#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321
//#define DHTTYPE DHT21 // DHT 21 (AM2301)
DHT dht(DHTPIN, DHTTYPE);
float Td; // Dew Point
int h1; int t1; int Td1;
CRGB leds[NUM_LEDS];
int speedx = 10;
int brightness = 45;
int colors;
bool blinker; int colorval = 160; int briteval = 45;
int i; int j; int zulu; int l = 0; int ledcount; int numbers = 0;
int nos = 0; int hourt; int hrt; int hru; int mit; int miu;
int favcol = colorval; int favbri = briteval;
const char *ssid = "Vijay Kumar";
const char *password = "korgn$567$";
String datex, yearx, monthx, hourx, minsx, secox, dotw, dotw1;
int datex1, yearx1, monthx1, hourx1, minsx1, secox1, dotw1x;
//For UTC -5.00 : -5 * 60 * 60 : -18000
//For UTC +1.00 : 1 * 60 * 60 : 3600
//For UTC +0.00 : 0 * 60 * 60 : 0
// For UTC +5.30 : 5.5 * 60 *60 :19800 -- INDIA (+5.5hrs NOT 5hrs & 30mins)
const long utcOffsetInSeconds = 19800;
char daysOfTheWeek[7][12] = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"};
// Define NTP Client to get time
WiFiUDP ntpUDP;
NTPClient timeClient(ntpUDP, "pool.ntp.org", utcOffsetInSeconds);
void setup() {
dht.begin();
FastLED.addLeds<WS2812, PIN, GRB>(leds, NUM_LEDS);
Serial.begin(115200);
WiFi.begin(ssid, password);
while ( WiFi.status() != WL_CONNECTED ) {
leds[43] = CHSV(0, 255, 45);
FastLED.show();
delay (250);
leds[43] = CHSV(0, 1, 45);
FastLED.show();
delay(250);
// Serial.print ( "." );
}
leds[43] = CHSV(0, 0, 0);
FastLED.show();
timeClient.begin();
}
void loop() {
while ( WiFi.status() != WL_CONNECTED ) {
leds[43] = CHSV(0, 255, 45);
FastLED.show();
delay (250);
leds[43] = CHSV(0, 1, 45);
FastLED.show();
delay(250);
// Serial.print ( "." );
}
/*
if (WiFi.status() == WL_CONNECTED) {
Serial.println( "Connected ..");
}
*/
timeClient.update();
/*
Serial.println(daysOfTheWeek[timeClient.getDay()]);
Serial.print(", ");
Serial.print(timeClient.getHours());
Serial.print(":");
Serial.println(timeClient.getMinutes());
Serial.print(":");
Serial.println(timeClient.getSeconds());
Serial.println(timeClient.getFormattedDate());
*/
datex = (timeClient.getFormattedDate()).substring(8, 10);
monthx = (timeClient.getFormattedDate()).substring(5, 7);
yearx = (timeClient.getFormattedDate()).substring(2, 4);
hourx = (timeClient.getHours());
minsx = (timeClient.getMinutes());
secox = (timeClient.getSeconds());
dotw = (daysOfTheWeek[timeClient.getDay()]);
hourx1 = hourx.toInt(); minsx1 = minsx.toInt(); secox1 = secox.toInt();
if ( hourx1 > 12) {
hourx1 = hourx1 - 12;
}
if (hourx1 == 0) {
hourx1 = 12;
}
dotw1 = dotw.substring(0, 3);
if (dotw == "Monday") {
dotw1x = 1;
}
if (dotw == "Tuesday") {
dotw1x = 2;
}
if (dotw == "Wednesday") {
dotw1x = 3;
}
if (dotw == "Thursday") {
dotw1x = 4;
}
if (dotw == "Friday") {
dotw1x = 5;
}
if (dotw == "Saturday") {
dotw1x = 6;
}
if (dotw == "Sunday") {
dotw1x = 7;
}
//Serial.println(dotw1);
//Serial.println(dotw);
//Serial.println(dotw1x);
datex1 = datex.toInt(); monthx1 = monthx.toInt(); yearx1 = yearx.toInt();
hrt = hourx1 / 10; // hour tens digit
hru = hourx1 % 10; // hour unit digit
mit = minsx1 / 10; // Mins tens digit
miu = minsx1 % 10; // Mins unit digit
/*
Serial.print(datex1); Serial.print("/"); Serial.print(monthx1); Serial.print("/"); Serial.println(yearx1);
Serial.print(hourx1); Serial.print(":"); Serial.print(minsx1); Serial.print(":"); Serial.println(secox1);
Serial.println(dotw1);
*/
// delay(1000);
//if (secox1 == 0) {
cleanup();
colorval = random(255);
doClockDisplay();
//}
if (secox1 == 50) {
cleanup();
doday();
hrt = int(datex1 / 10);
hru = int(datex1 % 10);
mit = int(monthx1 / 10);
miu = int(monthx1 % 10);
cleanup();
DateDisplay();
tempread();
displaytemp();
//cleanup();
}
doblinks();
}
//***************************************************************************
void doClockDisplay() {
for (zulu = 1; zulu < 5; zulu += 1) {
if (zulu == 1) {
hourt = hrt;
ledcount = 0;
}
if (zulu == 2) {
hourt = hru;
ledcount = ledcount + 22;
}
if (zulu == 3) {
hourt = mit;
ledcount = ledcount + 22;
}
if (zulu == 4) {
hourt = miu;
ledcount = ledcount + 22;
}
switch (hourt) {
case 0:
// 0
if (zulu > 1) {
for (int i = 0 + ledcount; i < 18 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval );
}
for (int i = 18 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV(0, 0, 0);
}
//FastLED.show();
break;
}
if (zulu == 1) {
for (int i = 0 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV(0, 0, 0);
}
//FastLED.show();
break;
}
case 1:
// 1
for (int i = 3 + ledcount; i < 9 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 0 + ledcount; i < 3 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
for (int i = 9 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
//FastLED.show();
break;
case 2:
// 2
for (int i = 0 + ledcount; i < 6 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 9 + ledcount; i < 15 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 18 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 15 + ledcount; i < 18 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
for (int i = 6 + ledcount; i < 9 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
//FastLED.show();
break;
case 3:
// 3
for (int i = 0 + ledcount; i < 12 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 18 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 12 + ledcount; i < 18 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
// FastLED.show();
break;
case 4:
// 4
for (int i = 3 + ledcount; i < 9 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 15 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 0 + ledcount; i < 3 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
for (int i = 9 + ledcount; i < 15 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
// FastLED.show();
break;
case 5:
// 5
for (int i = 0 + ledcount; i < 3 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 6 + ledcount; i < 12 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 15 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 3 + ledcount; i < 6 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
for (int i = 12 + ledcount; i < 15 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
// FastLED.show();
break;
case 6:
// 6
for (int i = 0 + ledcount; i < 3 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 6 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 3 + ledcount; i < 6 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
// FastLED.show();
break;
case 7:
// 7
for (int i = 0 + ledcount; i < 9 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 9 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
// FastLED.show();
break;
case 8:
// 8
for (int i = 0 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
// FastLED.show();
break;
case 9:
// 9
for (int i = 0 + ledcount; i < 12 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 15 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 12 + ledcount; i < 15 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
//FastLED.show();
break;
FastLED.show();
}
}
}
//**********************************************************************
void cleanup() {
for (int r = 0; r <= 88; r += 1) {
leds[r] = CHSV(0, 0, 0);
}
FastLED.show();
}
//**************************************************************************
void DateDisplay() {
for (zulu = 1; zulu < 5; zulu += 1) {
if (zulu == 1) {
hourt = hrt;
ledcount = 0;
}
if (zulu == 2) {
hourt = hru;
ledcount = ledcount + 22;
}
if (zulu == 3) {
hourt = mit;
ledcount = ledcount + 22;
}
if (zulu == 4) {
hourt = miu;
ledcount = ledcount + 22;
}
leds[43] = CHSV(colorval, 255, briteval); // Decimal Point
// FastLED.show();
switch (hourt) {
case 0:
// 0
if (zulu > 1) {
for (int i = 0 + ledcount; i < 18 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval );
}
for (int i = 18 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV(0, 0, 0);
}
// FastLED.show();
break;
}
if (zulu == 1) {
for (int i = 0 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV(0, 0, 0);
}
// FastLED.show();
break;
}
case 1:
// 1
for (int i = 3 + ledcount; i < 9 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 0 + ledcount; i < 3 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
for (int i = 9 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
// FastLED.show();
break;
case 2:
// 2
for (int i = 0 + ledcount; i < 6 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 9 + ledcount; i < 15 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 18 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 15 + ledcount; i < 18 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
for (int i = 6 + ledcount; i < 9 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
// FastLED.show();
break;
case 3:
// 3
for (int i = 0 + ledcount; i < 12 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 18 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 12 + ledcount; i < 18 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
// FastLED.show();
break;
case 4:
// 4
for (int i = 3 + ledcount; i < 9 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 15 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 0 + ledcount; i < 3 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
for (int i = 9 + ledcount; i < 15 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
// FastLED.show();
break;
case 5:
// 5
for (int i = 0 + ledcount; i < 3 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 6 + ledcount; i < 12 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 15 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 3 + ledcount; i < 6 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
for (int i = 12 + ledcount; i < 15 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
// FastLED.show();
break;
case 6:
// 6
for (int i = 0 + ledcount; i < 3 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 6 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 3 + ledcount; i < 6 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
// FastLED.show();
break;
case 7:
// 7
for (int i = 0 + ledcount; i < 9 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 9 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
// FastLED.show();
break;
case 8:
// 8
for (int i = 0 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
// FastLED.show();
break;
case 9:
// 9
for (int i = 0 + ledcount; i < 12 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 15 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 12 + ledcount; i < 15 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
// FastLED.show();
break;
}
}
FastLED.show();
delay(2000);
}
//*******************************************************************************
// DAY DISPLAY
void doday() {
switch (dotw1x) {
case 1: //Monday
for (int i = 0; i < 9; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//M
}
for (int i = 12; i < 18; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//M
}
for (int i = 28; i < 37; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//o
}
for (int i = 40; i < 43; i += 1) {
leds[i] = CHSV(colorval, 255, briteval); //o
}
for (int i = 50; i < 53; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//n
}
for (int i = 56; i < 59; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//n
}
for (int i = 62; i < 65; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//n
}
FastLED.show();
break;
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++mon end
case 2: //Tuesday
for (int i = 9; i < 21; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//t
}
for (int i = 28; i < 37; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//u
}
for (int i = 44; i < 47; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);// E
}
for (int i = 53; i < 65; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);// E
}
FastLED.show();
break;
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++tue end
case 3: //Wednesday
for (int i = 3; i < 18; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//W
}
for (int i = 22 ; i < 25 ; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);// E
}
for (int i = 31 ; i < 43 ; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);// E
}
for (int i = 47 ; i < 59 ; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//big small d
}
for (int i = 62 ; i < 65 ; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//big small d
}
FastLED.show();
break;
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++wed end
case 4: //Thursday
for (int i = 9; i < 21; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//t
}
for (int i = 28; i < 31; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//h
}
for (int i = 34; i < 43; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//h
}
for (int i = 50; i < 59; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//u
}
FastLED.show();
break;
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++thu end
case 5: //Friday
for (int i = 0; i < 3; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//F
}
for (int i = 12; i < 21; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//F
}
for (int i = 34; i < 37; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//r
}
for (int i = 40; i < 43; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//r
}
for (int i = 56 ; i < 59 ; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//i
}
FastLED.show();
break;
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++fri end
case 6: //Saturday
for (int i = 0; i < 3; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);//S
}
for (int i = 6; i < 12; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);//S
}
for (int i = 15; i < 21; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);//S
}
for (int i = 22; i < 31; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);//A
}
for (int i = 34; i < 43; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);//A
}
for (int i = 53; i < 65; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//t
}
FastLED.show();
break;
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++Sat end
case 7: //Sunday
for (int i = 0; i < 3; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);//S
}
for (int i = 6; i < 12; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);//S
}
for (int i = 15; i < 21; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);//S
}
for (int i = 28; i < 37; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//u
}
for (int i = 50; i < 53; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//n
}
for (int i = 56; i < 59; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//n
}
for (int i = 62; i < 65; i += 1) {
leds[i] = CHSV(colorval, 255, briteval);//n
}
FastLED.show();
break;
} // END switch day
//colorval = favcol; briteval = favbri;
delay(2000);
//cleanup();
} // END doday
//********************************************************************************
void displaytemp() {
cleanup();
int t1t = t1 / 10;
int t1u = t1 % 10;
for (zulu = 1; zulu < 3; zulu++) {
if (zulu == 1) {
hourt = t1t;
ledcount = 0;
}
if (zulu == 2) {
hourt = t1u;
ledcount = ledcount + 22;
}
switch (hourt) {
case 0:
// 0
if (zulu > 1) {
for (int i = 0 + ledcount; i < 18 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval );
}
for (int i = 18 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV(0, 0, 0);
}
FastLED.show();
break;
}
if (zulu == 1) {
for (int i = 0 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV(0, 0, 0);
}
FastLED.show();
break;
}
case 1:
// 1
for (int i = 3 + ledcount; i < 9 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 0 + ledcount; i < 3 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
for (int i = 9 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
FastLED.show();
break;
case 2:
// 2
for (int i = 0 + ledcount; i < 6 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 9 + ledcount; i < 15 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 18 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 15 + ledcount; i < 18 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
for (int i = 6 + ledcount; i < 9 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
FastLED.show();
break;
case 3:
// 3
for (int i = 0 + ledcount; i < 12 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 18 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 12 + ledcount; i < 18 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
FastLED.show();
break;
case 4:
// 4
for (int i = 3 + ledcount; i < 9 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 15 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 0 + ledcount; i < 3 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
for (int i = 9 + ledcount; i < 15 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
FastLED.show();
break;
case 5:
// 5
for (int i = 0 + ledcount; i < 3 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 6 + ledcount; i < 12 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 15 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 3 + ledcount; i < 6 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
for (int i = 12 + ledcount; i < 15 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
FastLED.show();
break;
case 6:
// 6
for (int i = 0 + ledcount; i < 3 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 6 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 3 + ledcount; i < 6 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
FastLED.show();
break;
case 7:
// 7
for (int i = 0 + ledcount; i < 9 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 9 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
FastLED.show();
break;
case 8:
// 8
for (int i = 0 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
FastLED.show();
break;
case 9:
// 9
for (int i = 0 + ledcount; i < 12 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 15 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 12 + ledcount; i < 15 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
FastLED.show();
break;
}
}
for (int i = 44; i < 50; i += 1) {
leds[i] = CHSV(colorval, 255, briteval); // deg
}
for (int i = 59; i < 65; i += 1) {
leds[i] = CHSV(colorval, 255, briteval); // deg
}
for (int i = 50; i < 57; i += 1) {
leds[i] = CHSV(0, 0, 0); // deg
}
for (int i = 66; i < 69; i += 1) {
leds[i] = CHSV(colorval, 255, briteval); // C
}
for (int i = 75; i < 84; i += 1) {
leds[i] = CHSV(colorval, 255, briteval); // C
}
FastLED.show();
delay(2000);
//**********************************************************END TEMP DISPLAY
cleanup();
int h1t = h1 / 10;
int h1u = h1 % 10;
for (zulu = 1; zulu < 3; zulu++) {
if (zulu == 1) {
hourt = h1t;
ledcount = 0;
}
if (zulu == 2) {
hourt = h1u;
ledcount = ledcount + 22;
}
switch (hourt) {
case 0:
// 0
if (zulu > 1) {
for (int i = 0 + ledcount; i < 18 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval );
}
for (int i = 18 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV(0, 0, 0);
}
FastLED.show();
break;
}
if (zulu == 1) {
for (int i = 0 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV(0, 0, 0);
}
FastLED.show();
break;
}
case 1:
// 1
for (int i = 3 + ledcount; i < 9 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 0 + ledcount; i < 3 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
for (int i = 9 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
FastLED.show();
break;
case 2:
// 2
for (int i = 0 + ledcount; i < 6 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 9 + ledcount; i < 15 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 18 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 15 + ledcount; i < 18 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
for (int i = 6 + ledcount; i < 9 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
FastLED.show();
break;
case 3:
// 3
for (int i = 0 + ledcount; i < 12 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 18 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 12 + ledcount; i < 18 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
FastLED.show();
break;
case 4:
// 4
for (int i = 3 + ledcount; i < 9 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 15 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 0 + ledcount; i < 3 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
for (int i = 9 + ledcount; i < 15 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
FastLED.show();
break;
case 5:
// 5
for (int i = 0 + ledcount; i < 3 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 6 + ledcount; i < 12 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 15 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 3 + ledcount; i < 6 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
for (int i = 12 + ledcount; i < 15 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
FastLED.show();
break;
case 6:
// 6
for (int i = 0 + ledcount; i < 3 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 6 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 3 + ledcount; i < 6 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
FastLED.show();
break;
case 7:
// 7
for (int i = 0 + ledcount; i < 9 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 9 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
FastLED.show();
break;
case 8:
// 8
for (int i = 0 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
FastLED.show();
break;
case 9:
// 9
for (int i = 0 + ledcount; i < 12 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 15 + ledcount; i < 21 + ledcount; i += 1) {
leds[i] = CHSV( colorval, 255, briteval);
}
for (int i = 12 + ledcount; i < 15 + ledcount; i += 1) {
leds[i] = CHSV( 0, 0, 0);
}
FastLED.show();
break;
}
}
for (int i = 44; i < 65; i += 1) { // blank
leds[i] = CHSV(0, 0, 0); // deg
}
for (int i = 69; i < 75; i += 1) {
leds[i] = CHSV(colorval, 255, briteval); // h
}
for (int i = 78; i < 87; i += 1) {
leds[i] = CHSV(colorval, 255, briteval); // h
}
for (int i = 66; i < 69; i += 1) {
leds[i] = CHSV(0, 0, 0); // h
}
for (int i = 75; i < 78; i += 1) {
leds[i] = CHSV(0, 0, 0); // h
}
FastLED.show();
delay(2000);
cleanup();
} // END Display Temp / Humidity
//*********************************************************************
void doblinks() {
if (blinker == true) {
leds[43] = CHSV( colorval, 255, briteval);
} else {
leds[43] = CHSV(0, 0, 0);
}
FastLED.show();
blinker = !blinker;
delay(500);
}
//****************************************************************
void tempread() {
// Wait a few seconds between measurements.
//delay(5000);
// Reading temperature or humidity takes about 250 milliseconds!
// Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor)
float h = dht.readHumidity();
// Read temperature as Celsius (the default)
float t = dht.readTemperature();
// Read temperature as Fahrenheit (isFahrenheit = true)
// float f = dht.readTemperature(true);
h1 = int(h); t1 = int(t); Td1 = int(Td);
// Check if any reads failed and exit early (to try again).
// if (isnan(h) || isnan(t) || isnan(f)) {
// Serial.println(F("Failed to read from DHT sensor!"));
// return;
// Compute heat index in Fahrenheit (the default)
// float hif = dht.computeHeatIndex(f, h);
// Compute heat index in Celsius (isFahreheit = false)
//float hic = dht.computeHeatIndex(t, h, false);
Td = t - ((100 - h) / 5);
/*
Serial.print(F("Humidity: "));
Serial.print(h1);
Serial.println("%");
Serial.print ("Temperature: ");
Serial.print(t1);
Serial.println("°C ");
Serial.print("Dew Point :");
Serial.println(Td1);
Serial.println();
*/
//Serial.print(f);
// Serial.print(F("°F Heat index: "));
// Serial.print(hic);
// Serial.print(F("°C "));
//Serial.print(hif);
// Serial.println(F("°F"));
}
//*************************************************type or paste code here