awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
lmarzen avatar

lmarzen/esp32-weather-epd

0
View on GitHub↗
5,954 stars·442 forks·C·gpl-3.0·18 views

Esp32 Weather Epd

This is an ESP32 firmware project that turns a low-power E-Paper display into a weather dashboard. The device runs on battery power with USB-C recharging, periodically fetches weather forecasts from a remote JSON API, and renders them on the screen alongside indoor sensor readings and battery status.

The project includes a build-time SVG-to-C header converter that embeds weather icons directly into the firmware binary, and those icons can be rotated programmatically to align with wind direction before display. An error state machine handles API failures, low battery, time sync issues, and Wi-Fi disconnection by showing distinct error screens to aid troubleshooting.

Users can personalize the dashboard display by configuring language, units, time and date formats, and air quality scales. The firmware manages Wi-Fi connectivity, NTP time synchronization, battery health monitoring, and charging control for unattended operation.

Features

  • E-Paper Display Drivers - Fetches forecast data and indoor sensor readings, then draws them onto a low-power E-Paper screen.
  • ADC Voltage Monitors - Reads battery voltage through an ADC to estimate charge level and trigger low-battery warnings.
  • E-Paper Weather Displays - Displays weather forecasts and indoor sensor data on a low-power E-Paper screen for at-a-glance viewing.
  • JSON Fetching Libraries - Periodically fetches weather forecast data from a remote JSON API and parses it into local data structures.
  • SVG-to-Header Converters - Converts SVG weather icons into C header arrays at build time for direct firmware inclusion.
  • E-Paper Dashboards - Displays weather data, indoor sensor readings, and battery status on a low-power E-Paper display.
  • ESP32 Weather Stations - A low-power ESP32 device that fetches weather forecasts and renders them on an E-Paper screen with customizable settings.
  • ESP32 Firmware Projects - Firmware for ESP32 microcontrollers that manages Wi-Fi connectivity, sensor readings, and battery monitoring.
  • NTP Time Synchronization - Connects to Wi-Fi and uses NTP to keep the real-time clock accurate for forecast scheduling.
  • USB-C Rechargeable Devices - Runs a connected device on battery power with USB-C recharging and battery level monitoring for unattended operation.
  • Error State Machines - Switches between distinct display modes for API failures, low battery, time sync issues, and Wi-Fi disconnection.
  • E-Paper Frame Buffers - Draws weather data and icons into a memory buffer flushed to the E-Paper display in a single update cycle.
  • Battery Monitoring - Monitors battery level and manages USB-C recharging for unattended operation.
  • Personal Dashboard Configuration - Customizes language, units, time and date formats, and air quality scales to match personal preferences.
  • Wind-Aligned Icon Rotations - Rotates weather icons to point in the same direction as the wind before displaying them.
  • Binary-to-C Header Generators - Converts SVG icon files into C header arrays at build time, embedding them directly into the firmware binary.
  • SVG-to-Header Converters - Transforms SVG icon files into C header files for direct inclusion in firmware code.
  • Error State Screens - Shows distinct error screens for API failures, low battery, time sync issues, and Wi-Fi disconnection.
  • USB-C Charge Controllers - Controls the USB-C charging circuit to maintain battery health and prevent overcharging during unattended operation.
  • Weather - Customizes weather icons by converting SVG files to firmware-compatible headers and rotating them to align with wind direction.
  • Wind Direction Visualizations - Rotates weather icons programmatically based on wind direction data before rendering them to the display buffer.
  • Embedded Error Screens - Shows distinct error screens for API failures, low battery, time sync issues, and Wi-Fi disconnection.

Star history

Star history chart for lmarzen/esp32-weather-epdStar history chart for lmarzen/esp32-weather-epd

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with Esp32 Weather Epd

