Skip to the content
4 layers95 × 55.5 mmEinkPDA keyboard, the printed circuit board in 3D

An E-Ink PDA device using the ESP32 S3.

Size
95 × 55.5 mm
Copper layers
4
Thickness
1 mm
Parts
137
Nets
111
Pads
542
Tracks, vias
2,185, 526
Pours
525
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
3 Dec 2024
Updated
5 Nov 2026

Overview

EinkPDA keyboard is an open-source printed circuit board by TalismanDesign, from the TalismanDesign/PocketMage_PDA repository on GitHub, published under the Apache-2.0 licence. It is a 4-layer board of 95 × 55.5 mm with 137 parts on 111 nets, routed with 2,185 tracks and 526 vias.

It is built around the ESP32-S3-WROOM-1-N16R2, TPS61040DBV and TPS63001DRC, with the AFC20-S02ACA-00, MP2722GRH-0000-Z and PCF8563T/5 among its other parts. Its parts include 41 switches, 33 capacitors, 19 resistors, 10 ICs and 5 connectors. It belongs with the lEDs and displays and keyboards and input boards and the ESP32 boards of this library.

Main components

12

README

README.md

PocketMage PDA

PocketMage is available on Crowd Supply! Check it out here!

@Ashtf 2025

Screenshot 2025-09-10 203805 Screenshot 2025-09-10 203851

[Project Summary]

This project is a PDA powered by an ESP32-S3 running a custom OS written in C++ using PlatformIO. This project utilizes an E-Ink and OLED screen in tandem to mitigate the refresh rate restrictions of an E-Ink panel while retaining the aesthetics and benefits of using E-Ink. This project is a work in progress and currently amounts to a simple GUI for navigating between apps, a text (.txt) file editor, and a basic file manager. More applications are planned for the future and a list of TO-DOs can be found below.

At this point, the plan for this project is to get the software and hardware to maturity and once a finished product is achieved, a few things will happen. First, the project files (Code, KiCad schematics, 3D files) will be open-sourced and free for anyone to access. Next, I will likely begin selling kits that allow people to purchase all the parts required to build a device for themselves if they don't want to source the parts themselves. Finally, the community will be encouraged to help develop the software for the device and hopefully push it even further than I could myself.

The project is open hardware and open software: the code, KiCad schematics, and 3D files are published under Apache-2.0. Kits are available on Crowd Supply for anyone who prefers not to source parts individually. Community contributions to the firmware and apps are welcome.

[Getting Started]

Start with the docs sites. The PocketMageOS docs cover the device, the OS, and the built-in apps; the SDK docs cover building standalone apps.

Apps come in two forms. Native apps compile into the firmware; start from APP_TEMPLATE.cpp and the App API Reference. ELF apps build standalone against the SDK and load from the SD card at runtime; start from the SDK Get Started guide.

The app walkthrough video is a useful first pass: Developing For the PocketMage.

[Hardware]

  • ESP32-S3 WROOM1 with 16 MB flash and 8 MB RAM. WiFi and Bluetooth supported.
  • 3.1" 320x240px 1-bit SPI E-Ink panel (GDEQ031T10) with integrated driver
  • 256x32px 1-bit SPI OLED (SSD1326, ER-OLED018-1W) with integrated driver
  • MicroSD card slot with support for up to 2 TB
  • TCA8418 I2C keyboard matrix IC
  • Piezo buzzer (simple tones)
  • Power button
  • 1200 mAh pouch-style LiPo battery with JST PH (2 mm) connector
  • USB Type-C connector
  • PCF8563T I2C RTC module
  • Expansion port with the following breakouts:
    • +3.3V
    • GND
    • I2C SDA
    • I2C SCL
    • SPI MOSI
    • SPI SCK
    • SPI MISO
    • GPIO A
    • GPIO B
    • GPIO C
    • GPIO D / UART TX (changeable with a solder jumper, default TX)
    • GPIO E / UART RX (changeable with a solder jumper, default RX)

[Software]

  • Text editor app (TXT)
  • FileWiz file-management app
  • Calendar app
  • USB file transfer app
  • COMM mesh chat app
  • Settings app
  • Tasks app
  • Journal app
  • Dictionary app (Lexicon)
  • App loader for ELF apps
  • Terminal app (Wrench scripting)
  • SSH
  • Commands supported through the home menu:
    • roll dN (dice roll, N = number of sides)
    • set time and date
    • directly open files in TXT or FileWiz by typing the name
    • and more

