├── .gitattributes ├── README.md ├── epaper_weather_station ├── EEPROMManager.cpp ├── EEPROMManager.h ├── ForecastManager.cpp ├── ForecastManager.h ├── SensorDataManager.cpp ├── SensorDataManager.h ├── display.cpp ├── display.h ├── epaper_weather_station.ino ├── icons.h ├── sensors.cpp └── sensors.h ├── inkplate_clean_eeprom ├── EEPROMManager.cpp ├── EEPROMManager.h └── inkplate_clean_eeprom.ino └── preview.jpg /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Arduino Color E Paper Weather Station 2 | 3 | This is a project I've wanted to build for over a decade now. I've finally made it and I am really excited– a battery-powered weather station project. I've built many weather station projects in the past, but this one is different. It can last on batteries for months. The reason for this is the amazing E-Paper display it uses. As you can see, we have a large, 6-inch E-Paper display that can display 7 colors combined with an ESP32 microprocessor. 4 | 5 | On the display, we show the temperature, humidity, barometric pressure, and weather forecast. We get the temperature, humidity, and barometric pressure from two sensors, and the weather forecast from the internet. 6 | 7 | # Video Tutorial 8 | 9 |

10 | Arduino Color E-Paper Weather Station 11 |

12 | 13 |

14 | 🎥 Video Tutorial on YouTube 15 |

16 | 17 |
18 |
19 |

20 | | 📺 YouTube 21 | | 🌍 Website |
22 |

