#include <Adafruit_NeoPixel.h>
#include "DHTesp.h"
DHTesp dhtSensor;
Adafruit_NeoPixel pixels(60, 5, NEO_RGB + NEO_KHZ800);
void setup() {
pixels.begin();
Serial.begin(115200);
dhtSensor.setup(13,DHTesp::DHT22);
}
void loop() {
pixels.clear();
pixels.show();
TempAndHumidity data = dhtSensor.getTempAndHumidity();
Serial.println("Temp: " + String(data.temperature, 2) + "°C");
Serial.println("Humidity: " + String(data.humidity, 1) + "%");
if (data.temperature <-38 && data.humidity<0){
for(int i = 0; i<1; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >-39 && data.temperature <-3){
for(int i = 0; i<2; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >-37 && data.temperature <-34){
for(int i = 0; i<3; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >-35 && data.temperature <-32){
for(int i = 0; i<4; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >-33 && data.temperature <-30){
for(int i = 0; i<5; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >-31 && data.temperature <-28){
for(int i = 0; i<6; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >-29 && data.temperature <-26){
for(int i = 0; i<7; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >-27 && data.temperature <-24){
for(int i = 0; i<8; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >-25 && data.temperature <-22){
for(int i = 0; i<9; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >-23 && data.temperature <-20){
for(int i = 0; i<10; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >-21 && data.temperature <-18){
for(int i = 0; i<11; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >-19 && data.temperature <-16){
for(int i = 0; i<12; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >-17 && data.temperature <-14){
for(int i = 0; i<13; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >-15 && data.temperature <-12){
for(int i = 0; i<14; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >-13 && data.temperature <-10){
for(int i = 0; i<15; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >-11 && data.temperature <-8){
for(int i = 0; i<16; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >-9 && data.temperature <-6){
for(int i = 0; i<17; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >-7 && data.temperature <-4){
for(int i = 0; i<18; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >-5 && data.temperature <-2){
for(int i = 0; i<19; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >-3 && data.temperature <0){
for(int i = 0; i<20; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >-1 && data.temperature <2){
for(int i = 0; i<21; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >1 && data.temperature <4){
for(int i = 0; i<22; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >3 && data.temperature <6){
for(int i = 0; i<23; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >5 && data.temperature <8){
for(int i = 0; i<24; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >7 && data.temperature <10){
for(int i = 0; i<25; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >9 && data.temperature <12){
for(int i = 0; i<26; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >11 && data.temperature <14){
for(int i = 0; i<27; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >13 && data.temperature <16){
for(int i = 0; i<28; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
if (data.temperature >15 && data.temperature <18){
for(int i = 0; i<29; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
// Continue the pattern for other temperature and humidity ranges...
if (data.temperature > 77) {
for (int i = 0; i < 60; i++)
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
pixels.show();
}
delay(1000);
}