Skip to the content
2 layers41.2 × 80 mmXIAO ePaper Display Board EE04 V1.2, the printed circuit board in 3D

XIAO ePaper Display Board EE04 V1.2

doug-harriman/E-Display

Electronic display for calendars, weather, etc.

Size
41.2 × 80 mm
Copper layers
2
Thickness
1.6 mm
Parts
176
Nets
128
Pads
512
Tracks, vias
1,244, 464
Pours
24
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
5 Aug 2023
Updated
17 Feb 2026

Overview

XIAO ePaper Display Board EE04 V1.2 is an open-source printed circuit board by doug-harriman, from the doug-harriman/E-Display repository on GitHub, published under the MIT licence. It is a 2-layer board of 41.2 × 80 mm with 176 parts on 128 nets, routed with 1,244 tracks and 464 vias.

It is built around the TPS22916CYFPR, ETA3410D2I-T and GT30L32S4W, with the ME2805A293XG, TLV75801PDBVR-MS and TVS0500DRVR among its other parts. Its parts include 71 capacitors, 49 resistors, 10 ICs, 9 diodes and 6 inductors. It belongs with the lEDs and displays boards and the NXP (LPC, Kinetis, i.MX RT) boards of this library.

Main components

12

README

readme.md

TO-DO

Updated: 2026-02-01

  • Authentication through web page has not been updated for MSAL.

Electronic Image Display Server

Image server for remote electronic displays such as a Kindle.

The image below shows my two devices, one displaying my work calendar in a portrait orientation, the other displaying the family calendar for the week in landscape.

Kindles

Server Pages
DevicesAdminSubject Filter
Sleep DelayGoogle Calendar SelectionOutlook Authentication Request

Motivation

This project was motivated by two desires:

  1. To have a nice display of my work calendar on my desk, available at a glance without having to open up Outlook.
  2. To learn about web programming via Python.

I know there's a lot of stuff here that could be greatly improved. Please submit pull requests if you'd like to help.

Project Inspiration & References

There are many impressive projects out there that do similar things. They've both inspired this project and provided great references for technical implementations. Some great projects to check out:

Key System Features

  • Image generation performed on server to keep display device code as simple as possible. This also allows for easy updates to the display without having to update the device.
  • Server code constructed to support multiple display devices, so only a single server is needed.
  • Display device can request sleep time from server, so that it can go into low power mode. This allows the server to have complex logic to determine sleep duration based on a variety of factors. I use it to reduce my work calendar display refresh rate during non-work hours.
    • Images are be pre-generated just ahead of wake time so that they're ready without wait mimimizing device battery usage.
  • Display device can send basic state information (battery state of charge and local temperature) to server which is stored in an SQLite3 database. State information can then be used for image generation.
  • Server code constructed to support plugins, so features can be added easily and auto-discovered.

Feature Details

  • High-res image generation via Pillow.
  • Reusable image header and footer.
    • Header
      • Current day of week, month and date.
      • Battery state of charge.
    • Footer
      • Last update time (last time image was generated on server).
      • Device IP address.
      • Device name.
  • Weather
    • Query weather forecast from USA National Weather Service.
    • Map weather forecast to icons.
  • Google Calendar
    • Query events
    • Generate one week calendar image.
    • Select which of your Google calendars to display.
  • Microsoft Outlook 365 Calendar
    • Query events
    • Generate hour by hour event image for the current day.
    • Display hour by hour weather forecast.
    • Request authentication URL from the web page, and apply the URL. By default, some Outlook setups required admin approval for access longer than 24 hours. This simplifies daily re-authentication.
  • Custom string filters to remove unwanted text from event subjects for cleaner display.
  • Display properties for Kindle Paperwhite
    • Screen resolution & size
    • Color maps (grayscale)
    • Fonts
  • HTTP Post to MQTT Bridge
    • Post state information to MQTT broker.
    • Keeps device software simple. MQTT data stream without adding MQTT client to device.
    • Additional small MQTT process to push MQTT data to Influx DB.
  • Server software updates via git pull from direcltly from web server.

Installation

The server should be set up and running before setting up the devices. The devices will expect the server to be available so that they can pull images from it.

Server

Installation and configuration for the server are covered in the Server documentation.

Kindle

Installation and configuration for using Kindle Paperwhite devices for an E-Display are covered in the Kindle documentation.

Creating a New Device Image

Creating a New Plugin

Next Tasks

Parts