23 | 24 | 25 | # Parts Needed 26 | 27 | 🛒 E-Paper Board: https://educ8s.tv/part/ColorEPaper 28 | 29 | 🛒 DHT22: https://educ8s.tv/part/DHT22 30 | 31 | 🛒 BMP180: https://educ8s.tv/part/BMP180 32 | -------------------------------------------------------------------------------- /epaper_weather_station/EEPROMManager.cpp: -------------------------------------------------------------------------------- 1 | #include "EEPROMManager.h" 2 | 3 | EEPROMManager::EEPROMManager(int size) : eepromSize(size) {} 4 | 5 | bool EEPROMManager::isInitialized() { 6 | if(EEPROM.read(initFlagAddress) != 0) { 7 | return true; } 8 | } 9 | 10 | void EEPROMManager::begin() { 11 | EEPROM.begin(eepromSize); 12 | bootUpCount = EEPROM.read(initFlagAddress); 13 | Serial.print("Bootup count: "); 14 | Serial.println(bootUpCount); 15 | 16 | if (bootUpCount > 1000) { 17 | Serial.println("Bootup count exceeded 1000. Resetting the counter..."); 18 | resetBootupCount(); 19 | } 20 | 21 | if (!isInitialized()) { 22 | clear(); 23 | } 24 | } 25 | 26 | void EEPROMManager::resetBootupCount() { 27 | EEPROM.write(initFlagAddress, 1); 28 | EEPROM.commit(); 29 | } 30 | 31 | void EEPROMManager::incrementBootupCount() { 32 | bootUpCount++; 33 | EEPROM.write(initFlagAddress, bootUpCount); 34 | EEPROM.commit(); 35 | } 36 | 37 | void EEPROMManager::clear() { 38 | 39 | for (int i = 0; i < eepromSize; ++i) { 40 | EEPROM.write(i, 0); 41 | } 42 | EEPROM.commit(); 43 | delay(10); 44 | } 45 | 46 | void EEPROMManager::write(int address, uint8_t data) { 47 | EEPROM.write(address, data); 48 | } 49 | 50 | uint8_t EEPROMManager::read(int address) { 51 | return EEPROM.read(address); 52 | } 53 | 54 | void EEPROMManager::setInitialized() { 55 | EEPROM.write(initFlagAddress, 1); 56 | EEPROM.commit(); 57 | delay(10); // Add a delay to ensure the write operation completes 58 | } 59 | 60 | void EEPROMManager::saveSensorData(const SensorData& data) { 61 | int address = initFlagAddress + sizeof(uint8_t); // Skip the initialization flag 62 | 63 | for (int i = 0; i < 24; ++i) { 64 | EEPROM.put(address, data.temperature[i]); 65 | address += sizeof(float); 66 | 67 | EEPROM.put(address, data.humidity[i]); 68 | address += sizeof(float); 69 | 70 | EEPROM.put(address, data.pressure[i]); 71 | address += sizeof(float); 72 | } 73 | EEPROM.commit(); 74 | } 75 | 76 | void EEPROMManager::loadSensorData(SensorData& data) { 77 | int address = initFlagAddress + sizeof(uint8_t); // Skip the initialization flag 78 | 79 | for (int i = 0; i < 24; ++i) { 80 | EEPROM.get(address, data.temperature[i]); 81 | address += sizeof(float); 82 | 83 | EEPROM.get(address, data.humidity[i]); 84 | address += sizeof(float); 85 | 86 | EEPROM.get(address, data.pressure[i]); 87 | address += sizeof(float); 88 | } 89 | } 90 | 91 | void EEPROMManager::clearBootUpCount() { 92 | EEPROM.begin(eepromSize); 93 | bootUpCount = 0; 94 | EEPROM.write(initFlagAddress, bootUpCount); 95 | EEPROM.commit(); 96 | } 97 | 98 | void EEPROMManager::saveWeatherId(int id) { 99 | EEPROM.put(500, id); 100 | EEPROM.commit(); 101 | delay(10); 102 | } 103 | 104 | int EEPROMManager::readWeatherId() { 105 | int number = 0; 106 | EEPROM.get(500, number); 107 | return number; 108 | } -------------------------------------------------------------------------------- /epaper_weather_station/EEPROMManager.h: -------------------------------------------------------------------------------- 1 | #include "EEPROM.h" 2 | #include "SensorDataManager.h" 3 | 4 | class EEPROMManager { 5 | public: 6 | EEPROMManager(int size); 7 | void begin(); 8 | void saveSensorData(const SensorData& data); 9 | void loadSensorData(SensorData& data); 10 | void clearBootUpCount(); 11 | int bootUpCount = 0; 12 | void clear(); 13 | void saveWeatherId(int id); 14 | int readWeatherId(); 15 | void incrementBootupCount(); 16 | 17 | private: 18 | int eepromSize; 19 | int initFlagAddress = 0; // Address for initialization flag 20 | 21 | bool isInitialized(); // Check if EEPROM is initialized 22 | void setInitialized(); // Set the initialization flag 23 | 24 | void write(int address, uint8_t data); 25 | uint8_t read(int address); 26 | void resetBootupCount(); 27 | }; -------------------------------------------------------------------------------- /epaper_weather_station/ForecastManager.cpp: -------------------------------------------------------------------------------- 1 | #include "ForecastManager.h" 2 | #include 3 | #include 4 | #include 5 | 6 | ForecastManager::ForecastManager() { 7 | id = 0; 8 | } 9 | 10 | void ForecastManager::begin(char *ssid, char *pass) 11 | { 12 | // Initiating wifi, like in BasicHttpClient example 13 | WiFi.mode(WIFI_STA); 14 | WiFi.begin(ssid, pass); 15 | 16 | int cnt = 0; 17 | Serial.print(F("Waiting for WiFi to connect...")); 18 | while ((WiFi.status() != WL_CONNECTED)) 19 | { 20 | Serial.print(F(".")); 21 | delay(1000); 22 | ++cnt; 23 | 24 | if (cnt == 20) 25 | { 26 | Serial.println("Can't connect to WIFI, restarting"); 27 | delay(100); 28 | ESP.restart(); 29 | } 30 | } 31 | Serial.println(F(" connected")); 32 | } 33 | 34 | bool ForecastManager::getForecast(char *id, char *apiKey) { 35 | 36 | char *currentWeather; 37 | 38 | HTTPClient http; 39 | http.getStream().setNoDelay(true); 40 | http.getStream().setTimeout(1); 41 | 42 | // Add woeid to api call 43 | char url[256]; 44 | sprintf(url, "https://api.openweathermap.org/data/2.5/forecast?id=%s&units=metric&cnt=1&APPID=%s", id, apiKey); 45 | 46 | http.begin(url); 47 | 48 | // Dynamic Json from ArduinoJson library 49 | DynamicJsonDocument doc(30000); 50 | 51 | int httpCode = http.GET(); 52 | if (httpCode == 200) 53 | { 54 | int32_t len = http.getSize(); 55 | 56 | if (len > 0) 57 | { 58 | // Try parsing JSON object 59 | DeserializationError error = deserializeJson(doc, http.getStream()); 60 | 61 | // If an error happens print it to Serial monitor 62 | if (error) 63 | { 64 | Serial.print(F("deserializeJson() failed: ")); 65 | Serial.println(error.c_str()); 66 | return 0; 67 | } 68 | else 69 | { 70 | String forecastString = doc["list"][0]["weather"][0]["id"]; 71 | int forecastInt = forecastString.toInt(); 72 | // Assign the converted value to the id variable 73 | this->id = forecastInt; 74 | } 75 | } 76 | } 77 | 78 | doc.clear(); 79 | http.end(); 80 | return 1; 81 | } 82 | -------------------------------------------------------------------------------- /epaper_weather_station/ForecastManager.h: -------------------------------------------------------------------------------- 1 | class ForecastManager { 2 | 3 | public: 4 | ForecastManager(); 5 | void begin(char *ssid, char *pass); 6 | bool getForecast(char *id, char *apiKey); 7 | int id; 8 | 9 | private: 10 | 11 | }; -------------------------------------------------------------------------------- /epaper_weather_station/SensorDataManager.cpp: -------------------------------------------------------------------------------- 1 | #include "SensorDataManager.h" 2 | 3 | SensorDataManager::SensorDataManager() { 4 | 5 | } 6 | 7 | void SensorDataManager::initializeData() { 8 | for (int i = 0; i < 24; ++i) { 9 | sensorData.temperature[i] = 0.0; 10 | sensorData.humidity[i] = 0.0; 11 | sensorData.pressure[i] = 0.0; 12 | } 13 | } 14 | 15 | void SensorDataManager::updateData(float temp, float hum, float press) { 16 | // Shift the existing data to make room for the new values 17 | for (int i = 0; i < 23; ++i) { 18 | sensorData.temperature[i] = sensorData.temperature[i + 1]; 19 | sensorData.humidity[i] = sensorData.humidity[i + 1]; 20 | sensorData.pressure[i] = sensorData.pressure[i + 1]; 21 | } 22 | 23 | // Update the last element with the new values 24 | sensorData.temperature[23] = temp; 25 | sensorData.humidity[23] = hum; 26 | sensorData.pressure[23] = press; 27 | } -------------------------------------------------------------------------------- /epaper_weather_station/SensorDataManager.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | struct SensorData { 4 | float temperature[24]; 5 | float humidity[24]; 6 | float pressure[24]; 7 | }; 8 | 9 | class SensorDataManager { 10 | public: 11 | SensorDataManager(); 12 | 13 | void initializeData(); // Initialize the SensorData struct 14 | void updateData(float temp, float hum, float press); // Update the data arrays with new values 15 | SensorData sensorData; 16 | 17 | private: 18 | 19 | }; -------------------------------------------------------------------------------- /epaper_weather_station/display.cpp: -------------------------------------------------------------------------------- 1 | #include "display.h" 2 | #include "icons.h" 3 | 4 | Display::Display() { 5 | 6 | } 7 | 8 | void Display::begin(){ 9 | display.begin(); 10 | display.clearDisplay(); 11 | } 12 | 13 | void Display::printFrame(){ 14 | display.drawRect(0, 0, 600, 448, INKPLATE_BLACK); 15 | display.drawRect(1, 1, 598, 446, INKPLATE_BLACK); 16 | display.drawRect(2, 2, 596, 444, INKPLATE_BLACK); 17 | display.drawRect(3, 3, 594, 442, INKPLATE_BLACK); 18 | } 19 | 20 | void Display::printSmallFrame(int x, int y) 21 | { 22 | display.drawRoundRect(x, y, 243, 173, 20, INKPLATE_BLACK); 23 | display.drawRoundRect(x + 1, y + 1, 241, 171, 20, INKPLATE_BLACK); 24 | } 25 | 26 | void Display::printTitle(int x, int y, String text) 27 | { 28 | display.setTextColor(INKPLATE_BLACK); 29 | display.setTextSize(3); 30 | display.setCursor(x, y); 31 | display.print(text); 32 | } 33 | 34 | void Display::printTemperature(float temperature) { 35 | char buffer[6]; 36 | dtostrf(temperature, 4, 1, buffer); 37 | display.setTextColor(INKPLATE_RED); 38 | display.setTextSize(5); 39 | display.setCursor(340, 95); 40 | display.print(buffer); 41 | display.print(" "); 42 | display.print((char)247); 43 | display.print("C"); 44 | } 45 | 46 | void Display::printTemperatureGraph(float *data){ 47 | 48 | int x = 340; 49 | int y = 190; 50 | 51 | float minValue; 52 | float maxValue; 53 | for (int i = 0; i < 24; ++i) { 54 | if(data[i] !=0){ 55 | minValue = min(minValue, data[i]); 56 | maxValue = max(maxValue, data[i]); 57 | } 58 | } 59 | 60 | // Calculate the width of each data point on the x-axis 61 | float xStep = 230 / 24; 62 | float yScale = 40.0 / (maxValue - minValue); 63 | 64 | for (int i = 0; i < 23; ++i) { 65 | int x1 = x + i * xStep; 66 | int y1 = y - int((data[i] - minValue) * yScale); 67 | int x2 = x + (i + 1) * xStep; 68 | int y2 = y - int((data[i + 1] - minValue) * yScale); 69 | display.drawLine(x1, y1, x2, y2, INKPLATE_RED); 70 | display.drawLine(x1, y1 + 1, x2, y2 + 1, INKPLATE_RED); 71 | display.drawLine(x1, y1 + 2, x2, y2 + 2, INKPLATE_RED); 72 | } 73 | } 74 | 75 | void Display::printHumidity(float humidity) { 76 | char buffer[6]; 77 | dtostrf(humidity, 4, 1, buffer); 78 | display.setTextColor(INKPLATE_BLUE); 79 | display.setTextSize(5); 80 | display.setCursor(350, 302); 81 | display.print(buffer); 82 | display.print(" "); 83 | display.print("%"); 84 | } 85 | 86 | void Display::printPressure(float pressure) { 87 | char buffer[6]; 88 | dtostrf(pressure, 5, 1, buffer); 89 | display.setTextColor(INKPLATE_GREEN); 90 | display.setTextSize(4); 91 | display.setCursor(55, 302); 92 | display.print(buffer); 93 | display.print(" mb"); 94 | } 95 | 96 | void Display::update() { 97 | display.display(); 98 | } 99 | 100 | void Display::printUI() { 101 | printFrame(); 102 | printSmallFrame(38, 34); 103 | printSmallFrame(319, 34); 104 | printSmallFrame(38, 241); 105 | printSmallFrame(319, 241); 106 | printTitle(88, 50, "FORECAST"); 107 | printTitle(344, 50, "TEMPERATURE"); 108 | printTitle(90, 257, "PRESSURE"); 109 | printTitle(375, 257, "HUMIDITY"); 110 | } 111 | 112 | void Display::printHumidityGraph(float *data) { 113 | int x = 340; 114 | int y = 410; 115 | float barWidth = 180 / 24.0; 116 | 117 | for (int i = 0; i < 24; ++i) { 118 | if (data[i] != 0) { 119 | float barHeight = 55 * (data[i] / 100.0); // Scale the height to fit within 100 120 | int rectX = x + i * (barWidth + 1); // Add 1 pixel for spacing 121 | int rectY = y - barHeight; 122 | int rectWidth = barWidth; 123 | int rectHeight = barHeight; 124 | 125 | display.fillRect(rectX, rectY, rectWidth, rectHeight, INKPLATE_BLUE); 126 | } 127 | } 128 | } 129 | 130 | void Display::printPressureGraph(float *data) { 131 | int x = 60; 132 | int y = 410; 133 | float barWidth = 180 / 24.0; 134 | 135 | for (int i = 0; i < 24; ++i) { 136 | if (data[i] != 0) { 137 | float barHeight = 55 * ((data[i] - 970) / 50.0); // Scale the height to fit within 55 138 | int rectX = x + i * (barWidth + 1); // Add 1 pixel for spacing 139 | int rectY = y - barHeight; 140 | int rectWidth = barWidth; 141 | int rectHeight = barHeight; 142 | 143 | display.fillRect(rectX, rectY, rectWidth, rectHeight, INKPLATE_GREEN); 144 | } 145 | } 146 | } 147 | 148 | void Display::printWeatherIcon(int id){ 149 | 150 | switch(id) 151 | { 152 | case 800: drawClearWeather(); break; 153 | case 801: drawFewClouds(); break; 154 | case 802: drawFewClouds(); break; 155 | case 803: drawCloud(); break; 156 | case 804: drawCloud(); break; 157 | 158 | case 200: drawThunderstorm(); break; 159 | case 201: drawThunderstorm(); break; 160 | case 202: drawThunderstorm(); break; 161 | case 210: drawThunderstorm(); break; 162 | case 211: drawThunderstorm(); break; 163 | case 212: drawThunderstorm(); break; 164 | case 221: drawThunderstorm(); break; 165 | case 230: drawThunderstorm(); break; 166 | case 231: drawThunderstorm(); break; 167 | case 232: drawThunderstorm(); break; 168 | 169 | case 300: drawLightRain(); break; 170 | case 301: drawLightRain(); break; 171 | case 302: drawLightRain(); break; 172 | case 310: drawLightRain(); break; 173 | case 311: drawLightRain(); break; 174 | case 312: drawLightRain(); break; 175 | case 313: drawLightRain(); break; 176 | case 314: drawLightRain(); break; 177 | case 321: drawLightRain(); break; 178 | 179 | case 500: drawLightRainWithSun(); break; 180 | case 501: drawLightRainWithSun(); break; 181 | case 502: drawLightRainWithSun(); break; 182 | case 503: drawLightRainWithSun(); break; 183 | case 504: drawLightRainWithSun(); break; 184 | case 511: drawLightRain(); break; 185 | case 520: drawHeavyRain(); break; 186 | case 521: drawHeavyRain(); break; 187 | case 522: drawHeavyRain(); break; 188 | case 531: drawHeavyRain(); break; 189 | 190 | case 600: drawLightSnowfall(); break; 191 | case 601: drawHeavySnowfall(); break; 192 | case 602: drawHeavySnowfall(); break; 193 | case 611: drawLightSnowfall(); break; 194 | case 612: drawLightSnowfall(); break; 195 | case 615: drawLightSnowfall(); break; 196 | case 616: drawLightSnowfall(); break; 197 | case 620: drawLightSnowfall(); break; 198 | case 621: drawHeavySnowfall(); break; 199 | case 622: drawHeavySnowfall(); break; 200 | 201 | case 701: drawFog(); break; 202 | case 711: drawFog(); break; 203 | case 721: drawFog(); break; 204 | case 731: drawFog(); break; 205 | case 741: drawFog(); break; 206 | case 751: drawFog(); break; 207 | case 761: drawFog(); break; 208 | case 762: drawFog(); break; 209 | case 771: drawFog(); break; 210 | case 781: drawFog(); break; 211 | 212 | default:break; 213 | } 214 | } 215 | 216 | void Display::drawClearWeather(){ 217 | display.fillCircle(155, 140, 45, INKPLATE_ORANGE); 218 | } 219 | 220 | void Display::drawFewClouds(){ 221 | 222 | display.drawBitmap(100, 90, cloud, 110, 110, INKPLATE_BLUE); 223 | display.drawBitmap(100, 90, sun, 110, 110, INKPLATE_ORANGE); 224 | } 225 | 226 | void Display::drawCloud() { 227 | display.drawBitmap(100, 70, cloud, 110, 110, INKPLATE_BLUE); 228 | } 229 | 230 | void Display::drawThunderstorm() { 231 | display.drawBitmap(100, 80, thunderstorm, 110, 110, INKPLATE_BLUE); 232 | display.drawBitmap(100, 80, thunder, 110, 110, INKPLATE_ORANGE); 233 | } 234 | 235 | void Display::drawLightRain() { 236 | display.drawBitmap(100, 90, light_rain, 110, 110, INKPLATE_BLUE); 237 | } 238 | 239 | void Display::drawHeavyRain() { 240 | display.drawBitmap(100, 84, rain, 110, 110, INKPLATE_BLUE); 241 | } 242 | 243 | void Display::drawLightSnowfall() { 244 | display.drawBitmap(100, 84, snowfall, 110, 110, INKPLATE_BLUE); 245 | } 246 | 247 | void Display::drawHeavySnowfall() { 248 | display.drawBitmap(100, 80, heavy_snowfall, 110, 110, INKPLATE_BLUE); 249 | } 250 | 251 | void Display::drawLightRainWithSun() { 252 | display.drawBitmap(100, 84, sun_light_rain, 110, 110, INKPLATE_ORANGE); 253 | display.drawBitmap(100, 84, light_rain_with_sun, 110, 110, INKPLATE_BLUE); 254 | } 255 | 256 | void Display::drawFog() { 257 | display.drawBitmap(100, 84, fog, 110, 110, INKPLATE_BLUE); 258 | } 259 | -------------------------------------------------------------------------------- /epaper_weather_station/display.h: -------------------------------------------------------------------------------- 1 | #include "Inkplate.h" 2 | 3 | class Display { 4 | 5 | public: 6 | Display(); 7 | void begin(); 8 | void update(); 9 | void printUI(); 10 | void printTemperature(float temperature); 11 | void printHumidity(float humidity); 12 | void printPressure(float pressure); 13 | void printTemperatureGraph(float data[]); 14 | void printHumidityGraph(float data[]); 15 | void printPressureGraph(float data[]); 16 | void printWeatherIcon(int id); 17 | 18 | private: 19 | Inkplate display; 20 | void printFrame(); 21 | void printSmallFrame(int x, int y); 22 | void printTitle(int x, int y, String text); 23 | void drawClearWeather(); 24 | void drawFewClouds(); 25 | void drawCloud(); 26 | void drawThunderstorm(); 27 | void drawLightRain(); 28 | void drawHeavyRain(); 29 | void drawLightSnowfall(); 30 | void drawHeavySnowfall(); 31 | void drawFog(); 32 | void drawLightRainWithSun(); 33 | }; -------------------------------------------------------------------------------- /epaper_weather_station/epaper_weather_station.ino: -------------------------------------------------------------------------------- 1 | #include "sensors.h" 2 | #include "display.h" 3 | #include "EEPROMManager.h" 4 | #include "SensorDataManager.h" 5 | #include "ForecastManager.h" 6 | 7 | #define TIME_TO_SLEEP 360 //Time to sleep in seconds 8 | 9 | char* ssid = "yourSSID"; // SSID of local network 10 | char* password = "yourPassword"; // Password on network 11 | char* APIKEY = "yourAPIKEY"; 12 | char* cityID = "253394"; //Sparta, Greece 13 | 14 | Sensors sensors(13); 15 | Display display; 16 | EEPROMManager memory(512); 17 | SensorDataManager sensorData; 18 | ForecastManager forecast; 19 | 20 | void setup() { 21 | Serial.begin(115200); 22 | sensors.begin(); 23 | memory.begin(); 24 | sensors.readSensors(); 25 | sensorData.initializeData(); 26 | memory.loadSensorData(sensorData.sensorData); 27 | 28 | 29 | display.begin(); 30 | 31 | //Every 6 hours, get the Weather Forecast 32 | if(memory.bootUpCount %60 == 0) { 33 | forecast.begin(ssid, password); 34 | forecast.getForecast(cityID, APIKEY); 35 | memory.saveWeatherId(forecast.id); 36 | } else { 37 | forecast.id = memory.readWeatherId(); 38 | } 39 | 40 | //Every Hour, update the graphs 41 | if(memory.bootUpCount %10 == 0) { 42 | sensorData.updateData(sensors.getTemperature(), sensors.getHumidity(), sensors.getPressure()); 43 | memory.saveSensorData(sensorData.sensorData); 44 | } 45 | 46 | printSensorData(); 47 | 48 | display.printUI(); 49 | 50 | display.printTemperature(sensors.getTemperature()); 51 | display.printHumidity(sensors.getHumidity()); 52 | display.printPressure(sensors.getPressure()); 53 | display.printTemperatureGraph(sensorData.sensorData.temperature); 54 | display.printPressureGraph(sensorData.sensorData.pressure); 55 | display.printHumidityGraph(sensorData.sensorData.humidity); 56 | display.printWeatherIcon(forecast.id); 57 | 58 | display.update(); 59 | 60 | memory.incrementBootupCount(); 61 | sleep(); 62 | } 63 | 64 | void loop() { 65 | 66 | } 67 | 68 | void printSensorData() { 69 | Serial.println("Sensor Data:"); 70 | for (int i = 0; i < 24; ++i) { 71 | Serial.print("Index "); 72 | Serial.print(i); 73 | Serial.print(": Temp="); 74 | Serial.print(sensorData.sensorData.temperature[i], 1); 75 | Serial.print(", Humidity="); 76 | Serial.print(sensorData.sensorData.humidity[i], 1); 77 | Serial.print(", Pressure="); 78 | Serial.println(sensorData.sensorData.pressure[i], 1); 79 | } 80 | Serial.println(); 81 | } 82 | 83 | void sleep() { 84 | esp_sleep_enable_timer_wakeup(TIME_TO_SLEEP * 1000000); 85 | esp_deep_sleep_start(); 86 | } -------------------------------------------------------------------------------- /epaper_weather_station/icons.h: -------------------------------------------------------------------------------- 1 | const uint8_t cloud[] PROGMEM = { 2 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 3 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 4 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 5 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 6 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 7 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 8 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 9 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 10 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 11 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 12 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 13 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 14 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 15 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 16 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 17 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 18 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 19 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 20 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 21 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 22 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 23 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 24 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 25 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 26 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 27 | 0x0,0x0,0x0,0x0,0x1,0x7f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 28 | 0x0,0x0,0x0,0x0,0xf,0xff,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 29 | 0x0,0x0,0x0,0x0,0x3f,0xff,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 30 | 0x0,0x0,0x0,0x0,0xff,0xff,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0, 31 | 0x0,0x0,0x0,0x3,0xff,0xff,0xff,0xe0,0x0,0x0,0x0,0x0,0x0,0x0, 32 | 0x0,0x0,0x0,0x7,0xff,0xff,0xff,0xf8,0x0,0x0,0x0,0x0,0x0,0x0, 33 | 0x0,0x0,0x0,0xf,0xff,0xff,0xff,0xfc,0x0,0x0,0x0,0x0,0x0,0x0, 34 | 0x0,0x0,0x0,0x1f,0xff,0x0,0x7f,0xfe,0x0,0x0,0x0,0x0,0x0,0x0, 35 | 0x0,0x0,0x0,0x3f,0xf8,0x0,0xf,0xff,0x0,0x0,0x0,0x0,0x0,0x0, 36 | 0x0,0x0,0x0,0x7f,0xe0,0x0,0x3,0xff,0x80,0x0,0x0,0x0,0x0,0x0, 37 | 0x0,0x0,0x0,0xff,0x80,0x0,0x0,0xff,0x80,0x0,0x0,0x0,0x0,0x0, 38 | 0x0,0x0,0x1,0xff,0x0,0x0,0x0,0x7f,0xc0,0x0,0x0,0x0,0x0,0x0, 39 | 0x0,0x0,0x1,0xfe,0x0,0x0,0x0,0x3f,0xe0,0x0,0x0,0x0,0x0,0x0, 40 | 0x0,0x0,0x3,0xfc,0x0,0x0,0x0,0x1f,0xe0,0x0,0x0,0x0,0x0,0x0, 41 | 0x0,0x0,0x3,0xfc,0x0,0x0,0x0,0xf,0xf7,0xfd,0x0,0x0,0x0,0x0, 42 | 0x0,0x0,0x7,0xf8,0x0,0x0,0x0,0xf,0xff,0xff,0xc0,0x0,0x0,0x0, 43 | 0x0,0x0,0x7,0xf0,0x0,0x0,0x0,0x7,0xff,0xff,0xf0,0x0,0x0,0x0, 44 | 0x0,0x0,0xf,0xf0,0x0,0x0,0x0,0x3,0xff,0xff,0xf8,0x0,0x0,0x0, 45 | 0x0,0x0,0xf,0xe0,0x0,0x0,0x0,0x3,0xff,0xff,0xfe,0x0,0x0,0x0, 46 | 0x0,0x0,0xf,0xe0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0x0,0x0,0x0, 47 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0x80,0x0,0x0, 48 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x1,0xf8,0x3,0xff,0xc0,0x0,0x0, 49 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x0,0x60,0x0,0x7f,0xe0,0x0,0x0, 50 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xe0,0x0,0x0, 51 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xf0,0x0,0x0, 52 | 0x0,0x0,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0,0x0,0x0, 53 | 0x0,0x3,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8,0x0,0x0, 54 | 0x0,0xf,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8,0x0,0x0, 55 | 0x0,0x3f,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xfc,0x0,0x0, 56 | 0x0,0x7f,0xff,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 57 | 0x0,0xff,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 58 | 0x1,0xff,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 59 | 0x3,0xff,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 60 | 0x7,0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfc,0x0,0x0, 61 | 0xf,0xfc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfe,0x0,0x0, 62 | 0xf,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0x80,0x0, 63 | 0x1f,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xf0,0x0, 64 | 0x1f,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xf8,0x0, 65 | 0x3f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xfe,0x0, 66 | 0x3f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xff,0x0, 67 | 0x7f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xff,0x80, 68 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x17,0xff,0xc0, 69 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xc0, 70 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xe0, 71 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xf0, 72 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0, 73 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf0, 74 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8, 75 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 76 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 77 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 78 | 0x7e,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 79 | 0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 80 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 81 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 82 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 83 | 0x3f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 84 | 0x3f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 85 | 0x3f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 86 | 0x1f,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8, 87 | 0xf,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0, 88 | 0xf,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0, 89 | 0x7,0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xf0, 90 | 0x3,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0xe0, 91 | 0x3,0xff,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xff,0xc0, 92 | 0x0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80, 93 | 0x0,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80, 94 | 0x0,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x0, 95 | 0x0,0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0x0, 96 | 0x0,0x7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf8,0x0, 97 | 0x0,0x1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc0,0x0, 98 | 0x0,0x0,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x0,0x0, 99 | 0x0,0x0,0x0,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 100 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 101 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 102 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 103 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 104 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 105 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 106 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 107 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 108 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 109 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 110 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 111 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 112 | }; 113 | 114 | const uint8_t sun[] PROGMEM = { 115 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 116 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x17,0xfd,0x0,0x0,0x0,0x0, 117 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xff,0xe0,0x0,0x0,0x0, 118 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xff,0xff,0xfc,0x0,0x0,0x0, 119 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xff,0xff,0xff,0x80,0x0,0x0, 120 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0xff,0xff,0xff,0xc0,0x0,0x0, 121 | 0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0xff,0xf0,0x0,0x0, 122 | 0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xff,0xff,0xff,0xff,0xf8,0x0,0x0, 123 | 0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xff,0xff,0xff,0xff,0xfe,0x0,0x0, 124 | 0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xff,0xff,0xff,0xff,0xff,0x0,0x0, 125 | 0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xff,0xff,0xff,0xff,0xff,0x80,0x0, 126 | 0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0xff,0xff,0xff,0xff,0xff,0xc0,0x0, 127 | 0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xff,0xff,0xff,0xff,0xff,0xe0,0x0, 128 | 0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0xff,0xff,0xff,0xf0,0x0, 129 | 0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0xff,0xff,0xff,0xf0,0x0, 130 | 0x0,0x0,0x0,0x0,0x0,0x3,0xff,0xff,0xff,0xff,0xff,0xff,0xf8,0x0, 131 | 0x0,0x0,0x0,0x0,0x0,0x7,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0x0, 132 | 0x0,0x0,0x0,0x0,0x0,0x7,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0x0, 133 | 0x0,0x0,0x0,0x0,0x0,0xf,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x0, 134 | 0x0,0x0,0x0,0x0,0x0,0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0, 135 | 0x0,0x0,0x0,0x0,0x0,0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0, 136 | 0x0,0x0,0x0,0x0,0x0,0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x0, 137 | 0x0,0x0,0x0,0x0,0x0,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80, 138 | 0x0,0x0,0x0,0x0,0x0,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80, 139 | 0x0,0x0,0x0,0x0,0x0,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc0, 140 | 0x0,0x0,0x0,0x0,0x0,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc0, 141 | 0x0,0x0,0x0,0x0,0x0,0x78,0xf,0xff,0xff,0xff,0xff,0xff,0xff,0xc0, 142 | 0x0,0x0,0x0,0x0,0x0,0x40,0x1,0xff,0xff,0xff,0xff,0xff,0xff,0xc0, 143 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0xff,0xff,0xff,0xff,0xff,0xe0, 144 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xff,0xff,0xff,0xff,0xff,0xc0, 145 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xff,0xff,0xff,0xff,0xff,0xe0, 146 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xff,0xff,0xff,0xff,0xff,0xe0, 147 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xff,0xff,0xff,0xff,0xff,0xe0, 148 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xff,0xff,0xff,0xff,0xff,0xe0, 149 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xff,0xff,0xff,0xff,0xff,0xe0, 150 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0xff,0xff,0xe0, 151 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0xff,0xff,0xe0, 152 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0xff,0xff,0xe0, 153 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xff,0xff,0xff,0xff,0xe0, 154 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfe,0x3,0xff,0xff,0xff,0xe0, 155 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf0,0x0,0x7f,0xff,0xff,0xc0, 156 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc0,0x0,0x1f,0xff,0xff,0xc0, 157 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0x0,0xf,0xff,0xff,0xc0, 158 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xff,0xff,0xc0, 159 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xff,0xff,0x80, 160 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xff,0x80, 161 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xff,0x80, 162 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xff,0x0, 163 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0xff,0x0, 164 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xfe,0x0, 165 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xfe,0x0, 166 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xfc,0x0, 167 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xfc,0x0, 168 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xf8,0x0, 169 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0,0x0, 170 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0,0x0, 171 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xe0,0x0, 172 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xc0,0x0, 173 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0x80,0x0, 174 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0x0,0x0, 175 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe,0x0,0x0, 176 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x18,0x0,0x0, 177 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10,0x0,0x0, 178 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 179 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 180 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 181 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 182 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 183 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 184 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 185 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 186 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 187 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 188 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 189 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 190 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 191 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 192 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 193 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 194 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 195 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 196 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 197 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 198 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 199 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 200 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 201 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 202 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 203 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 204 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 205 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 206 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 207 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 208 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 209 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 210 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 211 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 212 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 213 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 214 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 215 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 216 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 217 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 218 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 219 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 220 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 221 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 222 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 223 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 224 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 225 | }; 226 | 227 | const uint8_t thunderstorm[] PROGMEM = { 228 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 229 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 230 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 231 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 232 | 0x0,0x0,0x0,0x0,0x1,0x7f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 233 | 0x0,0x0,0x0,0x0,0xf,0xff,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 234 | 0x0,0x0,0x0,0x0,0x3f,0xff,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 235 | 0x0,0x0,0x0,0x0,0xff,0xff,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0, 236 | 0x0,0x0,0x0,0x3,0xff,0xff,0xff,0xe0,0x0,0x0,0x0,0x0,0x0,0x0, 237 | 0x0,0x0,0x0,0x7,0xff,0xff,0xff,0xf8,0x0,0x0,0x0,0x0,0x0,0x0, 238 | 0x0,0x0,0x0,0xf,0xff,0xff,0xff,0xfc,0x0,0x0,0x0,0x0,0x0,0x0, 239 | 0x0,0x0,0x0,0x1f,0xff,0x0,0x7f,0xfe,0x0,0x0,0x0,0x0,0x0,0x0, 240 | 0x0,0x0,0x0,0x3f,0xf8,0x0,0xf,0xff,0x0,0x0,0x0,0x0,0x0,0x0, 241 | 0x0,0x0,0x0,0x7f,0xe0,0x0,0x3,0xff,0x80,0x0,0x0,0x0,0x0,0x0, 242 | 0x0,0x0,0x0,0xff,0x80,0x0,0x0,0xff,0x80,0x0,0x0,0x0,0x0,0x0, 243 | 0x0,0x0,0x1,0xff,0x0,0x0,0x0,0x7f,0xc0,0x0,0x0,0x0,0x0,0x0, 244 | 0x0,0x0,0x1,0xfe,0x0,0x0,0x0,0x3f,0xe0,0x0,0x0,0x0,0x0,0x0, 245 | 0x0,0x0,0x3,0xfc,0x0,0x0,0x0,0x1f,0xe0,0x0,0x0,0x0,0x0,0x0, 246 | 0x0,0x0,0x3,0xfc,0x0,0x0,0x0,0xf,0xf7,0xfd,0x0,0x0,0x0,0x0, 247 | 0x0,0x0,0x7,0xf8,0x0,0x0,0x0,0xf,0xff,0xff,0xc0,0x0,0x0,0x0, 248 | 0x0,0x0,0x7,0xf0,0x0,0x0,0x0,0x7,0xff,0xff,0xf0,0x0,0x0,0x0, 249 | 0x0,0x0,0xf,0xf0,0x0,0x0,0x0,0x3,0xff,0xff,0xf8,0x0,0x0,0x0, 250 | 0x0,0x0,0xf,0xe0,0x0,0x0,0x0,0x3,0xff,0xff,0xfe,0x0,0x0,0x0, 251 | 0x0,0x0,0xf,0xe0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0x0,0x0,0x0, 252 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0x80,0x0,0x0, 253 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x1,0xf8,0x3,0xff,0xc0,0x0,0x0, 254 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x0,0x60,0x0,0x7f,0xe0,0x0,0x0, 255 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xe0,0x0,0x0, 256 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xf0,0x0,0x0, 257 | 0x0,0x0,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0,0x0,0x0, 258 | 0x0,0x3,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8,0x0,0x0, 259 | 0x0,0xf,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8,0x0,0x0, 260 | 0x0,0x3f,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xfc,0x0,0x0, 261 | 0x0,0x7f,0xff,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 262 | 0x0,0xff,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 263 | 0x1,0xff,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 264 | 0x3,0xff,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 265 | 0x7,0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfc,0x0,0x0, 266 | 0xf,0xfc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfe,0x0,0x0, 267 | 0xf,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0x80,0x0, 268 | 0x1f,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xf0,0x0, 269 | 0x1f,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xf8,0x0, 270 | 0x3f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xfe,0x0, 271 | 0x3f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xff,0x0, 272 | 0x7f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xff,0x80, 273 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x17,0xff,0xc0, 274 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xc0, 275 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xe0, 276 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xf0, 277 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0, 278 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf0, 279 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8, 280 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 281 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 282 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 283 | 0x7e,0x0,0x0,0x0,0x0,0x7,0xff,0xfc,0x0,0x0,0x0,0x0,0x1,0xfc, 284 | 0xff,0x0,0x0,0x0,0x0,0xf,0xff,0xfc,0x0,0x0,0x0,0x0,0x1,0xfc, 285 | 0x7f,0x0,0x0,0x0,0x0,0xf,0xff,0xfc,0x0,0x0,0x0,0x0,0x1,0xfc, 286 | 0x7f,0x0,0x0,0x0,0x0,0xf,0xff,0xfc,0x0,0x0,0x0,0x0,0x1,0xfc, 287 | 0x7f,0x0,0x0,0x0,0x0,0x1f,0xff,0xfc,0x0,0x0,0x0,0x0,0x1,0xfc, 288 | 0x3f,0x80,0x0,0x0,0x0,0x1f,0x0,0x7c,0x0,0x0,0x0,0x0,0x3,0xf8, 289 | 0x3f,0xc0,0x0,0x0,0x0,0x1f,0x0,0x7c,0x0,0x0,0x0,0x0,0x3,0xf8, 290 | 0x3f,0xc0,0x0,0x0,0x0,0x1f,0x0,0x7c,0x0,0x0,0x0,0x0,0x3,0xf8, 291 | 0x1f,0xe0,0x0,0x0,0x0,0x1f,0x0,0xf8,0x0,0x0,0x0,0x0,0x7,0xf8, 292 | 0xf,0xf0,0x0,0x0,0x0,0x3f,0x0,0xf8,0x0,0x0,0x0,0x0,0xf,0xf0, 293 | 0xf,0xf8,0x0,0x0,0x0,0x3f,0x0,0xf8,0x0,0x0,0x0,0x0,0xf,0xf0, 294 | 0x7,0xfe,0x0,0x0,0x0,0x3e,0x0,0xf8,0x0,0x0,0x0,0x0,0x3f,0xf0, 295 | 0x3,0xff,0x0,0x0,0x0,0x3e,0x0,0xf8,0x0,0x0,0x0,0x0,0x7f,0xe0, 296 | 0x3,0xff,0xe0,0x0,0x0,0x3e,0x1,0xf0,0x0,0x0,0x0,0x3,0xff,0xc0, 297 | 0x0,0xff,0xff,0xff,0xff,0xbf,0x55,0xfb,0x7f,0xff,0xff,0xff,0xff,0x80, 298 | 0x0,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80, 299 | 0x0,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x0, 300 | 0x0,0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0x0, 301 | 0x0,0x7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf0,0x0, 302 | 0x0,0x1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc0,0x0, 303 | 0x0,0x0,0x3f,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xfe,0x0,0x0, 304 | 0x0,0x0,0x0,0x80,0x0,0xfc,0x92,0xff,0xff,0x80,0x0,0x0,0x0,0x0, 305 | 0x0,0x0,0x0,0x0,0x0,0xf8,0x0,0x0,0x1f,0x80,0x0,0x0,0x0,0x0, 306 | 0x0,0x0,0x0,0x0,0x0,0xf8,0x0,0x0,0x3f,0x0,0x0,0x0,0x0,0x0, 307 | 0x0,0x0,0x0,0x0,0x0,0xf8,0x0,0x0,0x7e,0x0,0x0,0x0,0x0,0x0, 308 | 0x0,0x0,0x0,0x0,0x0,0xf8,0x0,0x0,0x7e,0x0,0x0,0x0,0x0,0x0, 309 | 0x0,0x0,0x0,0x0,0x1,0xf0,0x0,0x0,0xfc,0x0,0x0,0x0,0x0,0x0, 310 | 0x0,0x0,0x0,0x0,0x1,0xff,0xff,0x81,0xfc,0x0,0x0,0x0,0x0,0x0, 311 | 0x0,0x0,0x0,0x0,0x1,0xff,0xff,0x81,0xf8,0x0,0x0,0x0,0x0,0x0, 312 | 0x0,0x0,0x0,0x0,0x1,0xff,0xff,0x83,0xf0,0x0,0x0,0x0,0x0,0x0, 313 | 0x0,0x0,0x0,0x0,0x1,0xff,0xff,0x83,0xf0,0x0,0x0,0x0,0x0,0x0, 314 | 0x0,0x0,0x0,0x0,0x0,0x0,0xf,0x87,0xe0,0x0,0x0,0x0,0x0,0x0, 315 | 0x0,0x0,0x0,0x0,0x0,0x0,0xf,0x8f,0xc0,0x0,0x0,0x0,0x0,0x0, 316 | 0x0,0x0,0x0,0x0,0x0,0x0,0xf,0x9f,0x80,0x0,0x0,0x0,0x0,0x0, 317 | 0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0x9f,0x80,0x0,0x0,0x0,0x0,0x0, 318 | 0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xbf,0x0,0x0,0x0,0x0,0x0,0x0, 319 | 0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0x3f,0x0,0x0,0x0,0x0,0x0,0x0, 320 | 0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0x7e,0x0,0x0,0x0,0x0,0x0,0x0, 321 | 0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xfc,0x0,0x0,0x0,0x0,0x0,0x0, 322 | 0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xfc,0x0,0x0,0x0,0x0,0x0,0x0, 323 | 0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xf8,0x0,0x0,0x0,0x0,0x0,0x0, 324 | 0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xf0,0x0,0x0,0x0,0x0,0x0,0x0, 325 | 0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xf0,0x0,0x0,0x0,0x0,0x0,0x0, 326 | 0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xe0,0x0,0x0,0x0,0x0,0x0,0x0, 327 | 0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xe0,0x0,0x0,0x0,0x0,0x0,0x0, 328 | 0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0, 329 | 0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0x80,0x0,0x0,0x0,0x0,0x0,0x0, 330 | 0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0x80,0x0,0x0,0x0,0x0,0x0,0x0, 331 | 0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 332 | 0x0,0x0,0x0,0x0,0x0,0x0,0x7e,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 333 | 0x0,0x0,0x0,0x0,0x0,0x0,0x7e,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 334 | 0x0,0x0,0x0,0x0,0x0,0x0,0x7c,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 335 | 0x0,0x0,0x0,0x0,0x0,0x0,0x38,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 336 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 337 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 338 | }; 339 | 340 | const uint8_t thunder[] PROGMEM = { 341 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 342 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 343 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 344 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 345 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 346 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 347 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 348 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 349 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 350 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 351 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 352 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 353 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 354 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 355 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 356 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 357 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 358 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 359 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 360 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 361 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 362 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 363 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 364 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 365 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 366 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 367 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 368 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 369 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 370 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 371 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 372 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 373 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 374 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 375 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 376 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 377 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 378 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 379 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 380 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 381 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 382 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 383 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 384 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 385 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 386 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 387 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 388 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 389 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 390 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 391 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 392 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 393 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 394 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 395 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 396 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 397 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 398 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 399 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 400 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 401 | 0x0,0x0,0x0,0x0,0x0,0x0,0xff,0x80,0x0,0x0,0x0,0x0,0x0,0x0, 402 | 0x0,0x0,0x0,0x0,0x0,0x0,0xff,0x80,0x0,0x0,0x0,0x0,0x0,0x0, 403 | 0x0,0x0,0x0,0x0,0x0,0x0,0xff,0x80,0x0,0x0,0x0,0x0,0x0,0x0, 404 | 0x0,0x0,0x0,0x0,0x0,0x0,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 405 | 0x0,0x0,0x0,0x0,0x0,0x0,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 406 | 0x0,0x0,0x0,0x0,0x0,0x0,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 407 | 0x0,0x0,0x0,0x0,0x0,0x1,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 408 | 0x0,0x0,0x0,0x0,0x0,0x1,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 409 | 0x0,0x0,0x0,0x0,0x0,0x1,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 410 | 0x0,0x0,0x0,0x0,0x0,0x1,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 411 | 0x0,0x0,0x0,0x0,0x0,0x1,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 412 | 0x0,0x0,0x0,0x0,0x0,0x3,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 413 | 0x0,0x0,0x0,0x0,0x0,0x3,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 414 | 0x0,0x0,0x0,0x0,0x0,0x3,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 415 | 0x0,0x0,0x0,0x0,0x0,0x3,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 416 | 0x0,0x0,0x0,0x0,0x0,0x3,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 417 | 0x0,0x0,0x0,0x0,0x0,0x7,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 418 | 0x0,0x0,0x0,0x0,0x0,0x7,0xff,0xff,0xe0,0x0,0x0,0x0,0x0,0x0, 419 | 0x0,0x0,0x0,0x0,0x0,0x7,0xff,0xff,0xc0,0x0,0x0,0x0,0x0,0x0, 420 | 0x0,0x0,0x0,0x0,0x0,0x7,0xff,0xff,0x80,0x0,0x0,0x0,0x0,0x0, 421 | 0x0,0x0,0x0,0x0,0x0,0x7,0xff,0xff,0x80,0x0,0x0,0x0,0x0,0x0, 422 | 0x0,0x0,0x0,0x0,0x0,0xf,0xff,0xff,0x0,0x0,0x0,0x0,0x0,0x0, 423 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7e,0x0,0x0,0x0,0x0,0x0,0x0, 424 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7e,0x0,0x0,0x0,0x0,0x0,0x0, 425 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7c,0x0,0x0,0x0,0x0,0x0,0x0, 426 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7c,0x0,0x0,0x0,0x0,0x0,0x0, 427 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x78,0x0,0x0,0x0,0x0,0x0,0x0, 428 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x70,0x0,0x0,0x0,0x0,0x0,0x0, 429 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x60,0x0,0x0,0x0,0x0,0x0,0x0, 430 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x60,0x0,0x0,0x0,0x0,0x0,0x0, 431 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x0,0x0,0x0,0x0,0x0,0x0, 432 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc0,0x0,0x0,0x0,0x0,0x0,0x0, 433 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0x0,0x0,0x0,0x0,0x0,0x0, 434 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 435 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 436 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 437 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 438 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 439 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 440 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 441 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 442 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 443 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 444 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 445 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 446 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 447 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 448 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 449 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 450 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 451 | }; 452 | 453 | const uint8_t light_rain[] PROGMEM = { 454 | 0x0,0x0,0x0,0x0,0x1,0xff,0xa0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 455 | 0x0,0x0,0x0,0x0,0xf,0xff,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 456 | 0x0,0x0,0x0,0x0,0x3f,0xff,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 457 | 0x0,0x0,0x0,0x0,0xff,0xff,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0, 458 | 0x0,0x0,0x0,0x3,0xff,0xff,0xff,0xe0,0x0,0x0,0x0,0x0,0x0,0x0, 459 | 0x0,0x0,0x0,0x7,0xff,0xff,0xff,0xf8,0x0,0x0,0x0,0x0,0x0,0x0, 460 | 0x0,0x0,0x0,0xf,0xff,0xff,0xff,0xfc,0x0,0x0,0x0,0x0,0x0,0x0, 461 | 0x0,0x0,0x0,0x3f,0xff,0x0,0x7f,0xfe,0x0,0x0,0x0,0x0,0x0,0x0, 462 | 0x0,0x0,0x0,0x3f,0xf8,0x0,0xf,0xff,0x0,0x0,0x0,0x0,0x0,0x0, 463 | 0x0,0x0,0x0,0x7f,0xe0,0x0,0x3,0xff,0x80,0x0,0x0,0x0,0x0,0x0, 464 | 0x0,0x0,0x0,0xff,0xc0,0x0,0x0,0xff,0x80,0x0,0x0,0x0,0x0,0x0, 465 | 0x0,0x0,0x1,0xff,0x0,0x0,0x0,0x7f,0xc0,0x0,0x0,0x0,0x0,0x0, 466 | 0x0,0x0,0x1,0xfe,0x0,0x0,0x0,0x3f,0xe0,0x0,0x0,0x0,0x0,0x0, 467 | 0x0,0x0,0x3,0xfc,0x0,0x0,0x0,0x1f,0xe0,0x0,0x0,0x0,0x0,0x0, 468 | 0x0,0x0,0x3,0xfc,0x0,0x0,0x0,0xf,0xf7,0xfe,0x0,0x0,0x0,0x0, 469 | 0x0,0x0,0x7,0xf8,0x0,0x0,0x0,0xf,0xff,0xff,0xc0,0x0,0x0,0x0, 470 | 0x0,0x0,0x7,0xf0,0x0,0x0,0x0,0x7,0xff,0xff,0xf0,0x0,0x0,0x0, 471 | 0x0,0x0,0xf,0xf0,0x0,0x0,0x0,0x3,0xff,0xff,0xfc,0x0,0x0,0x0, 472 | 0x0,0x0,0xf,0xe0,0x0,0x0,0x0,0x3,0xff,0xff,0xfe,0x0,0x0,0x0, 473 | 0x0,0x0,0xf,0xe0,0x0,0x0,0x0,0x3,0xff,0xff,0xff,0x0,0x0,0x0, 474 | 0x0,0x0,0x1f,0xe0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0x80,0x0,0x0, 475 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x1,0xf8,0x3,0xff,0xc0,0x0,0x0, 476 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x0,0x60,0x0,0xff,0xe0,0x0,0x0, 477 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xe0,0x0,0x0, 478 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xf0,0x0,0x0, 479 | 0x0,0x0,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0,0x0,0x0, 480 | 0x0,0x3,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8,0x0,0x0, 481 | 0x0,0xf,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8,0x0,0x0, 482 | 0x0,0x3f,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xfc,0x0,0x0, 483 | 0x0,0x7f,0xff,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 484 | 0x0,0xff,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 485 | 0x1,0xff,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 486 | 0x3,0xff,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 487 | 0x7,0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfe,0x0,0x0, 488 | 0xf,0xfc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 489 | 0xf,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0x80,0x0, 490 | 0x1f,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xf0,0x0, 491 | 0x1f,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xf8,0x0, 492 | 0x3f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xfe,0x0, 493 | 0x3f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xff,0x0, 494 | 0x7f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xff,0x80, 495 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x17,0xff,0xc0, 496 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xc0, 497 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xe0, 498 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xf0, 499 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0, 500 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8, 501 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8, 502 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 503 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xfc, 504 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 505 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 506 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 507 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 508 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 509 | 0x7f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 510 | 0x3f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xfc, 511 | 0x3f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 512 | 0x3f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 513 | 0x1f,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8, 514 | 0xf,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0, 515 | 0xf,0xfc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xf0, 516 | 0x7,0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xf0, 517 | 0x3,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0xe0, 518 | 0x3,0xff,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xff,0xc0, 519 | 0x1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80, 520 | 0x0,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80, 521 | 0x0,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x0, 522 | 0x0,0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0x0, 523 | 0x0,0x7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf0,0x0, 524 | 0x0,0x1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd0,0x0, 525 | 0x0,0x0,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x80,0x0, 526 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 527 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 528 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 529 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 530 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 531 | 0x0,0x0,0x0,0x80,0x0,0x0,0x2,0x0,0x0,0x0,0x4,0x0,0x0,0x0, 532 | 0x0,0x0,0x3,0xe0,0x0,0x0,0x7,0xc0,0x0,0x0,0xf,0x80,0x0,0x0, 533 | 0x0,0x0,0x7,0xe0,0x0,0x0,0xf,0xc0,0x0,0x0,0x1f,0x80,0x0,0x0, 534 | 0x0,0x0,0x7,0xf0,0x0,0x0,0xf,0xe0,0x0,0x0,0x3f,0xc0,0x0,0x0, 535 | 0x0,0x0,0xf,0xf0,0x0,0x0,0x1f,0xe0,0x0,0x0,0x3f,0xc0,0x0,0x0, 536 | 0x0,0x0,0xf,0xf0,0x0,0x0,0x1f,0xc0,0x0,0x0,0x3f,0x80,0x0,0x0, 537 | 0x0,0x0,0x1f,0xe0,0x0,0x0,0x3f,0xc0,0x0,0x0,0x7f,0x80,0x0,0x0, 538 | 0x0,0x0,0x1f,0xe0,0x0,0x0,0x3f,0xc0,0x0,0x0,0xff,0x0,0x0,0x0, 539 | 0x0,0x0,0x3f,0xc0,0x0,0x0,0x7f,0x80,0x0,0x0,0xff,0x0,0x0,0x0, 540 | 0x0,0x0,0x3f,0xc0,0x0,0x0,0xff,0x80,0x0,0x1,0xfe,0x0,0x0,0x0, 541 | 0x0,0x0,0x7f,0x80,0x0,0x0,0xff,0x0,0x0,0x1,0xfe,0x0,0x0,0x0, 542 | 0x0,0x0,0x7f,0x80,0x0,0x0,0xff,0x0,0x0,0x1,0xfc,0x0,0x0,0x0, 543 | 0x0,0x0,0xff,0x0,0x0,0x1,0xfe,0x0,0x0,0x3,0xfc,0x0,0x0,0x0, 544 | 0x0,0x0,0xff,0x0,0x0,0x1,0xfe,0x0,0x0,0x7,0xf8,0x0,0x0,0x0, 545 | 0x0,0x1,0xfe,0x0,0x0,0x3,0xfc,0x0,0x0,0x7,0xf8,0x0,0x0,0x0, 546 | 0x0,0x1,0xfe,0x0,0x0,0x7,0xfc,0x0,0x0,0xf,0xf0,0x0,0x0,0x0, 547 | 0x0,0x3,0xfc,0x0,0x0,0x7,0xf8,0x0,0x0,0xf,0xf0,0x0,0x0,0x0, 548 | 0x0,0x3,0xfc,0x0,0x0,0x7,0xf8,0x0,0x0,0xf,0xe0,0x0,0x0,0x0, 549 | 0x0,0x3,0xf8,0x0,0x0,0x7,0xf0,0x0,0x0,0xf,0xe0,0x0,0x0,0x0, 550 | 0x0,0x1,0xf8,0x0,0x0,0x7,0xe0,0x0,0x0,0xf,0xc0,0x0,0x0,0x0, 551 | 0x0,0x1,0xf0,0x0,0x0,0x3,0xe0,0x0,0x0,0x7,0xc0,0x0,0x0,0x0, 552 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 553 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 554 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 555 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 556 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 557 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 558 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 559 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 560 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 561 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x00,0x0,0x0,0x0,0x0, 562 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 563 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 564 | }; 565 | 566 | const uint8_t rain[] PROGMEM = { 567 | 0x0,0x0,0x0,0x0,0x1,0xff,0xa0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 568 | 0x0,0x0,0x0,0x0,0xf,0xff,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 569 | 0x0,0x0,0x0,0x0,0x3f,0xff,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 570 | 0x0,0x0,0x0,0x0,0xff,0xff,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0, 571 | 0x0,0x0,0x0,0x3,0xff,0xff,0xff,0xe0,0x0,0x0,0x0,0x0,0x0,0x0, 572 | 0x0,0x0,0x0,0x7,0xff,0xff,0xff,0xf8,0x0,0x0,0x0,0x0,0x0,0x0, 573 | 0x0,0x0,0x0,0xf,0xff,0xff,0xff,0xfc,0x0,0x0,0x0,0x0,0x0,0x0, 574 | 0x0,0x0,0x0,0x3f,0xff,0x0,0x7f,0xfe,0x0,0x0,0x0,0x0,0x0,0x0, 575 | 0x0,0x0,0x0,0x3f,0xf8,0x0,0xf,0xff,0x0,0x0,0x0,0x0,0x0,0x0, 576 | 0x0,0x0,0x0,0x7f,0xe0,0x0,0x3,0xff,0x80,0x0,0x0,0x0,0x0,0x0, 577 | 0x0,0x0,0x0,0xff,0xc0,0x0,0x0,0xff,0x80,0x0,0x0,0x0,0x0,0x0, 578 | 0x0,0x0,0x1,0xff,0x0,0x0,0x0,0x7f,0xc0,0x0,0x0,0x0,0x0,0x0, 579 | 0x0,0x0,0x1,0xfe,0x0,0x0,0x0,0x3f,0xe0,0x0,0x0,0x0,0x0,0x0, 580 | 0x0,0x0,0x3,0xfc,0x0,0x0,0x0,0x1f,0xe0,0x0,0x0,0x0,0x0,0x0, 581 | 0x0,0x0,0x3,0xfc,0x0,0x0,0x0,0xf,0xf7,0xfe,0x0,0x0,0x0,0x0, 582 | 0x0,0x0,0x7,0xf8,0x0,0x0,0x0,0xf,0xff,0xff,0xc0,0x0,0x0,0x0, 583 | 0x0,0x0,0x7,0xf0,0x0,0x0,0x0,0x7,0xff,0xff,0xf0,0x0,0x0,0x0, 584 | 0x0,0x0,0xf,0xf0,0x0,0x0,0x0,0x3,0xff,0xff,0xfc,0x0,0x0,0x0, 585 | 0x0,0x0,0xf,0xe0,0x0,0x0,0x0,0x3,0xff,0xff,0xfe,0x0,0x0,0x0, 586 | 0x0,0x0,0xf,0xe0,0x0,0x0,0x0,0x3,0xff,0xff,0xff,0x0,0x0,0x0, 587 | 0x0,0x0,0x1f,0xe0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0x80,0x0,0x0, 588 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x1,0xf8,0x3,0xff,0xc0,0x0,0x0, 589 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x0,0x60,0x0,0xff,0xe0,0x0,0x0, 590 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xe0,0x0,0x0, 591 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xf0,0x0,0x0, 592 | 0x0,0x0,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0,0x0,0x0, 593 | 0x0,0x3,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8,0x0,0x0, 594 | 0x0,0xf,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8,0x0,0x0, 595 | 0x0,0x3f,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xfc,0x0,0x0, 596 | 0x0,0x7f,0xff,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 597 | 0x0,0xff,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 598 | 0x1,0xff,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 599 | 0x3,0xff,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 600 | 0x7,0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfe,0x0,0x0, 601 | 0xf,0xfc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 602 | 0xf,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0x80,0x0, 603 | 0x1f,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xf0,0x0, 604 | 0x1f,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xf8,0x0, 605 | 0x3f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xfe,0x0, 606 | 0x3f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xff,0x0, 607 | 0x7f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xff,0x80, 608 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x17,0xff,0xc0, 609 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xc0, 610 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xe0, 611 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xf0, 612 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0, 613 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8, 614 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8, 615 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 616 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xfc, 617 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 618 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 619 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 620 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 621 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 622 | 0x7f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 623 | 0x3f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xfc, 624 | 0x3f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 625 | 0x3f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 626 | 0x1f,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8, 627 | 0xf,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0, 628 | 0xf,0xfc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xf0, 629 | 0x7,0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xf0, 630 | 0x3,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0xe0, 631 | 0x3,0xff,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xff,0xc0, 632 | 0x1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80, 633 | 0x0,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80, 634 | 0x0,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x0, 635 | 0x0,0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0x0, 636 | 0x0,0x7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf0,0x0, 637 | 0x0,0x1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd0,0x0, 638 | 0x0,0x0,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x80,0x0, 639 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 640 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 641 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 642 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 643 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 644 | 0x0,0x18,0x0,0x0,0x0,0x70,0x0,0x0,0x0,0xe0,0x0,0x0,0x1,0x80, 645 | 0x0,0x7e,0x0,0x0,0x0,0xfc,0x0,0x0,0x1,0xf8,0x0,0x0,0x3,0xe0, 646 | 0x0,0x7e,0x0,0x0,0x0,0xfc,0x0,0x0,0x3,0xf8,0x0,0x0,0x7,0xf0, 647 | 0x0,0xff,0x0,0x0,0x1,0xfc,0x0,0x0,0x3,0xf8,0x0,0x0,0x7,0xf0, 648 | 0x0,0xfe,0x0,0x0,0x3,0xfe,0x0,0x0,0x7,0xf8,0x0,0x0,0xf,0xf0, 649 | 0x1,0xfe,0x0,0x0,0x3,0xfc,0x0,0x0,0x7,0xf8,0x0,0x0,0xf,0xf0, 650 | 0x1,0xfe,0x0,0x0,0x3,0xf8,0x0,0x0,0xf,0xf0,0x0,0x0,0x1f,0xe0, 651 | 0x3,0xfc,0x0,0x0,0x7,0xf8,0x0,0x0,0xf,0xf0,0x0,0x0,0x1f,0xe0, 652 | 0x3,0xfc,0x0,0x0,0xf,0xf0,0x0,0x0,0x1f,0xe0,0x0,0x0,0x3f,0xc0, 653 | 0x7,0xf8,0x0,0x0,0xf,0xf0,0x0,0x0,0x1f,0xe0,0x0,0x0,0x3f,0xc0, 654 | 0x7,0xf8,0x0,0x0,0xf,0xf0,0x0,0x0,0x3f,0xc0,0x0,0x0,0x7f,0x80, 655 | 0xf,0xf0,0x0,0x0,0x1f,0xe0,0x0,0x0,0x3f,0xc0,0x0,0x0,0x7f,0x80, 656 | 0xf,0xf0,0x6,0x0,0x3f,0xc0,0xe,0x0,0x7f,0x80,0x18,0x0,0xff,0x0, 657 | 0x1f,0xe0,0xf,0x80,0x3f,0xc0,0x3f,0x0,0x7f,0x80,0x7e,0x0,0xff,0x0, 658 | 0x1f,0xe0,0x1f,0xc0,0x3f,0xc0,0x3f,0x0,0xff,0x0,0x7e,0x1,0xfe,0x0, 659 | 0x3f,0xc0,0x1f,0xc0,0x7f,0x80,0x3f,0x80,0xff,0x0,0xff,0x1,0xfe,0x0, 660 | 0x3f,0xc0,0x3f,0xc0,0x7f,0x0,0x7f,0x81,0xfe,0x0,0xff,0x3,0xfc,0x0, 661 | 0x3f,0x80,0x3f,0x80,0xff,0x0,0xff,0x0,0xfe,0x1,0xfe,0x3,0xfc,0x0, 662 | 0x3f,0x80,0x7f,0x80,0x7f,0x0,0xff,0x1,0xfc,0x1,0xfe,0x1,0xf8,0x0, 663 | 0x3f,0x0,0x7f,0x0,0x7e,0x0,0xfe,0x0,0xfc,0x3,0xfc,0x1,0xf8,0x0, 664 | 0xe,0x0,0xff,0x0,0x3c,0x1,0xfe,0x0,0x70,0x3,0xfc,0x0,0xe0,0x0, 665 | 0x0,0x0,0xfe,0x0,0x0,0x3,0xfc,0x0,0x0,0x7,0xf8,0x0,0x0,0x0, 666 | 0x0,0x1,0xfe,0x0,0x0,0x3,0xfc,0x0,0x0,0x7,0xf8,0x0,0x0,0x0, 667 | 0x0,0x1,0xfc,0x0,0x0,0x3,0xf8,0x0,0x0,0xf,0xf0,0x0,0x0,0x0, 668 | 0x0,0x3,0xfc,0x0,0x0,0x7,0xf8,0x0,0x0,0xf,0xf0,0x0,0x0,0x0, 669 | 0x0,0x3,0xf8,0x0,0x0,0x7,0xf0,0x0,0x0,0x1f,0xe0,0x0,0x0,0x0, 670 | 0x0,0x7,0xf8,0x0,0x0,0xf,0xf0,0x0,0x0,0x1f,0xe0,0x0,0x0,0x0, 671 | 0x0,0x7,0xf0,0x0,0x0,0x1f,0xe0,0x0,0x0,0x3f,0xc0,0x0,0x0,0x0, 672 | 0x0,0xf,0xf0,0x0,0x0,0x1f,0xe0,0x0,0x0,0x3f,0xc0,0x0,0x0,0x0, 673 | 0x0,0xf,0xe0,0x0,0x0,0x1f,0xc0,0x0,0x0,0x3f,0x80,0x0,0x0,0x0, 674 | 0x0,0xf,0xe0,0x0,0x0,0x1f,0xc0,0x0,0x0,0x3f,0x80,0x0,0x0,0x0, 675 | 0x0,0x7,0xc0,0x0,0x0,0xf,0x80,0x0,0x0,0x3f,0x0,0x0,0x0,0x0, 676 | 0x0,0x3,0x80,0x0,0x0,0xf,0x0,0x0,0x0,0xe,0x0,0x0,0x0,0x0, 677 | }; 678 | 679 | 680 | const uint8_t snowfall[] PROGMEM = { 681 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 682 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 683 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 684 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 685 | 0x0,0x0,0x0,0x0,0x1,0x7f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 686 | 0x0,0x0,0x0,0x0,0xf,0xff,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 687 | 0x0,0x0,0x0,0x0,0x3f,0xff,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 688 | 0x0,0x0,0x0,0x0,0xff,0xff,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0, 689 | 0x0,0x0,0x0,0x3,0xff,0xff,0xff,0xe0,0x0,0x0,0x0,0x0,0x0,0x0, 690 | 0x0,0x0,0x0,0x7,0xff,0xff,0xff,0xf8,0x0,0x0,0x0,0x0,0x0,0x0, 691 | 0x0,0x0,0x0,0xf,0xff,0xff,0xff,0xfc,0x0,0x0,0x0,0x0,0x0,0x0, 692 | 0x0,0x0,0x0,0x1f,0xff,0x0,0x7f,0xfe,0x0,0x0,0x0,0x0,0x0,0x0, 693 | 0x0,0x0,0x0,0x3f,0xf8,0x0,0xf,0xff,0x0,0x0,0x0,0x0,0x0,0x0, 694 | 0x0,0x0,0x0,0x7f,0xe0,0x0,0x3,0xff,0x80,0x0,0x0,0x0,0x0,0x0, 695 | 0x0,0x0,0x0,0xff,0x80,0x0,0x0,0xff,0x80,0x0,0x0,0x0,0x0,0x0, 696 | 0x0,0x0,0x1,0xff,0x0,0x0,0x0,0x7f,0xc0,0x0,0x0,0x0,0x0,0x0, 697 | 0x0,0x0,0x1,0xfe,0x0,0x0,0x0,0x3f,0xe0,0x0,0x0,0x0,0x0,0x0, 698 | 0x0,0x0,0x3,0xfc,0x0,0x0,0x0,0x1f,0xe0,0x0,0x0,0x0,0x0,0x0, 699 | 0x0,0x0,0x3,0xfc,0x0,0x0,0x0,0xf,0xf7,0xfd,0x0,0x0,0x0,0x0, 700 | 0x0,0x0,0x7,0xf8,0x0,0x0,0x0,0xf,0xff,0xff,0xc0,0x0,0x0,0x0, 701 | 0x0,0x0,0x7,0xf0,0x0,0x0,0x0,0x7,0xff,0xff,0xf0,0x0,0x0,0x0, 702 | 0x0,0x0,0xf,0xf0,0x0,0x0,0x0,0x3,0xff,0xff,0xf8,0x0,0x0,0x0, 703 | 0x0,0x0,0xf,0xe0,0x0,0x0,0x0,0x3,0xff,0xff,0xfe,0x0,0x0,0x0, 704 | 0x0,0x0,0xf,0xe0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0x0,0x0,0x0, 705 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0x80,0x0,0x0, 706 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x1,0xf8,0x3,0xff,0xc0,0x0,0x0, 707 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x0,0x60,0x0,0x7f,0xe0,0x0,0x0, 708 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xe0,0x0,0x0, 709 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xf0,0x0,0x0, 710 | 0x0,0x0,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0,0x0,0x0, 711 | 0x0,0x3,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8,0x0,0x0, 712 | 0x0,0xf,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8,0x0,0x0, 713 | 0x0,0x3f,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xfc,0x0,0x0, 714 | 0x0,0x7f,0xff,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 715 | 0x0,0xff,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 716 | 0x1,0xff,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 717 | 0x3,0xff,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 718 | 0x7,0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfc,0x0,0x0, 719 | 0xf,0xfc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfe,0x0,0x0, 720 | 0xf,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0x80,0x0, 721 | 0x1f,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xf0,0x0, 722 | 0x1f,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xf8,0x0, 723 | 0x3f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xfe,0x0, 724 | 0x3f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xff,0x0, 725 | 0x7f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xff,0x80, 726 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x17,0xff,0xc0, 727 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xc0, 728 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xe0, 729 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xf0, 730 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0, 731 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf0, 732 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8, 733 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 734 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 735 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 736 | 0x7e,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 737 | 0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 738 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 739 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 740 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 741 | 0x3f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 742 | 0x3f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 743 | 0x3f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 744 | 0x1f,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8, 745 | 0xf,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0, 746 | 0xf,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0, 747 | 0x7,0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xf0, 748 | 0x3,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0xe0, 749 | 0x3,0xff,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xff,0xc0, 750 | 0x0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80, 751 | 0x0,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80, 752 | 0x0,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x0, 753 | 0x0,0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0x0, 754 | 0x0,0x7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf8,0x0, 755 | 0x0,0x1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc0,0x0, 756 | 0x0,0x0,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x0,0x0, 757 | 0x0,0x0,0x0,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 758 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 759 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 760 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 761 | 0x0,0x0,0x0,0x0,0xe,0x38,0x0,0x1,0xc7,0x0,0x0,0x0,0x0,0x0, 762 | 0x0,0x0,0x0,0x0,0x1f,0x7c,0x0,0x3,0xef,0x80,0x0,0x0,0x0,0x0, 763 | 0x0,0x0,0x0,0x0,0x1f,0x7c,0x0,0x3,0xef,0x80,0x0,0x0,0x0,0x0, 764 | 0x0,0x0,0x0,0x0,0x1f,0xf8,0x0,0x3,0xff,0x0,0x0,0x0,0x0,0x0, 765 | 0x0,0x0,0x0,0x0,0xf,0xf8,0x0,0x1,0xff,0x0,0x0,0x0,0x0,0x0, 766 | 0x0,0x0,0x0,0x0,0x7f,0xff,0x0,0xf,0xff,0xe0,0x0,0x0,0x0,0x0, 767 | 0x0,0x0,0x0,0x0,0xff,0xff,0x80,0x1f,0xff,0xf0,0x0,0x0,0x0,0x0, 768 | 0x0,0x0,0x0,0x0,0xff,0xff,0x80,0x1f,0xff,0xf0,0x0,0x0,0x0,0x0, 769 | 0x0,0x0,0x0,0x0,0xff,0xff,0x80,0x1f,0xff,0xf0,0x0,0x0,0x0,0x0, 770 | 0x0,0x0,0x0,0x0,0x7f,0xff,0x0,0xf,0xff,0xe0,0x0,0x0,0x0,0x0, 771 | 0x0,0x0,0x0,0x0,0xf,0xf8,0x0,0x1,0xff,0x0,0x0,0x0,0x0,0x0, 772 | 0x0,0x0,0x0,0x0,0x1f,0xfc,0x0,0x3,0xff,0x80,0x0,0x0,0x0,0x0, 773 | 0x0,0x0,0x0,0x0,0x1f,0x7c,0x0,0x3,0xef,0x80,0x0,0x0,0x0,0x0, 774 | 0x0,0x0,0x0,0x0,0x1f,0x7c,0x0,0x3,0xef,0x80,0x0,0x0,0x0,0x0, 775 | 0x0,0x0,0x0,0x0,0xe,0x38,0x0,0x1,0xc7,0x0,0x0,0x0,0x0,0x0, 776 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 777 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 778 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 779 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 780 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 781 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 782 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 783 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 784 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 785 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 786 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 787 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 788 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 789 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 790 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 791 | }; 792 | 793 | const uint8_t heavy_snowfall[] PROGMEM = { 794 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 795 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 796 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 797 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 798 | 0x0,0x0,0x0,0x0,0x1,0x7f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 799 | 0x0,0x0,0x0,0x0,0xf,0xff,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 800 | 0x0,0x0,0x0,0x0,0x3f,0xff,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 801 | 0x0,0x0,0x0,0x0,0xff,0xff,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0, 802 | 0x0,0x0,0x0,0x3,0xff,0xff,0xff,0xe0,0x0,0x0,0x0,0x0,0x0,0x0, 803 | 0x0,0x0,0x0,0x7,0xff,0xff,0xff,0xf8,0x0,0x0,0x0,0x0,0x0,0x0, 804 | 0x0,0x0,0x0,0xf,0xff,0xff,0xff,0xfc,0x0,0x0,0x0,0x0,0x0,0x0, 805 | 0x0,0x0,0x0,0x1f,0xff,0x0,0x7f,0xfe,0x0,0x0,0x0,0x0,0x0,0x0, 806 | 0x0,0x0,0x0,0x3f,0xf8,0x0,0xf,0xff,0x0,0x0,0x0,0x0,0x0,0x0, 807 | 0x0,0x0,0x0,0x7f,0xe0,0x0,0x3,0xff,0x80,0x0,0x0,0x0,0x0,0x0, 808 | 0x0,0x0,0x0,0xff,0x80,0x0,0x0,0xff,0x80,0x0,0x0,0x0,0x0,0x0, 809 | 0x0,0x0,0x1,0xff,0x0,0x0,0x0,0x7f,0xc0,0x0,0x0,0x0,0x0,0x0, 810 | 0x0,0x0,0x1,0xfe,0x0,0x0,0x0,0x3f,0xe0,0x0,0x0,0x0,0x0,0x0, 811 | 0x0,0x0,0x3,0xfc,0x0,0x0,0x0,0x1f,0xe0,0x0,0x0,0x0,0x0,0x0, 812 | 0x0,0x0,0x3,0xfc,0x0,0x0,0x0,0xf,0xf7,0xfd,0x0,0x0,0x0,0x0, 813 | 0x0,0x0,0x7,0xf8,0x0,0x0,0x0,0xf,0xff,0xff,0xc0,0x0,0x0,0x0, 814 | 0x0,0x0,0x7,0xf0,0x0,0x0,0x0,0x7,0xff,0xff,0xf0,0x0,0x0,0x0, 815 | 0x0,0x0,0xf,0xf0,0x0,0x0,0x0,0x3,0xff,0xff,0xf8,0x0,0x0,0x0, 816 | 0x0,0x0,0xf,0xe0,0x0,0x0,0x0,0x3,0xff,0xff,0xfe,0x0,0x0,0x0, 817 | 0x0,0x0,0xf,0xe0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0x0,0x0,0x0, 818 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0x80,0x0,0x0, 819 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x1,0xf8,0x3,0xff,0xc0,0x0,0x0, 820 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x0,0x60,0x0,0x7f,0xe0,0x0,0x0, 821 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xe0,0x0,0x0, 822 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xf0,0x0,0x0, 823 | 0x0,0x0,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0,0x0,0x0, 824 | 0x0,0x3,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8,0x0,0x0, 825 | 0x0,0xf,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8,0x0,0x0, 826 | 0x0,0x3f,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xfc,0x0,0x0, 827 | 0x0,0x7f,0xff,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 828 | 0x0,0xff,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 829 | 0x1,0xff,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 830 | 0x3,0xff,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 831 | 0x7,0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfc,0x0,0x0, 832 | 0xf,0xfc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfe,0x0,0x0, 833 | 0xf,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0x80,0x0, 834 | 0x1f,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xf0,0x0, 835 | 0x1f,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xf8,0x0, 836 | 0x3f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xfe,0x0, 837 | 0x3f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xff,0x0, 838 | 0x7f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xff,0x80, 839 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x17,0xff,0xc0, 840 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xc0, 841 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xe0, 842 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xf0, 843 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0, 844 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf0, 845 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8, 846 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 847 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 848 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 849 | 0x7e,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 850 | 0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 851 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 852 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 853 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 854 | 0x3f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 855 | 0x3f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 856 | 0x3f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 857 | 0x1f,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8, 858 | 0xf,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0, 859 | 0xf,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0, 860 | 0x7,0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xf0, 861 | 0x3,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0xe0, 862 | 0x3,0xff,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xff,0xc0, 863 | 0x0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80, 864 | 0x0,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80, 865 | 0x0,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x0, 866 | 0x0,0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0x0, 867 | 0x0,0x7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf8,0x0, 868 | 0x0,0x1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc0,0x0, 869 | 0x0,0x0,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x0,0x0, 870 | 0x0,0x0,0x0,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 871 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 872 | 0x0,0x0,0x0,0x18,0xe0,0xe,0x70,0x3,0x9c,0x0,0xe3,0x0,0x0,0x0, 873 | 0x0,0x0,0x0,0x3d,0xf0,0x1f,0xf8,0x7,0xde,0x1,0xf7,0x80,0x0,0x0, 874 | 0x0,0x0,0x0,0x3d,0xf0,0x1f,0xf8,0x7,0xde,0x1,0xf7,0x80,0x0,0x0, 875 | 0x0,0x0,0x0,0x1f,0xe0,0xf,0xf0,0x3,0xfc,0x0,0xff,0x0,0x0,0x0, 876 | 0x0,0x0,0x0,0x1f,0xe0,0xf,0xf0,0x3,0xfc,0x0,0xff,0x0,0x0,0x0, 877 | 0x0,0x0,0x0,0xff,0xfc,0x7f,0xfe,0x1f,0xff,0x87,0xff,0xe0,0x0,0x0, 878 | 0x0,0x0,0x1,0xff,0xfc,0xff,0xff,0x3f,0xff,0xc7,0xff,0xf0,0x0,0x0, 879 | 0x0,0x0,0x1,0xff,0xfc,0xff,0xff,0x3f,0xff,0xc7,0xff,0xf0,0x0,0x0, 880 | 0x0,0x0,0x0,0xff,0xfc,0x7f,0xfe,0x1f,0xff,0x87,0xff,0xe0,0x0,0x0, 881 | 0x0,0x0,0x0,0x1f,0xe0,0xf,0xf0,0x3,0xfc,0x0,0xff,0x0,0x0,0x0, 882 | 0x0,0x0,0x0,0x3f,0xf0,0x1f,0xf8,0x7,0xfe,0x1,0xff,0x80,0x0,0x0, 883 | 0x0,0x0,0x0,0x3d,0xf0,0x1f,0xf8,0x7,0xde,0x1,0xf7,0x80,0x0,0x0, 884 | 0x0,0x0,0x0,0x3d,0xf0,0x1f,0xf8,0x7,0xde,0x1,0xf7,0x80,0x0,0x0, 885 | 0x0,0x0,0x0,0x18,0xe0,0xe,0x70,0x3,0x9c,0x0,0xe3,0x0,0x0,0x0, 886 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 887 | 0x0,0x0,0x0,0x0,0x3,0x9c,0x3,0x9c,0x3,0x9c,0x0,0x0,0x0,0x0, 888 | 0x0,0x0,0x0,0x0,0x7,0xde,0x7,0xde,0x7,0xde,0x0,0x0,0x0,0x0, 889 | 0x0,0x0,0x0,0x0,0x7,0xde,0x7,0xde,0x7,0xde,0x0,0x0,0x0,0x0, 890 | 0x0,0x0,0x0,0x0,0x3,0xfc,0x3,0xfc,0x3,0xfc,0x0,0x0,0x0,0x0, 891 | 0x0,0x0,0x0,0x0,0x3,0xfc,0x3,0xfc,0x3,0xfc,0x0,0x0,0x0,0x0, 892 | 0x0,0x0,0x0,0x0,0x1f,0xff,0x9f,0xff,0x9f,0xff,0x80,0x0,0x0,0x0, 893 | 0x0,0x0,0x0,0x0,0x3f,0xff,0xff,0xff,0xff,0xff,0xc0,0x0,0x0,0x0, 894 | 0x0,0x0,0x0,0x0,0x3f,0xff,0xff,0xff,0xff,0xff,0xc0,0x0,0x0,0x0, 895 | 0x0,0x0,0x0,0x0,0x1f,0xff,0x9f,0xff,0x9f,0xff,0x80,0x0,0x0,0x0, 896 | 0x0,0x0,0x0,0x0,0x3,0xfc,0x3,0xfc,0x3,0xfc,0x0,0x0,0x0,0x0, 897 | 0x0,0x0,0x0,0x0,0x7,0xfe,0x7,0xfe,0x7,0xfe,0x0,0x0,0x0,0x0, 898 | 0x0,0x0,0x0,0x0,0x7,0xde,0x7,0xde,0x7,0xde,0x0,0x0,0x0,0x0, 899 | 0x0,0x0,0x0,0x0,0x7,0xde,0x7,0xde,0x7,0xde,0x0,0x0,0x0,0x0, 900 | 0x0,0x0,0x0,0x0,0x3,0x9c,0x3,0x9c,0x3,0x9c,0x0,0x0,0x0,0x0, 901 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 902 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 903 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 904 | }; 905 | 906 | const uint8_t sun_light_rain[] PROGMEM = { 907 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 908 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x17,0xfd,0x0,0x0,0x0,0x0, 909 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xff,0xe0,0x0,0x0,0x0, 910 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xff,0xff,0xfc,0x0,0x0,0x0, 911 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xff,0xff,0xff,0x80,0x0,0x0, 912 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0xff,0xff,0xff,0xc0,0x0,0x0, 913 | 0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0xff,0xf0,0x0,0x0, 914 | 0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xff,0xff,0xff,0xff,0xf8,0x0,0x0, 915 | 0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xff,0xff,0xff,0xff,0xfe,0x0,0x0, 916 | 0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xff,0xff,0xff,0xff,0xff,0x0,0x0, 917 | 0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xff,0xff,0xff,0xff,0xff,0x80,0x0, 918 | 0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0xff,0xff,0xff,0xff,0xff,0xc0,0x0, 919 | 0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xff,0xff,0xff,0xff,0xff,0xe0,0x0, 920 | 0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0xff,0xff,0xff,0xf0,0x0, 921 | 0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0xff,0xff,0xff,0xf0,0x0, 922 | 0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xff,0xff,0xff,0xff,0xff,0xf8,0x0, 923 | 0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0xff,0xff,0xfc,0x0, 924 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0xff,0xff,0xff,0xff,0xfc,0x0, 925 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xff,0xff,0xff,0xff,0xfe,0x0, 926 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xff,0xff,0xff,0xff,0xff,0x0, 927 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xff,0xff,0xff,0xff,0xff,0x0, 928 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xff,0xff,0xff,0xff,0xff,0x0, 929 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xff,0xff,0xff,0xff,0xff,0x80, 930 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xff,0xff,0xff,0xff,0xff,0x80, 931 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xff,0xff,0xff,0xff,0xff,0xc0, 932 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0xff,0xff,0xc0, 933 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0xff,0xff,0xff,0xff,0xc0, 934 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0xff,0xff,0xff,0xc0, 935 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xff,0xff,0xff,0xe0, 936 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xff,0xff,0xff,0xc0, 937 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xff,0xff,0xe0, 938 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xff,0xff,0xe0, 939 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xff,0xff,0xe0, 940 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xff,0xff,0xe0, 941 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xff,0xff,0xe0, 942 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xff,0xff,0xe0, 943 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xff,0xff,0xe0, 944 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xff,0xff,0xe0, 945 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xff,0xe0, 946 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xff,0xe0, 947 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xff,0xc0, 948 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xff,0xc0, 949 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xff,0xc0, 950 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xff,0xc0, 951 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xff,0x80, 952 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xff,0x80, 953 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xff,0x80, 954 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0x0, 955 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0x0, 956 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1e,0x0, 957 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe,0x0, 958 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4,0x0, 959 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 960 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 961 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 962 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 963 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 964 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 965 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 966 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 967 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 968 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 969 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 970 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 971 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 972 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 973 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 974 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 975 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 976 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 977 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 978 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 979 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 980 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 981 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 982 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 983 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 984 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 985 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 986 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 987 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 988 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 989 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 990 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 991 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 992 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 993 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 994 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 995 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 996 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 997 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 998 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 999 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1000 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1001 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1002 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1003 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1004 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1005 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1006 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1007 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1008 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1009 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1010 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1011 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1012 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1013 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1014 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1015 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1016 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1017 | }; 1018 | 1019 | const uint8_t light_rain_with_sun[] PROGMEM = { 1020 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1021 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1022 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1023 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1024 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1025 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1026 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1027 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1028 | 0x0,0x0,0x0,0x0,0x1,0x7f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1029 | 0x0,0x0,0x0,0x0,0xf,0xff,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1030 | 0x0,0x0,0x0,0x0,0x3f,0xff,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1031 | 0x0,0x0,0x0,0x0,0xff,0xff,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0, 1032 | 0x0,0x0,0x0,0x3,0xff,0xff,0xff,0xe0,0x0,0x0,0x0,0x0,0x0,0x0, 1033 | 0x0,0x0,0x0,0x7,0xff,0xff,0xff,0xf8,0x0,0x0,0x0,0x0,0x0,0x0, 1034 | 0x0,0x0,0x0,0xf,0xff,0xff,0xff,0xfc,0x0,0x0,0x0,0x0,0x0,0x0, 1035 | 0x0,0x0,0x0,0x1f,0xff,0x0,0x7f,0xfe,0x0,0x0,0x0,0x0,0x0,0x0, 1036 | 0x0,0x0,0x0,0x3f,0xf8,0x0,0xf,0xff,0x0,0x0,0x0,0x0,0x0,0x0, 1037 | 0x0,0x0,0x0,0x7f,0xe0,0x0,0x3,0xff,0x80,0x0,0x0,0x0,0x0,0x0, 1038 | 0x0,0x0,0x0,0xff,0x80,0x0,0x0,0xff,0x80,0x0,0x0,0x0,0x0,0x0, 1039 | 0x0,0x0,0x1,0xff,0x0,0x0,0x0,0x7f,0xc0,0x0,0x0,0x0,0x0,0x0, 1040 | 0x0,0x0,0x1,0xfe,0x0,0x0,0x0,0x3f,0xe0,0x0,0x0,0x0,0x0,0x0, 1041 | 0x0,0x0,0x3,0xfc,0x0,0x0,0x0,0x1f,0xe0,0x0,0x0,0x0,0x0,0x0, 1042 | 0x0,0x0,0x3,0xfc,0x0,0x0,0x0,0xf,0xf7,0xfd,0x0,0x0,0x0,0x0, 1043 | 0x0,0x0,0x7,0xf8,0x0,0x0,0x0,0xf,0xff,0xff,0xc0,0x0,0x0,0x0, 1044 | 0x0,0x0,0x7,0xf0,0x0,0x0,0x0,0x7,0xff,0xff,0xf0,0x0,0x0,0x0, 1045 | 0x0,0x0,0xf,0xf0,0x0,0x0,0x0,0x3,0xff,0xff,0xf8,0x0,0x0,0x0, 1046 | 0x0,0x0,0xf,0xe0,0x0,0x0,0x0,0x3,0xff,0xff,0xfe,0x0,0x0,0x0, 1047 | 0x0,0x0,0xf,0xe0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0x0,0x0,0x0, 1048 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x1,0xff,0xff,0xff,0x80,0x0,0x0, 1049 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x1,0xf8,0x3,0xff,0xc0,0x0,0x0, 1050 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x0,0x60,0x0,0x7f,0xe0,0x0,0x0, 1051 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xe0,0x0,0x0, 1052 | 0x0,0x0,0x1f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xf0,0x0,0x0, 1053 | 0x0,0x0,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0,0x0,0x0, 1054 | 0x0,0x3,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8,0x0,0x0, 1055 | 0x0,0xf,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8,0x0,0x0, 1056 | 0x0,0x3f,0xff,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xfc,0x0,0x0, 1057 | 0x0,0x7f,0xff,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 1058 | 0x0,0xff,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 1059 | 0x1,0xff,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 1060 | 0x3,0xff,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc,0x0,0x0, 1061 | 0x7,0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfc,0x0,0x0, 1062 | 0xf,0xfc,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfe,0x0,0x0, 1063 | 0xf,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0x80,0x0, 1064 | 0x1f,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xf0,0x0, 1065 | 0x1f,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xf8,0x0, 1066 | 0x3f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xff,0xfe,0x0, 1067 | 0x3f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xff,0x0, 1068 | 0x7f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xff,0x80, 1069 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x17,0xff,0xc0, 1070 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff,0xc0, 1071 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xe0, 1072 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1f,0xf0, 1073 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0, 1074 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf0, 1075 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8, 1076 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 1077 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 1078 | 0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 1079 | 0x7e,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 1080 | 0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 1081 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 1082 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 1083 | 0x7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0xfc, 1084 | 0x3f,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 1085 | 0x3f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 1086 | 0x3f,0xc0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xf8, 1087 | 0x1f,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0xf8, 1088 | 0xf,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0, 1089 | 0xf,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf,0xf0, 1090 | 0x7,0xfe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xf0, 1091 | 0x3,0xff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0xe0, 1092 | 0x3,0xff,0xe0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0xff,0xc0, 1093 | 0x0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80, 1094 | 0x0,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80, 1095 | 0x0,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x0, 1096 | 0x0,0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0x0, 1097 | 0x0,0x7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf8,0x0, 1098 | 0x0,0x1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc0,0x0, 1099 | 0x0,0x0,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x0,0x0, 1100 | 0x0,0x0,0x0,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1101 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1102 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1103 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1104 | 0x0,0x0,0x3,0x0,0x0,0x0,0xb,0x0,0x0,0x0,0x1c,0x0,0x0,0x0, 1105 | 0x0,0x0,0x7,0xc0,0x0,0x0,0xf,0x0,0x0,0x0,0x1e,0x0,0x0,0x0, 1106 | 0x0,0x0,0x7,0xc0,0x0,0x0,0x1f,0x80,0x0,0x0,0x3f,0x0,0x0,0x0, 1107 | 0x0,0x0,0xf,0xe0,0x0,0x0,0x1f,0xc0,0x0,0x0,0x3f,0x80,0x0,0x0, 1108 | 0x0,0x0,0x1f,0xe0,0x0,0x0,0x3f,0xc0,0x0,0x0,0x7f,0x80,0x0,0x0, 1109 | 0x0,0x0,0x1f,0xe0,0x0,0x0,0x3f,0x80,0x0,0x0,0xff,0x0,0x0,0x0, 1110 | 0x0,0x0,0x3f,0xc0,0x0,0x0,0x7f,0x80,0x0,0x0,0xff,0x0,0x0,0x0, 1111 | 0x0,0x0,0x3f,0xc0,0x0,0x0,0x7f,0x80,0x0,0x0,0xfe,0x0,0x0,0x0, 1112 | 0x0,0x0,0x7f,0x80,0x0,0x0,0xff,0x0,0x0,0x1,0xfe,0x0,0x0,0x0, 1113 | 0x0,0x0,0x7f,0x80,0x0,0x0,0xfe,0x0,0x0,0x3,0xfc,0x0,0x0,0x0, 1114 | 0x0,0x0,0xff,0x0,0x0,0x1,0xfe,0x0,0x0,0x3,0xfc,0x0,0x0,0x0, 1115 | 0x0,0x0,0xff,0x0,0x0,0x1,0xfe,0x0,0x0,0x3,0xf8,0x0,0x0,0x0, 1116 | 0x0,0x1,0xfe,0x0,0x0,0x3,0xfc,0x0,0x0,0x7,0xf8,0x0,0x0,0x0, 1117 | 0x0,0x1,0xfe,0x0,0x0,0x3,0xf8,0x0,0x0,0xf,0xf0,0x0,0x0,0x0, 1118 | 0x0,0x3,0xfc,0x0,0x0,0x7,0xf8,0x0,0x0,0xf,0xf0,0x0,0x0,0x0, 1119 | 0x0,0x3,0xfc,0x0,0x0,0x7,0xf8,0x0,0x0,0xf,0xe0,0x0,0x0,0x0, 1120 | 0x0,0x7,0xf8,0x0,0x0,0xf,0xf0,0x0,0x0,0x1f,0xe0,0x0,0x0,0x0, 1121 | 0x0,0x7,0xf0,0x0,0x0,0xf,0xe0,0x0,0x0,0x1f,0xc0,0x0,0x0,0x0, 1122 | 0x0,0x7,0xf0,0x0,0x0,0xf,0xe0,0x0,0x0,0x1f,0xc0,0x0,0x0,0x0, 1123 | 0x0,0x3,0xf0,0x0,0x0,0xf,0xc0,0x0,0x0,0x5f,0x80,0x0,0x0,0x0, 1124 | 0x0,0x3,0xc0,0x0,0x0,0x7,0xc0,0x0,0x0,0xf,0x80,0x0,0x0,0x0, 1125 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1126 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1127 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1128 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1129 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1130 | }; 1131 | 1132 | const uint8_t fog[] PROGMEM = { 1133 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1134 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1135 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1136 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1137 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1138 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1139 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1140 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1141 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1142 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1143 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1144 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1145 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1146 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1147 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1148 | 0x0,0x0,0x1f,0xff,0x80,0x0,0x0,0x0,0x0,0x7,0xff,0xe0,0x0,0x0, 1149 | 0x0,0x0,0xff,0xff,0xf8,0x0,0x0,0x0,0x0,0x7f,0xff,0xfc,0x0,0x0, 1150 | 0x0,0xf,0xff,0xff,0xff,0x0,0x0,0x0,0x3,0xff,0xff,0xff,0xc0,0x0, 1151 | 0x0,0xf,0xff,0xff,0xff,0x0,0x0,0x0,0x3,0xff,0xff,0xff,0xc0,0x0, 1152 | 0x0,0x7f,0xff,0xff,0xff,0xc0,0x0,0x0,0xf,0xff,0xff,0xff,0xf8,0x0, 1153 | 0x7,0xff,0xff,0xff,0xff,0xf8,0x0,0x0,0x7f,0xff,0xff,0xff,0xff,0x80, 1154 | 0xf,0xff,0xff,0xff,0xff,0xff,0x80,0x7,0xff,0xff,0xff,0xff,0xff,0xc0, 1155 | 0xf,0xff,0xff,0x2f,0xff,0xff,0xff,0xff,0xff,0xff,0xa7,0xff,0xff,0xc0, 1156 | 0xf,0xff,0xc0,0x0,0x3f,0xff,0xff,0xff,0xff,0xf0,0x0,0xf,0xff,0xc0, 1157 | 0xf,0xfa,0x0,0x0,0x3,0xff,0xff,0xff,0xff,0x0,0x0,0x1,0x7f,0x80, 1158 | 0xf,0xfc,0x0,0x0,0x3,0xff,0xff,0xff,0xff,0x0,0x0,0x0,0xff,0xc0, 1159 | 0x7,0xe0,0x0,0x0,0x1,0xff,0xff,0xff,0xfc,0x0,0x0,0x0,0x1f,0x80, 1160 | 0x0,0x0,0x0,0x0,0x0,0x1f,0xff,0xff,0xe0,0x0,0x0,0x0,0x0,0x0, 1161 | 0x0,0x0,0x0,0x0,0x0,0x3,0xff,0xff,0x0,0x0,0x0,0x0,0x0,0x0, 1162 | 0x0,0x0,0x0,0x0,0x0,0x0,0xf,0x80,0x0,0x0,0x0,0x0,0x0,0x0, 1163 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1164 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1165 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1166 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1167 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1168 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1169 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1170 | 0x0,0x0,0x1f,0xff,0x80,0x0,0x0,0x0,0x0,0x7,0xff,0xe0,0x0,0x0, 1171 | 0x0,0x1,0xff,0xff,0xfc,0x0,0x0,0x0,0x0,0xff,0xff,0xfe,0x0,0x0, 1172 | 0x0,0x1,0xff,0xff,0xfc,0x0,0x0,0x0,0x0,0xff,0xff,0xfe,0x0,0x0, 1173 | 0x0,0x1f,0xff,0xff,0xff,0x0,0x0,0x0,0x3,0xff,0xff,0xff,0xe0,0x0, 1174 | 0x0,0xff,0xff,0xff,0xff,0xe0,0x0,0x0,0x3f,0xff,0xff,0xff,0xfc,0x0, 1175 | 0x7,0xff,0xff,0xff,0xff,0xfc,0x0,0x0,0xff,0xff,0xff,0xff,0xff,0x80, 1176 | 0xf,0xff,0xff,0xff,0xff,0xff,0x80,0xf,0xff,0xff,0xff,0xff,0xff,0xc0, 1177 | 0xf,0xff,0xf4,0x0,0xff,0xff,0xff,0xff,0xff,0xfc,0x0,0xbf,0xff,0xc0, 1178 | 0xf,0xff,0xf8,0x1,0xff,0xff,0xff,0xff,0xff,0xfe,0x0,0x7f,0xff,0xc0, 1179 | 0xf,0xff,0x0,0x0,0xf,0xff,0xff,0xff,0xff,0xc0,0x0,0x7,0xff,0xc0, 1180 | 0xf,0xf8,0x0,0x0,0x3,0xff,0xff,0xff,0xff,0x0,0x0,0x0,0x7f,0x80, 1181 | 0x3,0xc0,0x0,0x0,0x0,0xff,0xff,0xff,0xfc,0x0,0x0,0x0,0xf,0x0, 1182 | 0x0,0x0,0x0,0x0,0x0,0xf,0xff,0xff,0xc0,0x0,0x0,0x0,0x0,0x0, 1183 | 0x0,0x0,0x0,0x0,0x0,0x3,0xff,0xfe,0x0,0x0,0x0,0x0,0x0,0x0, 1184 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1185 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1186 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1187 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1188 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1189 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1190 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1191 | 0x0,0x0,0x0,0x50,0x0,0x0,0x0,0x0,0x0,0x0,0x28,0x0,0x0,0x0, 1192 | 0x0,0x0,0x0,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x10,0x0,0x0,0x0, 1193 | 0x0,0x0,0x3f,0xff,0xc0,0x0,0x0,0x0,0x0,0xf,0xff,0xf0,0x0,0x0, 1194 | 0x0,0x5,0xff,0xff,0xfc,0x0,0x0,0x0,0x0,0xff,0xff,0xfe,0x80,0x0, 1195 | 0x0,0x3f,0xff,0xff,0xff,0xc0,0x0,0x0,0xf,0xff,0xff,0xff,0xf0,0x0, 1196 | 0x1,0xff,0xff,0xff,0xff,0xe0,0x0,0x0,0x3f,0xff,0xff,0xff,0xfc,0x0, 1197 | 0x7,0xff,0xff,0xff,0xff,0xfc,0x0,0x0,0xff,0xff,0xff,0xff,0xff,0x80, 1198 | 0xf,0xff,0xff,0xff,0xff,0xff,0xe0,0x3f,0xff,0xff,0xff,0xff,0xff,0xc0, 1199 | 0xf,0xff,0xff,0xff,0xff,0xff,0xf0,0x3f,0xff,0xff,0xff,0xff,0xff,0xc0, 1200 | 0xf,0xff,0xf0,0x0,0xff,0xff,0xff,0xff,0xff,0xfc,0x0,0x3f,0xff,0xc0, 1201 | 0xf,0xff,0x0,0x0,0xf,0xff,0xff,0xff,0xff,0x80,0x0,0x3,0xff,0xc0, 1202 | 0x7,0xf0,0x0,0x0,0x1,0xff,0xff,0xff,0xfe,0x0,0x0,0x0,0x3f,0x80, 1203 | 0x3,0x80,0x0,0x0,0x0,0xff,0xff,0xff,0xf4,0x0,0x0,0x0,0x7,0x0, 1204 | 0x0,0x0,0x0,0x0,0x0,0xf,0xff,0xff,0xc0,0x0,0x0,0x0,0x0,0x0, 1205 | 0x0,0x0,0x0,0x0,0x0,0xf,0xff,0xff,0xc0,0x0,0x0,0x0,0x0,0x0, 1206 | 0x0,0x0,0x0,0x0,0x0,0x0,0x7f,0xf0,0x0,0x0,0x0,0x0,0x0,0x0, 1207 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1208 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1209 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1210 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1211 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1212 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1213 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1214 | 0x0,0x0,0x1,0xf8,0x0,0x0,0x0,0x0,0x0,0x0,0xfc,0x0,0x0,0x0, 1215 | 0x0,0x0,0xff,0xff,0xf0,0x0,0x0,0x0,0x0,0x7f,0xff,0xf8,0x0,0x0, 1216 | 0x0,0xf,0xff,0xff,0xfe,0x0,0x0,0x0,0x3,0xff,0xff,0xff,0xc0,0x0, 1217 | 0x0,0x3f,0xff,0xff,0xff,0xc0,0x0,0x0,0xf,0xff,0xff,0xff,0xf0,0x0, 1218 | 0x3,0xff,0xff,0xff,0xff,0xf0,0x0,0x0,0x3f,0xff,0xff,0xff,0xff,0x0, 1219 | 0x3,0xff,0xff,0xff,0xff,0xf0,0x0,0x0,0x7f,0xff,0xff,0xff,0xff,0x0, 1220 | 0xf,0xff,0xff,0xff,0xff,0xfc,0x0,0x1,0xff,0xff,0xff,0xff,0xff,0x80, 1221 | 0xf,0xff,0xff,0xff,0xff,0xff,0xfa,0xbf,0xff,0xff,0xff,0xff,0xff,0xc0, 1222 | 0xf,0xff,0xc0,0x0,0x7f,0xff,0xff,0xff,0xff,0xf0,0x0,0x1f,0xff,0xc0, 1223 | 0xf,0xff,0x0,0x0,0x7,0xff,0xff,0xff,0xff,0x80,0x0,0x3,0xff,0xc0, 1224 | 0x7,0xe0,0x0,0x0,0x1,0xff,0xff,0xff,0xfe,0x0,0x0,0x0,0x3f,0x80, 1225 | 0x0,0x0,0x0,0x0,0x0,0x3f,0xff,0xff,0xf0,0x0,0x0,0x0,0x0,0x0, 1226 | 0x0,0x0,0x0,0x0,0x0,0x1f,0xff,0xff,0xe0,0x0,0x0,0x0,0x0,0x0, 1227 | 0x0,0x0,0x0,0x0,0x0,0xf,0xff,0xff,0x80,0x0,0x0,0x0,0x0,0x0, 1228 | 0x0,0x0,0x0,0x0,0x0,0x0,0x3f,0xe0,0x0,0x0,0x0,0x0,0x0,0x0, 1229 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1230 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1231 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1232 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1233 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1234 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1235 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1236 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1237 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1238 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1239 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1240 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1241 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1242 | 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0, 1243 | }; -------------------------------------------------------------------------------- /epaper_weather_station/sensors.cpp: -------------------------------------------------------------------------------- 1 | 2 | #include "sensors.h" 3 | 4 | Sensors::Sensors(int dht22Pin) : dht22(dht22Pin) { 5 | // Additional initialization code for other sensors if needed 6 | } 7 | 8 | float Sensors::getTemperature(){ 9 | return temperature; 10 | } 11 | 12 | float Sensors::getHumidity(){ 13 | return humidity; 14 | } 15 | 16 | float Sensors::getPressure(){ 17 | return pressure; 18 | } 19 | 20 | void Sensors::begin(){ 21 | bmp.begin(); 22 | } 23 | 24 | void Sensors::readSensors() { 25 | temperature = dht22.getTemperature(); 26 | humidity = dht22.getHumidity(); 27 | pressure = bmp.readPressure()/97.5; 28 | } -------------------------------------------------------------------------------- /epaper_weather_station/sensors.h: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | class Sensors { 5 | 6 | public: 7 | Sensors(int dht22Pin); 8 | void begin(); 9 | void readSensors(); 10 | float getTemperature(); 11 | float getHumidity(); 12 | float getPressure(); 13 | 14 | private: 15 | Adafruit_BMP085 bmp; 16 | DHT22 dht22; 17 | float temperature; 18 | float humidity; 19 | float pressure; 20 | }; -------------------------------------------------------------------------------- /inkplate_clean_eeprom/EEPROMManager.cpp: -------------------------------------------------------------------------------- 1 | #include "EEPROMManager.h" 2 | 3 | EEPROMManager::EEPROMManager(int size) : eepromSize(size) { 4 | 5 | } 6 | 7 | void EEPROMManager::begin() { 8 | EEPROM.begin(eepromSize); 9 | } 10 | 11 | void EEPROMManager::clear() { 12 | for (int i = 0; i < eepromSize; ++i) { 13 | EEPROM.write(i, 0); 14 | } 15 | EEPROM.commit(); 16 | } 17 | 18 | void EEPROMManager::saveWeatherId(int id) { 19 | EEPROM.put(500, id); 20 | EEPROM.commit(); 21 | delay(100); 22 | 23 | Serial.println(readWeatherId()); 24 | } 25 | 26 | int EEPROMManager::readWeatherId() { 27 | int number = 0; 28 | EEPROM.get(500, number); 29 | return number; 30 | } 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /inkplate_clean_eeprom/EEPROMManager.h: -------------------------------------------------------------------------------- 1 | #include "EEPROM.h" 2 | 3 | class EEPROMManager { 4 | public: 5 | EEPROMManager(int size); 6 | void begin(); 7 | void clear(); 8 | void saveWeatherId(int id); 9 | int readWeatherId(); 10 | 11 | private: 12 | int eepromSize; 13 | int initFlagAddress = 0; // Address for initialization flag 14 | }; -------------------------------------------------------------------------------- /inkplate_clean_eeprom/inkplate_clean_eeprom.ino: -------------------------------------------------------------------------------- 1 | #include "EEPROMManager.h" 2 | EEPROMManager memory(512); 3 | 4 | 5 | void setup() { 6 | Serial.begin(115200); 7 | memory.begin(); 8 | memory.clear(); 9 | } 10 | 11 | void loop() { 12 | 13 | } 14 | -------------------------------------------------------------------------------- /preview.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/educ8s/Arduino-Color-E-Paper-Weather-Station/5d5f16796f4a43bd9418a1dfce2a15ebcb862beb/preview.jpg --------------------------------------------------------------------------------