[Planned Features]

  • Timers and alarms
  • E-book reader
  • WiFi notes/calendar sync (Google Docs/Calendar)
  • LoRa/Meshtastic add-on module
  • Battery expansion add-on module
  • Custom abbreviations
  • Bluetooth keyboard support

License

All files are distributed under the Apache-2.0 license:

PocketMage PDA - A clamshell note-taking and productivity device using E-Ink and OLED.

License

Parts

137
QtyValueFootprintReferences
36~snaptron_7mm_doublesided:contact_pad_SINGLESW1, SW10, SW11, SW12, SW13, SW14, SW15, SW16, SW17, SW18, SW19, SW20, SW21, SW22, SW23, SW24 +20
910uFCapacitor_SMD:C_0805_2012MetricC10, C23, C24, C26, C28, C29, C30, C31, C32
54x10kResistor_SMD:R_Array_Concave_4x0603RN1, RN2, RN3, RN4, RN5
5SolderJumper_2_OpenJumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mmJP2, JP6, JP7, JP8, JP9
40.1uFCapacitor_SMD:C_0402_1005MetricC7, C8, C19, C33
4100KResistor_SMD:R_0603_1608MetricR6, R7, R9, R19
41uFCapacitor_SMD:C_0603_1608MetricC1, C4, C6, C20
44.7uFCapacitor_SMD:C_1206_3216MetricC12, C13, C14, C16
322uFCapacitor_SMD:C_0805_2012MetricC3, C21, C22
3FerriteBeadInductor_SMD:L_0603_1608MetricFB1, FB2, FB3
2.1uFCapacitor_SMD:C_0805_2012MetricC15, C17
2100RResistor_SMD:R_0603_1608MetricR2, R8
2100nFCapacitor_SMD:C_0805_2012MetricC2, C9
210KResistor_SMD:R_0805_2012MetricR1, R14
22kResistor_SMD:R_0805_2012MetricR11, R16
2470RResistor_SMD:R_0805_2012MetricR5, R15
2Conn_01x12_PinAFC01-S12FCA-00:AFC01-S12FCA-00J2, J5
2TestPointTestPoint:TestPoint_Pad_1.0x1.0mmTP1, TP2
11.8MResistor_SMD:R_0805_2012MetricR12
110kResistor_SMD:R_0603_1608MetricR18
110kResistor_SMD:R_0805_2012MetricR17
110uHInductor_SMD:L_Chilisin_BMRx00060630L1
11kResistor_SMD:R_0603_1608MetricR4
11uHInductor_SMD:L_Ferrocore_DLG-0504L2
12.2uHInductor_SMD_Wurth:L_Wurth_WE-LQSH-3012L3
1205kResistor_SMD:R_0805_2012MetricR13
122nFCapacitor_SMD:C_0603_1608MetricC27
14.7kResistor_SMD:R_0603_1608MetricR3
14.7pFCapacitor_SMD:C_0603_1608MetricC11
14.7uFCapacitor_SMD:C_0805_2012MetricC25
147uFCapacitor_SMD:C_0805_2012MetricC5
1680kResistor_SMD:R_0805_2012MetricR20
1680pFCapacitor_SMD:C_0805_2012MetricC18
1BuzzerCustomParts_FP:BUZ-SMD_3P_L5.0-W5.0-P3.50-TLBZ1
1C2764211CustomParts_FP:JST_PH_2P_P2.00mmU6
1Conn_01x26_PinJLC:FPC-SMD_AFC24-S26FIA [DUAL-SIDE]J3
1Crystal_32.768kHzCrystal:Crystal_SMD_3215-2Pin_3.2x1.5mmY1
1D_SchottkyDiode_SMD:D_SOD-323D5
1ESP32-S3-WROOM-1-N16R2RF_Module:ESP32-S3-WROOM-1U1
1KT-0805YLED_SMD:LED_0805_2012MetricD1
1LOGOLOGOG***
1MBR0530Diode_SMD:D_SOD-123D2
1MMBT3904Package_TO_SOT_SMD:SOT-23Q1
1MP2722GRH-0000-ZMP2722GRH-0000-Z:IC_MP2722GRH-0000-ZU9
1Micro_SD_CardJLC:TF-SMD_503398-1892J4
1NTCResistor_SMD:R_0603_1608MetricTH1
1PCF8563TPackage_SO:SOIC-8_3.9x4.9mm_P1.27mmU4
1SM4007Diode_SMD:D_SOD-123FD3
1SMD1206-500-6VFuse:Fuse_1206_3216MetricF1
1SW_DIP_x02CustomParts_FP:2X_DIP_DHN-02-V-TRSW4
1SolderJumper_2_BridgedJumper:SolderJumper-2_P1.3mm_Bridged_RoundedPad1.0x1.5mmJP1
1TCA8418RTWRTCA8418:RTW24_2P45X2P45U5
1TPS22917DBVPackage_TO_SOT_SMD:SOT-23-6U8
1TPS61040DBVPackage_TO_SOT_SMD:SOT-23-5U7
1TPS63001Package_SON:Texas_DRC0010J_ThermalViasU3
1TS3USB30ERSWRPackage_DFN_QFN:UQFN-10_1.4x1.8mm_P0.4mmU10
1USBLC6-2SC6Package_TO_SOT_SMD:SOT-23-6U2
1USB_C_Receptacle_USB2.0_16PJLC:USB-TYPE-C-SMD_TYPE-C-16P-QTWTJ1
1YTS-C017-2BCustomParts_FP:KEY-TH_3P-L4.5-W4.5-P3.0-EHSW36
1YTS-C017-2Bcustomparts:KEY-TH_3P-L4.5-W4.5-P3.0-EHSW41
1~CustomParts_FP:contactPad_cutoutLSW8
1~CustomParts_FP:contactPad_cutoutRSW2