176
QtyValueFootprintReferences
1710uFCapacitor:C0805C2, C3, C4, C6, C10, C11, C12, C13, C14, C15, C40, C41, C42, C43, C60, C89 +1
15100nFCapacitor:C0402C33, C44, C49, C50, C51, C53, C54, C55, C56, C58, C63, C66, C79, C96, C98
151uFCapacitor:C0402C18, C19, C20, C21, C22, C23, C26, C27, C28, C32, C39, C46, C47, C48, C59
1410KResistor:R0402R13, R28, R29, R31, R35, R36, R37, R38, R39, R41, R47, R48, R59, R61
12Test PointMisc:TP-D45MILTP3, TP4, TP5, TP6, TP7, TP8, TP21, TP24, TP25, TP26, TP49, TP50
94.7uFCapacitor:C0805C1, C5, C8, C24, C25, C29, C30, C31, C94
8100KResistor:R0402R23, R25, R26, R27, R40, R42, R43, R60
60RResistor:R0603R5, R8, R11, R14, R15, R32
4EL-4501VSwitch:SW3-DIP-SIDE-4.5X4.5X5.5MMSW2, SW3, SW4, SW5
4MBR0530Diode:SOD-123D1, D2, D3, D4
30RResistor:R0402R9, R10, R64
3100nFCapacitor:C0603C57, C68, C69
31MResistor:R0402R1, R2, R34
34.7KResistor:R0402R33, R113, R137
3TPD1E10B06DPYRDiode:ESD-0402D6, D8, D9
20.22RResistor:R0805R4, R6
210uHInductor:L0603L3, L6
210uHInductor:L5040SL4, L5
21KResistor:R0402R16, R45
222uFCapacitor:C0805C61, C97
2300pFCapacitor:C0402C64, C65
2470nFCapacitor:C0603C9, C17
247uFCapacitor:C0805C7, C34
2CJ3407Mosfet:SOT23Q3, Q6
2TPS22916CYFPRIc:WLCSP4-0.4-0.77X0.77X0.33MMU16, U17
10.47RResistor:R0603R3
10.47uHInductor:L0805L2
11RResistor:R0805R7
11UHInductor:INT2-SMD-4.2X4.4X1.8MML1
11nFCapacitor:C0402C62
12.2RResistor:R0603R46
12.2uFCapacitor:C0805C16
120KResistor:R0402R12
122KResistor:R0402R24
122pFCapacitor:C0402C45
12AFuse:F1210F1
13.3KResistor:R0402R30
147nFCapacitor:C0402C67
151KResistor:R0402R44
1A2001WF-02AConnector:JST2+2P_2.0_PH_S2B-PH-SM4-TB_1x02-1MP_HorizontalJ3
1CHW05200-501TAPE-2WConnector:FPC50-0.5-28.6X4.9X2MMJ1
1CJ2101Mosfet:SOT-323Q2
1CJ2324Mosfet:SOT23Q1
1ETA3410D2I-TIc:DFN8G-0.5-2X2MMU2
1FPC 24P TOP contactConnector:FPC24-0.5-15.5X4.9X2MMJ2
1GT30L32S4WIc:SOP8-1.27-5.2X5.2x2.16MMU6
1GreenDiode:LED2-0.6X1.7MMD5
1LBSS138WT1GMosfet:SOT-323Q4
1LOGOLogo:LOGO-SEEED-NEW-2_1X19.1MMG***
1LOGOLogo:LOGO-SEEED-NEW-3X30MMG***
1ME2805A293XGIc:SOT-23U4
1MK-22D18 G3Switch:SW6-2CH-2.54-9X3.5X3.5SW1
1NCP15XH103F03RCResistor:R0402R17
1NTCMisc:TP-D45MILNTC_IN2
1PH-2.54-3A-PWConnector:H3-2.54-90DJ5
1SMF5.0CADiode:SOD-123D7
1ST-PH-254-0087-1*2PConnector:H2P-2.54-65_40MILJ4
1SY6974BIc:QFN24G-0.5-4X4MMU12
1TLV75801PDBVRIc:SOT-23-5U8
1TVS0500DRVRDiode:WSON7-0.65-2X2X0.8MMU7
1XIAO-HALF-HOLE-33PSeeed_Studio_XIAO_Series:XIAO-ESP32-S3-Plus-SMDU3
1ZB25VQ32DSJGIc:SOIC8-1.27-5.3X5.3MMU5

Similar boards

  • 6 layers57 × 25.9 mmR7FS7MOD, the printed circuit board in 3D

    R7FS7MOD

    Brazil-L/Lumeward-OpenSource

    Open-source Lumeward firmware and development tools

    228 parts2Apache-2.0
  • 4 layers130 × 105 mmHomeDeck, the printed circuit board in 3D

    HomeDeck

    Kilan777/HomeDeck

    Jarvis HomeDeck: a Raspberry Pi CM4 carrier board and voice-assistant software for a 7-inch smart display (KiCad hardware, generated from Python, plus the Python/JS assistant)

    228 parts1
  • 4 layers104 × 64 mmFYDP, the printed circuit board in 3D

    FYDP

    mingzejin11/FYDP

    4B capstone project repository containing PCB design files

    259 parts
  • 2 layers14 × 9 mmTelephone Buddy, the printed circuit board in 3D

    Telephone Buddy

    weaslepalace/boards

    Monorepo for PCB design stuff

    130 parts
  • 4 layers30 × 30 mmReCamera 2002 POE Board, the printed circuit board in 3D

    ReCamera 2002 POE Board

    Seeed-Studio/OSHW-reCamera-Series

    reCamera is a series of open-source AI cameras.

    75 parts495Apache-2.0
  • 4 layers48 × 44.5 mmSmol servo rpi2350-tmc6200, the printed circuit board in 3D

    Smol servo rpi2350-tmc6200

    dognotdog/smol_servo

    circuitry and software for controlling NEMA17 size brushless motors and stepper motors as servos.

    151 parts5

Questions

How big is the XIAO ePaper Display Board EE04 V1.2 PCB?

It measures 41.2 × 80 mm and has 2 copper layers, 1.6 mm thick.

What parts does the XIAO ePaper Display Board EE04 V1.2 use?

176 parts, built around the TPS22916CYFPR, ETA3410D2I-T, GT30L32S4W and ME2805A293XG. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the XIAO ePaper Display Board EE04 V1.2 KiCad files?

From the doug-harriman/E-Display repository on GitHub, at the commit this page was made from: the board is trmnl-7.5in-diy-kit/doc/XIAO-ePaper-Display-Board-EE04-v1.2-kicad/XIAO ePaper Display Board EE04_V1.2.kicad_pcb and its schematic trmnl-7.5in-diy-kit/doc/XIAO-ePaper-Display-Board-EE04-v1.2-kicad/01 Descriptions.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the XIAO ePaper Display Board EE04 V1.2 design in my own project?

Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).