These projects share indexed features with Esp32 Weather Epd. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • infinition/bjorninfinition avatar

    infinition/Bjorn

    5,656View on GitHub↗

    Bjorn is a penetration testing framework that automates network scanning, credential brute-forcing, vulnerability assessment, and data exfiltration, all coordinated through an event-driven task pipeline and controlled via a web-based dashboard. Its modular plugin architecture allows independent security modules to be loaded and chained together, with an asynchronous network scanner discovering live hosts and open ports without blocking the main execution flow. The framework distinguishes itself by integrating a credential brute-force engine that systematically attempts login combinations agai

    Python
    View on GitHub↗5,656
  • joeycastillo/the-open-bookjoeycastillo avatar

    joeycastillo/The-Open-Book

    7,993View on GitHub↗

    The Open Book is an open-source hardware project and DIY electronics blueprint for assembling a handheld text reader. The device consists of a custom printed circuit board, an e-paper display, and a removable SD card storage system. The project focuses on open hardware prototyping, allowing for the assembly of a reader from sourced components and the modification of circuit layouts using electronic design software. It integrates a driver module to interface the processor with the e-paper screen and utilizes a flash memory interface to store system firmware and text files. The hardware design

    View on GitHub↗7,993
  • fatihak/inkypifatihak avatar

    fatihak/InkyPi

    3,683View on GitHub↗

    InkyPi is a digital signage management system designed to schedule and display rotating content and dynamic data across network-connected screens. It functions as a networked display controller and external data integration engine, allowing for the fetching and rendering of third-party plugins, calendars, and news feeds. The system includes a hardware display driver manager that installs and configures model-specific drivers for various electronic paper display controllers. It utilizes a web-based interface for remote configuration, enabling the management of display settings and content upda

    Pythoneinkepaperinkypi
    View on GitHub↗3,683
  • emenstanougat/esp32-bluejammerEmenstaNougat avatar

    EmenstaNougat/ESP32-BlueJammer

    5,342View on GitHub↗

    ESP32-BlueJammer is an embedded signal blocker and wireless interference tool designed for the ESP32 microcontroller. It functions as a radio frequency disruptor that emits noise and unnecessary packets across the 2.4GHz spectrum to interrupt wireless communications. The project targets the disruption of Bluetooth, WiFi, and remote control signals, including those used by drones and peripherals. It allows for spectrum testing by introducing signal noise across common radio frequency channels to evaluate device resilience. The firmware includes mechanisms for switching between interference mo

    bluetoothbtcoding
    View on GitHub↗5,342
Compare all 18 related projects→

Frequently asked questions

What does lmarzen/esp32-weather-epd do?

This is an ESP32 firmware project that turns a low-power E-Paper display into a weather dashboard. The device runs on battery power with USB-C recharging, periodically fetches weather forecasts from a remote JSON API, and renders them on the screen alongside indoor sensor readings and battery status.

What are the main features of lmarzen/esp32-weather-epd?

The main features of lmarzen/esp32-weather-epd are: E-Paper Display Drivers, ADC Voltage Monitors, E-Paper Weather Displays, JSON Fetching Libraries, SVG-to-Header Converters, E-Paper Dashboards, ESP32 Weather Stations, ESP32 Firmware Projects.

Which projects share features with lmarzen/esp32-weather-epd?

Projects with overlapping indexed features include: infinition/bjorn — Bjorn is a penetration testing framework that automates network scanning, credential brute-forcing, vulnerability… fatihak/inkypi — InkyPi is a digital signage management system designed to schedule and display rotating content and dynamic data… joeycastillo/the-open-book — The Open Book is an open-source hardware project and DIY electronics blueprint for assembling a handheld text reader.… emenstanougat/esp32-bluejammer — ESP32-BlueJammer is an embedded signal blocker and wireless interference tool designed for the ESP32 microcontroller.… koush/ion — Ion is an asynchronous HTTP client library for Android that handles network requests, JSON parsing, image loading, and… londonappbrewery/flutter-course-resources — This repository provides the downloadable materials and syllabus for a complete Flutter development bootcamp, guiding…