Battery-driven E-Ink Weather/Sensor Dashboard - using BLE/NRF52840

Inspired by the Weatherman Dashboard for ESPHome, I created a battery-based version using an XIAO nRF52840 MCU with Bluetooth Low Energy.

Estimated battery life is up to 12 months :fire:, as the MCU only consumes 22.5 µA during idle phases. Charging is done by the integrated charging controller of the XIAO nRF52840 via USB C.

Hardware

  • Seeed Studio XIAO nRF52840 link
  • Waveshare 13187 7.5inch e-Paper link
  • Waveshare e-Paper Driver HAT Rev2.3 link
  • IKEA Ribba frame link
  • 2500mAH Lithium-Polymer battery link

Software

BLE Server

Display

  • Arduino
  • GxEPD2 for controllling and drawing on the ePaper
  • ArduinoJson for decoding the response from Home Assistant
  • fonctconvert from AdafruitGFX to convert fonts to header files
  • rsvg-convert to convert Material Icons svg to png (with find . -type f -name "*.svg" -exec bash -c 'rsvg-convert -h 512 "$0" > "$0".png' {} \;)
  • image2cpp for converting the created png files to header files with bitmaps

More information and references can be found in my repo. If someone likes the project, I’m happy to share more detailed setup/customization instructions.

2 Likes