{"id":16251363,"url":"https://github.com/desiFish/EPaper-Display-Weather-Clock","last_synced_at":"2025-03-19T20:30:43.573Z","repository":{"id":243188196,"uuid":"811752021","full_name":"desiFish/EPaper-Display-Weather-Clock","owner":"desiFish","description":"E-Paper Display based ultra efficient mini personal weather station","archived":false,"fork":false,"pushed_at":"2025-02-25T07:10:03.000Z","size":37838,"stargazers_count":6,"open_issues_count":6,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-17T10:21:31.792Z","etag":null,"topics":["18650-battery","arduino","bh1750","bme680","bms","ds3231-arduino","e-paper","e-paperdisplay","esp","esp32-c3","esp32-c6","gxepd2","icr","ifr26700","lifepo4-battery","tmp117","tp5000","weather-station","xiao-esp32-c3","xiao-esp32c6"],"latest_commit_sha":null,"homepage":"https://iotthings.pythonanywhere.com/","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/desiFish.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"lfx_crowdfunding":null,"polar":null,"buy_me_a_coffee":null,"thanks_dev":null,"custom":["https://www.paypal.com/paypalme/aniketpatra"]}},"created_at":"2024-06-07T08:23:14.000Z","updated_at":"2025-02-27T01:18:14.000Z","dependencies_parsed_at":"2024-07-14T05:37:20.117Z","dependency_job_id":"7e1064a4-d53a-401d-8db8-73e5986319a0","html_url":"https://github.com/desiFish/EPaper-Display-Weather-Clock","commit_stats":null,"previous_names":["kamadotanjiro-beep/epdweatherclockv1","kamadotanjiro-beep/esp32-epaper-display-weather-clock","desifish/esp32-epaper-display-weather-clock","desifish/epaper-display-weather-clock"],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/desiFish%2FEPaper-Display-Weather-Clock","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/desiFish%2FEPaper-Display-Weather-Clock/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/desiFish%2FEPaper-Display-Weather-Clock/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/desiFish%2FEPaper-Display-Weather-Clock/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/desiFish","download_url":"https://codeload.github.com/desiFish/EPaper-Display-Weather-Clock/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244501139,"owners_count":20462803,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["18650-battery","arduino","bh1750","bme680","bms","ds3231-arduino","e-paper","e-paperdisplay","esp","esp32-c3","esp32-c6","gxepd2","icr","ifr26700","lifepo4-battery","tmp117","tp5000","weather-station","xiao-esp32-c3","xiao-esp32c6"],"created_at":"2024-10-10T15:09:55.383Z","updated_at":"2025-03-19T20:30:43.564Z","avatar_url":"https://github.com/desiFish.png","language":"C","readme":"\u003cdiv align=\"center\"\u003e\n  \u003ch1\u003e🌡️ Minimalistic E-Paper Weather Station\u003c/h1\u003e\n  \u003cp\u003e\n    \u003cimg src=\"https://img.shields.io/badge/ESP32-C6-blue?style=flat-square\u0026logo=espressif\"/\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Battery-8000mAh-green?style=flat-square\"/\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Display-4.2%22-orange?style=flat-square\"/\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Eco-Friendly-brightgreen?style=flat-square\"/\u003e\n  \u003c/p\u003e\n  \u003cp\u003e\n    \u003cimg src=\"https://img.shields.io/badge/status-active-success.svg\" alt=\"Status\"\u003e\n    \u003ca href=\"/LICENSE\"\u003e\u003cimg src=\"https://img.shields.io/github/license/desiFish/ESP32-ePaper-Display-Weather-Clock\" alt=\"License\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/desiFish/ESP32-ePaper-Display-Weather-Clock/issues\"\u003e\u003cimg src=\"https://img.shields.io/github/issues/desiFish/ESP32-ePaper-Display-Weather-Clock.svg\" alt=\"GitHub Issues\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/desiFish/ESP32-ePaper-Display-Weather-Clock/releases\"\u003e\u003cimg src=\"https://img.shields.io/github/v/release/desiFish/ESP32-ePaper-Display-Weather-Clock\" alt=\"Release\"\u003e\u003c/a\u003e\n  \u003c/p\u003e\n\u003c/div\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ci\u003e🌈 A beautiful, eco-friendly weather station powered by E-Paper display! 🌱\u003c/i\u003e\n\u003c/p\u003e\n\n\u003c/div\u003e\n\n\u003e ⚠️ **IMPORTANT**: Please read the [Notes \u0026 Warnings] section carefully before proceeding with this project. It contains crucial safety information about battery configuration, charging, and sensor placement.\n\n\u003cdiv align=\"center\"\u003e\n\n### 🌟 Smart • Efficient • Eco-Friendly 🌟\n\n\u003c/div\u003e\n\n---\n\n## 🛠️ Hardware Components\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e🎯 \u003cb\u003eTested On\u003c/b\u003e\u003c/td\u003e\n    \u003ctd\u003e\n      • Seeed Studio XIAO ESP32 C3\u003cbr\u003e\n      • Seeed Studio XIAO ESP32 C6\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e📟 \u003cb\u003eDisplay\u003c/b\u003e\u003c/td\u003e\n    \u003ctd\u003eWaveshare 4.2inch TriColor 400x300 E-paper (15s refresh)\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e🌡️ \u003cb\u003eSensors\u003c/b\u003e\u003c/td\u003e\n    \u003ctd\u003e\n      • TMP117 (Temperature)\u003cbr\u003e\n      • BH1750 (Light sensing)\u003cbr\u003e\n      • DS3231 (Time keeping)\u003cbr\u003e\n      • BME680 (Humidity \u0026 pressure)\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e🔋 \u003cb\u003ePower\u003c/b\u003e\u003c/td\u003e\n    \u003ctd\u003eLFP 2x4000mAh (8000mAh total) Lithium Iron Phosphate Battery (IFR26700)\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e🔌 \u003cb\u003eOther\u003c/b\u003e\u003c/td\u003e\n    \u003ctd\u003e2xBMS, capacitors, resistors, connectors, etc.\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n## 📱 Key Features \u0026 Updates\n\n\u003ctable\u003e\n\u003ctr\u003e\n\u003ctd width=\"50%\" align=\"center\"\u003e\n  \n### 🆕 Latest Version\n[**v0.3.2**](https://github.com/desiFish/ESP32-ePaper-Display-Weather-Clock/releases/tag/v0.3.2)\n- 🔧 Enhanced overall system efficiency\n- 🔋 Improved power management algorithms\n- 💾 Improved readability\n  \n\u003c/td\u003e\n\u003ctd width=\"50%\" align=\"center\"\u003e\n\n### 🎯 Coming Soon\n- 📱 Web browser integration\n- 🌐 Enhanced weather data graph\n- 🎨 New display layouts\n  \n\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e\n\n## ⭐ Core Features\n\n\u003cdiv align=\"center\"\u003e\n\n🌡️ Medical-grade Temperature | 💧 Humidity \u0026 Pressure | 🔋 Smart Battery | 🌍 Weather Data\n:-------------------------:|:-------------------------:|:-------------------------:|:-------------------------:\n±0.1°C Precision | Real-time Monitoring | Intelligent Power Mgmt | Global Forecasting\n`TMP117 Sensor` | `BME680 Sensor` | `2000+ Cycles` | `OpenWeatherMap`\n\n\u003c/div\u003e\n\n### 🎮 Smart Features\n• 🌙 Moon Phase \u0026 Day/Night Tracking  \n• 🔄 Auto WiFi Configuration  \n• ⏰ Power-efficient Sleep Modes  \n• 📊 Environmental Monitoring\n\n## ⚡ Power Performance\n\n\u003cdiv align=\"center\"\u003e\n  \n### 🔋 Power Optimization Results\n![Optimization](https://img.shields.io/badge/Power-Optimized-success?style=for-the-badge)\n![CPU](https://img.shields.io/badge/CPU-Monitored-blue?style=for-the-badge)\n![Efficiency](https://img.shields.io/badge/Efficiency-Enhanced-green?style=for-the-badge)\n\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n\u003ctable style=\"width: 80%; margin: 20px auto; border: 2px solid #4CAF50; border-radius: 10px; padding: 15px;\"\u003e\n\u003ctr\u003e\n\u003ctd style=\"text-align: center; background-color: #f8f9fa;\"\u003e\n\u003ch3\u003e🚀 Coming Soon: Ultra-Low Power Mode\u003c/h3\u003e\n\u003cp style=\"color: #155724; background-color: #d4edda; padding: 10px; border-radius: 5px;\"\u003e\nUsing SparkFun TPL5110 Timer + Power Management Board:\u003cbr\u003e\nSleep Current Draw: 20µA → 35nA\u003cbr\u003e\n\u003cb\u003eThat's a 571,328% reduction in sleep power consumption!\u003c/b\u003e\n\u003c/p\u003e\n\u003cdetails\u003e\n\u003csummary\u003e💡 How it works\u003c/summary\u003e\n\u003cp\u003eThe TPL5110 completely cuts power to the system between updates, reducing standby current to near-zero levels. This improvement will dramatically extend battery life!\u003c/p\u003e\n\u003c/details\u003e\n\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e\n\u003c/div\u003e\n\n\u003e 📊 **Performance Metrics**\n\u003e \n\u003e After recent code optimizations, power efficiency has significantly improved:\n\u003e \n\u003e | Mode | Duration (Awake) | Status |\n\u003e |------|----------|---------|\n\u003e | Active-Active | ~22s | ![Status](https://img.shields.io/badge/22s-Normal-blue) |\n\u003e | Sleep-Active-Sleep | ~20s | ![Status](https://img.shields.io/badge/20s-Expected-green) |\n\u003e | Sleep-to-Sleep | \u003c1s | ![Status](https://img.shields.io/badge/\u003c1s-Optimal-success) |\n\u003e\n\u003e ✨ **Key Improvements**:\n\u003e - CPU power thoroughly monitored and conserved\n\u003e - Optimized mode transitions\n\u003e - Minimal wake time in sleep cycles\n\n## 📊 Battery Performance\n\n\u003e 📝 **Note**: Historical data below is from testing with Li-ion ICR batteries. The shorter duration in cycles 2 and 3 (49 and 48 days vs 73 days) was due to incomplete charging (batteries not reaching full 4.2V). New performance data with 8000mAh LFP batteries (which are more cost-effective) is being collected.\n\n### ICR Battery Data\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003cth\u003eCycle\u003c/th\u003e\n    \u003cth\u003eDuration\u003c/th\u003e\n    \u003cth\u003eDetails\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003eFirst Cycle\u003c/td\u003e\n    \u003ctd\u003e73 Days\u003c/td\u003e\n    \u003ctd\u003e06/05/2024 - 17/07/2024 (2 months 12 days)\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003eSecond Cycle\u003c/td\u003e\n    \u003ctd\u003e49 Days\u003c/td\u003e\n    \u003ctd\u003e~7 weeks\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003eThird Cycle\u003c/td\u003e\n    \u003ctd\u003e48 Days\u003c/td\u003e\n    \u003ctd\u003e~7 weeks\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n### LFP Battery Data (Ongoing)\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003cth\u003eCycle\u003c/th\u003e\n    \u003cth\u003eFull Charge Date\u003c/th\u003e\n    \u003cth\u003eBattery Dead Date\u003c/th\u003e\n    \u003cth\u003eDuration\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003eFirst Cycle\u003c/td\u003e\n    \u003ctd\u003eJanuary 09, 2025\u003c/td\u003e\n    \u003ctd\u003eComing Soon\u003c/td\u003e\n    \u003ctd\u003eOngoing\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003ch4\u003e📉 Battery Life Trend (ICR Battery Data)\u003c/h4\u003e\n  First: ████████████████████ 73 days\u003cbr\u003e\n  Second: █████████████ 49 days\u003cbr\u003e\n  Third: █████████████ 48 days\n\u003c/div\u003e\n\n### Current Consumption\n\u003e ⚠️ **Note**: Precise current consumption measurements for the entire project are not available due to equipment limitations. Please refer to the Battery Performance section above for real-world usage data and longevity estimates.\n\n## 📸 Gallery\n\n\u003ctable style=\"border-spacing: 10px; border-collapse: separate;\"\u003e\n  \u003ctr\u003e\n    \u003ctd width=\"33%\" style=\"padding: 0;\"\u003e\n      \u003cimg src=\"https://github.com/KamadoTanjiro-beep/epdWeatherClockV1/blob/main/resources/epd.jpg\" alt=\"Clock Normal Mode\" width=\"300\"/\u003e\n      \u003cp align=\"center\"\u003e\u003ci\u003eClock Normal Mode\u003c/i\u003e\u003c/p\u003e\n    \u003c/td\u003e\n    \u003ctd width=\"33%\" style=\"padding: 0;\"\u003e\n      \u003cimg src=\"https://github.com/KamadoTanjiro-beep/epdWeatherClockV1/blob/main/resources/epd2.jpg\" alt=\"Clock Power Conserved Mode\" width=\"300\"/\u003e\n      \u003cp align=\"center\"\u003e\u003ci\u003eClock Power Conserved Mode\u003c/i\u003e\u003c/p\u003e\n    \u003c/td\u003e\n    \u003ctd width=\"33%\" style=\"padding: 0;\"\u003e\n      \u003cimg src=\"https://github.com/KamadoTanjiro-beep/epdWeatherClockV1/blob/main/resources/epd3.jpg\" alt=\"Side View 1\" width=\"300\"/\u003e\n      \u003cp align=\"center\"\u003e\u003ci\u003eSide View 1\u003c/i\u003e\u003c/p\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd width=\"33%\" style=\"padding: 0;\"\u003e\n      \u003cimg src=\"https://github.com/KamadoTanjiro-beep/epdWeatherClockV1/blob/main/resources/epd4.jpg\" alt=\"Back View\" width=\"300\"/\u003e\n      \u003cp align=\"center\"\u003e\u003ci\u003eBack View\u003c/i\u003e\u003c/p\u003e\n    \u003c/td\u003e\n    \u003ctd width=\"33%\" style=\"padding: 0;\"\u003e\n      \u003cimg src=\"https://github.com/KamadoTanjiro-beep/epdWeatherClockV1/blob/main/resources/epd5.jpg\" alt=\"Side View 2\" width=\"300\"/\u003e\n      \u003cp align=\"center\"\u003e\u003ci\u003eSide View 2\u003c/i\u003e\u003c/p\u003e\n    \u003c/td\u003e\n    \u003ctd width=\"33%\" style=\"padding: 0;\"\u003e\n      \u003cimg src=\"https://github.com/KamadoTanjiro-beep/epdWeatherClockV1/blob/main/resources/epd6.jpg\" alt=\"Top View\" width=\"300\"/\u003e\n      \u003cp align=\"center\"\u003e\u003ci\u003eTop View\u003c/i\u003e\u003c/p\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd width=\"33%\" style=\"padding: 0;\"\u003e\n      \u003cimg src=\"https://github.com/KamadoTanjiro-beep/epdWeatherClockV1/blob/main/resources/epd7.jpg\" alt=\"ESP32 Compared\" width=\"300\"/\u003e\n      \u003cp align=\"center\"\u003e\u003ci\u003eESP32 Compared\u003c/i\u003e\u003c/p\u003e\n    \u003c/td\u003e\n    \u003ctd width=\"33%\" style=\"padding: 0;\"\u003e\n      \u003cimg src=\"https://github.com/KamadoTanjiro-beep/epdWeatherClockV1/blob/main/resources/epd8.jpg\" alt=\"Testing\" width=\"300\"/\u003e\n      \u003cp align=\"center\"\u003e\u003ci\u003eTesting\u003c/i\u003e\u003c/p\u003e\n    \u003c/td\u003e\n    \u003ctd width=\"33%\" style=\"padding: 0;\"\u003e\n      \u003cimg src=\"https://github.com/KamadoTanjiro-beep/epdWeatherClockV1/blob/main/resources/epd9.jpg\" alt=\"Integration\" width=\"300\"/\u003e\n      \u003cp align=\"center\"\u003e\u003ci\u003eIntegration\u003c/i\u003e\u003c/p\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd width=\"33%\" style=\"padding: 0;\"\u003e\n      \u003cimg src=\"https://github.com/KamadoTanjiro-beep/epdWeatherClockV1/blob/main/resources/epd10.jpg\" alt=\"Mainboard Front\" width=\"300\"/\u003e\n      \u003cp align=\"center\"\u003e\u003ci\u003eMainboard Front\u003c/i\u003e\u003c/p\u003e\n    \u003c/td\u003e\n    \u003ctd width=\"33%\" style=\"padding: 0;\"\u003e\n      \u003cimg src=\"https://github.com/KamadoTanjiro-beep/epdWeatherClockV1/blob/main/resources/epd11.jpg\" alt=\"Internal 1\" width=\"300\"/\u003e\n      \u003cp align=\"center\"\u003e\u003ci\u003eInternal 1\u003c/i\u003e\u003c/p\u003e\n    \u003c/td\u003e\n    \u003ctd width=\"33%\" style=\"padding: 0;\"\u003e\n      \u003cimg src=\"https://github.com/KamadoTanjiro-beep/epdWeatherClockV1/blob/main/resources/epd12.jpg\" alt=\"Internal 2\" width=\"300\"/\u003e\n      \u003cp align=\"center\"\u003e\u003ci\u003eInternal 2\u003c/i\u003e\u003c/p\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd width=\"33%\" style=\"padding: 0;\"\u003e\n      \u003cimg src=\"https://github.com/KamadoTanjiro-beep/epdWeatherClockV1/blob/main/resources/epd13.jpg\" alt=\"Facelift Clock\" width=\"300\"/\u003e\n      \u003cp align=\"center\"\u003e\u003ci\u003eFacelift Clock\u003c/i\u003e\u003c/p\u003e\n    \u003c/td\u003e\n    \u003ctd width=\"33%\" style=\"padding: 0;\"\u003e\n      \u003cimg src=\"https://github.com/KamadoTanjiro-beep/epdWeatherClockV1/blob/main/resources/epd14.jpg\" alt=\"LiFePO4 Cell 4000mAh\" width=\"300\"/\u003e\n      \u003cp align=\"center\"\u003e\u003ci\u003eLiFePO4 Cell 4000mAh\u003c/i\u003e\u003c/p\u003e\n    \u003c/td\u003e\n    \u003ctd width=\"33%\" style=\"padding: 0;\"\u003e\n      \u003cimg src=\"https://github.com/KamadoTanjiro-beep/epdWeatherClockV1/blob/main/resources/epd15.jpg\" alt=\"Mainboard Back\" width=\"300\"/\u003e\n      \u003cp align=\"center\"\u003e\u003ci\u003eMainboard Back\u003c/i\u003e\u003c/p\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n## 🌱 Eco-Friendly Features\n\n- 📱 E-Paper Display (no backlight needed)\n- 🔋 LiFePO4 Batteries (Lithium Iron Phosphate)\n  - ✅ Cobalt-free chemistry, reducing environmental impact\n  - ✅ 2-3x longer lifespan than traditional Li-ion\n  - ✅ Non-toxic and more stable chemistry\n  - ✅ Better recyclability due to simpler composition\n- 📦 Recycled cardboard construction\n- 💡 Smart light sensor for power saving\n\n## 💫 Technical Specifications\n\n\u003cdetails\u003e\n\u003csummary\u003e🧠 Core System\u003c/summary\u003e\n\n### Core Components\n- 💻 **XIAO ESP32 C6** (Recommended)\n  - 32-bit RISC-V single-core CPU up to 160MHz\n  - 320KB SRAM, 4MB Flash\n  - WiFi 6 \u0026 Bluetooth 5.0\n  - Ultra-low power consumption: ~14µA in deep sleep ([Source](https://sigmdel.ca/michel/ha/xiao/xiao_esp32c6_intro_en.html#deep_sleep))\n    - Note: 14-15µA deep sleep current only achievable when power is supplied through battery pins (BAT+ and BAT-)\n  - 11 Digital/Analog pins\n  - USB-C interface\n  - ⚠️ May experience reduced WiFi range due to integrated PCB antenna\n    - Consider ESP32 C3 variant with external antenna for better signal strength\n    - Signal strength highly dependent on enclosure material and placement\n\n### Pin Differences Between C3 and C6\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"https://github.com/KamadoTanjiro-beep/epdWeatherClockV1/blob/main/resources/epd18.png\" width=\"600\"\u003e\u003cbr\u003e\n\u003ctable\u003e\n\u003c/table\u003e\n\u003cp\u003e\u003ci\u003eSource: \u003ca href=\"https://sigmdel.ca/michel/ha/xiao/xiao_esp32c6_intro_en.html#deep_sleep\"\u003esigmdel.ca\u003c/a\u003e\u003c/i\u003e\u003c/p\u003e\n\u003c/div\u003e\n\n### Power Consumption Comparison\n- ⚡ **Deep Sleep Current**:\n  - XIAO ESP32 C6: ~25µA total\n    - 14.3µA from ESP32C6 core ([Source](https://sigmdel.ca/michel/ha/xiao/xiao_esp32c6_intro_en.html#deep_sleep))\n    - ~11µA from all peripheral devices in standby (RTC, sensors, etc.)\n  - XIAO ESP32 C3: Higher deep sleep current (~43µA, tested)\n  - XIAO ESP32 S3: Potentially lower deep sleep current (~11.9µA, untested)\n    - Not used due to project's modest performance needs\n    - Could be viable alternative for maximum battery life\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e📡 Sensors \u0026 Connectivity\u003c/summary\u003e\n\n### Sensors\n- 🌡️ TMP117 High-Precision Temperature Sensor\n  - ±0.1°C (max) from -20°C to +50°C\n  - 16-bit resolution (0.0078°C)\n  - Low power: 3.5µA in shutdown mode\n  - Temperature range: -55°C to +150°C\n  \n- 💨 Bosch BME680 Environmental Sensor\n  - Humidity: ±3% accuracy\n  - Pressure: ±0.6 hPa absolute accuracy\n  - Gas sensor for air quality\n  - Temperature range: -40°C to +85°C\n  \n- 💡 BH1750 Light Sensor\n  - 1 - 65535 lux range\n  - 16-bit resolution\n  - Spectral responsivity close to human eye\n  - Low power: 120µA active mode\n  \n- ⏰ DS3231 RTC Module\n  - Accuracy: ±2ppm (±0.432 sec/day)\n  - Temperature compensated crystal\n  - Battery backup support\n  - -40°C to +85°C operating range\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e⚡ Power System\u003c/summary\u003e\n\n### Power \u0026 Display\n- 🔋 IFR26700 LiFePO4 Battery\n  - Nominal voltage: 3.2V\n  - Capacity: 4000mAh (8000mAh total with 2 cells)\n  - Cycle life: \u003e1000 min. cycles\n  - Size: 26mm × 70mm\n  - Max discharge current: 8A\n  - Operating temperature: -20°C to +60°C\n  - Self-discharge rate: \u003c3% monthly\n  - Battery critical threshold: 30%\n    - Higher threshold significantly increases battery lifecycle ([Source](https://batteries.intercel.eu/knowledge-center/battery-technology/lithium-batteries/lifepo4-batteries/#:~:text=LiFePO4%20batteries%20last%20more%20than,continue%20where%20other%20batteries%20stop.))\n    - Urges to recharge at 30% remaining capacity\n    - Preserves cell health for longer service life\n    - Implemented in firmware via critBattPercent constant\n\n- ⚡ TP5000 Charging Module\n  - Input voltage: 4.5-8V\n  - Charging current: 1000mA (adjustable)\n  - Charging accuracy: ±1.5%\n  - LiFePO4 mode: 3.6V cutoff\n  - Over-voltage protection\n  - Temperature protection\n  - Short circuit protection\n\n- 📟 Waveshare 4.2\" E-Paper Display\n  - Resolution: 400×300 pixels\n  - Three colors: Black, White, Red\n  - Active area: 84.8mm × 63.6mm\n  - Refresh time: 15 seconds\n  - Viewing angle: \u003e170°\n  - Operating voltage: 3.3V\n  - Ultra-low power consumption\n  - No backlight needed\n  - SPI interface\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e📟 Display \u0026 Ghosting\u003c/summary\u003e\n\n### E-Paper Display Ghosting\n- 👻 **Ghosting Issue**: Even after using full scan/update mode, ghosting can occur\n  - Red lines may appear over black background\n  - Occurs when same elements stay static for extended periods\n  \n- 🛡️ **GhostProtek Mode**\n  - Automatically inverts display colors periodically\n  - Activates after predetermined number of boots\n  - Prevents static elements from burning in\n  - Helps maintain display longevity\n  - Experimental feature to reduce ghosting artifacts\n\n\u003c/details\u003e\n\n## 🔧 Setup \u0026 Configuration\n\n### Initial Setup\n1. 📱 Power on the device\n2. 🔄 Connect to `WCLOCK-WIFI-MANAGER` WiFi network\n3. 🌐 Navigate to the IP address shown on the display\n4. ⚙️ Enter your WiFi credentials\n5. 🎉 Device will restart and connect to your network\n\n### API Configuration\n- 🔑 OpenWeatherMap API key required\n- 🌍 Custom API support for personal weather station\n- 📍 Configurable location (latitude/longitude)\n\n### Debug Mode\n- 🐛 Enable via DEBUG_PIN (D6)\n- 📊 Shows network diagnostics\n- 🔍 Displays detailed error messages\n\n### Power Management\n- 🔋 Battery voltage monitoring\n- ⚡ Configurable sleep intervals (default: 15 mins)\n- 🌙 Night mode with reduced updates\n- 📉 Low battery failsafe mode\n\n### Display Modes\n1. Normal Mode\n   - Full weather data\n   - Temperature, humidity, pressure\n   - Moon phase and weather icons\n   - Sunrise/sunset times\n2. Limited Mode (Low Battery)\n   - Basic temperature display\n   - Battery status\n   - Time and date\n3. Night Mode\n   - Display sleeps when dark\n   - 5-minute wake intervals\n   - Power saving features\n\n### Software Updates\n- 🔄 **Current Update Method**:\n  - No OTA (Over-The-Air) updates due to memory constraints\n  - Manual update process required:\n    1. Turn OFF the clock using flip switch\n    2. Press and HOLD the debug button (D6)\n    3. While holding debug button, turn ON the clock\n    4. It will disable sleep\n    5. Release debug button when display starts to refresh\n    6. Display will show temperature and then \"DEBUG MODE\" (No need to wait for this)\n    7. Connect to PC via USB-C cable\n    8. Upload new code using Arduino IDE\n\n## 🌿 Environmental Impact\n\n\u003ctable\u003e\n\u003ctr\u003e\n\u003ctd width=\"50%\"\u003e\n\n### 🔋 Power Efficiency\n- 📱 No backlight needed\n- 💤 Smart sleep modes\n- ⚡ Low power sensors\n- 🔆 Ambient light detection\n\n\u003c/td\u003e\n\u003ctd width=\"50%\"\u003e\n\n### ♻️ Sustainability\n- 🌱 Eco-friendly batteries\n- 📦 Recycled materials\n- 🔄 Long lifecycle\n- 🌍 Low carbon footprint\n\n\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e\n\n## ⚠️ Important Notes \u0026 Warnings\n\n### 🔄 DS3231 Battery Safety ⚡\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"https://github.com/KamadoTanjiro-beep/epdWeatherClockV1/blob/main/resources/epd16.jpeg\" width=\"300\"\u003e\u003cbr\u003e\nMost DS3231 modules are sold with CR2032 or similar cells which are not rechargeable. If you are using a non-rechargeable cell then **REMOVE** either the resistor or the diode marked in the above image.\n\u003c/div\u003e\n\n### 🔌 TP5000 Charging Configuration ⚡\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"https://github.com/KamadoTanjiro-beep/epdWeatherClockV1/blob/main/resources/epd17.png\" width=\"300\"\u003e\u003cbr\u003e\n**IMPORTANT**: There are some misinformation over internet regarding the charging mode of TP5000. If you are using LiFePO4 cells with TP5000 then **DO NOT** short the above marked area with caption F.\n\u003c/div\u003e\n\n### Battery Configuration Safety\n- 🔋 **Parallel Cell Configuration**: While this project uses two LiFePO4 cells in parallel, this is generally not recommended with TP5000 or similar charging circuits\n  - Currently safe due to verified cell balance\n  - Long-term balance cannot be guaranteed\n  - Only implemented due to ultra-low current draw\n\n### Power Management Considerations\n- ⚡ **Current Draw**: This project's extremely low current consumption (well below rated cell capacity) makes the parallel configuration safer\n- 🛡️ **Protection**: Always use proper BMS protection for your cells\n- 📝 **BMS Setup**: Due to limited 1S LiFePO4 BMS availability:\n  - Using 4.2V BMS for 2.5V cutoff protection (Low Discharge Cutoff)\n  - TP5000 connected directly to cells for proper 3.6V charging\n  - This is a temporary solution until better 1S LFP BMS options become available\n\n### USB Charging Safety\n- ⚡ **USB Connection Warning**: Disconnect battery when connecting USB to ESP32C6\n  - XIAO modules are designed for LiPo/Li-ion batteries (4.2V charging)\n  - Not compatible with LFP battery charging (3.6V required)\n  - Dedicated USB-C module recommended\n  - Connect USB-C module output to TP5000 input\n  - Detailed schematics will be provided later\n  - Simple setup despite complex explanation\n\n### Voltage Compatibility\n- ✅ **Operating Range**: \n  - All components work perfectly with LFP's lower voltage\n  - Tested operational down to 2.8V\n  - No impact on battery life or performance\n  - LFP cells maintain stable 3.2V for extended periods\n  - 6+ months of testing\n  - Components designed for wide voltage range operation\n\n### Enclosure Design\n- 💨 **Ventilation Requirements**: \n  - Proper air vents are crucial\n  - Ensures accurate sensor readings\n  - Prevents heat buildup\n  - Essential for environmental monitoring\n- 🔧 **Sensor Orientation**:\n  - TMP117 and BME680 must be mounted horizontally\n  - Sensors should face downward\n  - Prevents dust and particle accumulation\n  - Ensures accurate long-term readings\n\n\u003e ⚠️ **Please consider these points carefully before replicating this setup. Battery safety is crucial!**\n\n## 🤝 Contributing\n\n\u003cdiv align=\"center\"\u003e\n\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com)\n[![Contributors](https://img.shields.io/github/contributors/desiFish/ESP32-ePaper-Display-Weather-Clock.svg?style=flat-square)](https://github.com/desiFish/ESP32-ePaper-Display-Weather-Clock/graphs/contributors)\n\n\u003c/div\u003e\n\n## 📝 License \u0026 Credits\n\n\u003ctable\u003e\n\u003ctr\u003e\n\u003ctd\u003e\n\n### 📜 License\nGNU General Public License v3.0\n- ✅ Freedom to use commercially\n- ✅ Freedom to modify\n- ✅ Freedom to distribute\n- ❗ Must be open source\n- ❗ Must preserve copyright\n- ❗ Must use same license\n\n\u003e 🙏 **Attribution Request**: If you use this code in your project, please include a link to this repository. Your support through attribution helps maintain and grow our open-source community. Thank you!\n\u003e\n\u003e ```markdown\n\u003e Based on [ESP32 E-Paper Weather Clock](https://github.com/desiFish/ESP32-ePaper-Display-Weather-Clock) by desiFish\n\u003e ```\n\n\u003c/td\u003e\n\u003ctd\u003e\n\n### 👏 Credits\n- 🎨 Weather icons by SeBassTian23\n- 📚 GxEPD2 Library\n- 💻 Community Contributors\n\n\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e\n\n---\n\n\u003cdiv align=\"center\"\u003e\n  \n### Made with 💖 and ♻️ materials\n\n\u003cbr\u003e\n\n[![Star This Project](https://img.shields.io/github/stars/desiFish/ESP32-ePaper-Display-Weather-Clock?style=social)](https://github.com/desiFish/ESP32-ePaper-Display-Weather-Clock/stargazers)\n\n\u003c/div\u003e\n\n","funding_links":["https://www.paypal.com/paypalme/aniketpatra"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FdesiFish%2FEPaper-Display-Weather-Clock","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FdesiFish%2FEPaper-Display-Weather-Clock","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FdesiFish%2FEPaper-Display-Weather-Clock/lists"}