More from TalismanDesign/PocketMage_PDA

1
  • 2 layers95 × 54 mmEinkPDA screen, the printed circuit board in 3D

    EinkPDA screen

    TalismanDesign/PocketMage_PDA

    An E-Ink PDA device using the ESP32 S3.

    28 parts2kApache-2.0

Similar boards

  • 2 layers120 × 100 mmEnose PCB, the printed circuit board in 3D

    Enose PCB

    Tobias66662/Bachelor-Project-PCB-Designs

    PCB to be used in the Enose (for Bachelor Project)

    157 parts1
  • 6 layers48.8 × 40.2 mmARMband, the printed circuit board in 3D

    ARMband

    SetZero/ARMband

    STM32MP1 based smartwatch

    104 partsMIT
  • 2 layers35 × 30 mmE73-2G4M08S1C-52840, the printed circuit board in 3D

    E73-2G4M08S1C-52840

    Rogger/schneggi-sensor

    A low-power ZigBee sensor integrated with HomeAssistant for monitoring temperature, humidity, and CO2.

    28 parts9GPL-3.0
  • 2 layers88.9 × 63.5 mmPicotouch drumcard, the printed circuit board in 3D

    Picotouch drumcard

    todbot/picotouch_drumcard

    Card-sized drum synth / sequencer with MIDI In/Out

    80 parts7GPL-3.0
  • 2 layers207.5 × 38 mmPicotouch pad, the printed circuit board in 3D

    Picotouch pad

    todbot/picotouch_pad

    picotouch MIDI controller, but pad-based

    106 parts1GPL-3.0
  • 4 layers25.4 × 75 mmFiit esp32-kit pcb, the printed circuit board in 3D

    Fiit esp32-kit pcb

    999matej999/fiit-esp32-kit

    FIIT ESP32 Kit

    81 partsGPL-3.0
  • 4 layers100 × 100 mmPhmod, the printed circuit board in 3D

    Phmod

    gallicchio/AMOD-and-RFMOD

    The tutorial's 2x12 adapter (/mudd/133electronics/icepi-zero-dac-adc/adapterboard/) with a 2 x 6 right-angle Pmod socket on a 15 mm extension of its right-hand end, so an Icepi Zero can drive AMOD-A's and RF-MOD's Pmod…

    234 parts
  • 4 layers88 × 30 mmOled nametag, the printed circuit board in 3D

    Oled nametag

    TobleMiner/oled-nametag

    A ESP32-based OLED nametag

    123 parts54CERN-OHL-P-2.0

Questions

How big is the EinkPDA keyboard PCB?

It measures 95 × 55.5 mm and has 4 copper layers, 1 mm thick.

What parts does the EinkPDA keyboard use?

137 parts, built around the ESP32-S3-WROOM-1-N16R2, TPS61040DBV, TPS63001DRC and AFC20-S02ACA-00. 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 EinkPDA keyboard KiCad files?

From the TalismanDesign/PocketMage_PDA repository on GitHub, at the commit this page was made from: the board is Resources/PCB/V3.5/einkPDA_keyboard/einkPDA_keyboard.kicad_pcb and its schematic Resources/PCB/Meshtastic Add-On Module/mesh_addon/mesh_addon.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the EinkPDA keyboard design in my own project?

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