# Silkscreen: an open-hardware ESP32-S3 e-paper mainboard you can order from a factory

> Silkscreen is a 2-layer ESP32-S3 e-paper reader mainboard designed in KiCad 9 and released as CERN-OHL-S-2.0 hardware, with a 24-pin SPI display connector, eight navigation buttons, microSD and single-cell Li-ion power. It suits a builder who wants to assemble their own pocket reader, and there is no firmware release for the board yet.

**iandchasse/silkscreen-pcb** — Silkscreen: open-hardware ESP32-S3 e-paper reader mainboard (KiCad 9). Formerly the de-link hub.

- Repository: https://github.com/iandchasse/silkscreen-pcb
- Website: https://silkscreenreader.com
- Stars: 581 · Forks: 12
- Language: Python
- License: CERN-OHL-S-2.0
- Published: 2026-10-22 · Updated: 2026-10-22 · Language: en
- Canonical page: https://hysenlabs.com/projects/iandchasse-silkscreen-pcb

## A mainboard, not a reader, and what that means for your parts list

Silkscreen is an open e-paper development board, and the framing matters. You can build a pocket reader around it, adapt its firmware or extend the electronics, and the repository covers the mainboard and nothing else. A factory can assemble the board for you, and then you add a compatible e-paper display, a battery, a microSD card and a case.

That division of labour is the whole design. The factory sends a populated circuit board and nothing else, so the parts you must source yourself are the display panel, a protected single-cell Li-ion or LiPo pack with a JST-PH 2.0 mm 2-pin plug, a microSD card and a USB-C data cable. The USB-C detail has a failure mode worth repeating: the cable must be a data cable, not a charge-only one, or the board will charge but never appear on your computer.

The board itself is a 2-layer ESP32-S3 design with a 24-pin display connector, optional touch and frontlight, microSD and single-cell Li-ion/LiPo power, sized 60.05 by 111.30 mm and 1.6 mm thick. Every part is soldered onto the back face so the front stays clear for the display, which is why the README calls it the silkscreen art side of the board in the images.

The compute is an ESP32-S3 module with 16 MB of flash and 8 MB of PSRAM, with USB built in, so you plug a USB-C cable straight into it with no adapter. Storage is a push-push microSD socket. Controls are eight page and navigation buttons plus power and reset.

The display connector targets SPI e-paper panels, and the primary target is Good Display's 4.26 inch panel family. The plain panel is sold as GDEY0426T82, and the other variants use GDEQ0426T82 with a suffix: -T01C for touch, -FL01C for front light and -FT01C for both. The instruction is to always order by the full part number, because the panel you pick decides which optional parts you fit.

## The production folder, and why KiCad is optional

The most useful decision in the repository is that you do not need KiCad to order a board. The README states it plainly: the board was designed in KiCad 9, but every file a factory asks for is in the production/ folder of the repository, ready to upload.

The repository layout backs that up. Alongside the KiCad sources, which are silkscreen_pcb.kicad_pcb, silkscreen_pcb.kicad_sch and silkscreen_pcb.kicad_pro, there are separate top-level directories for production, fabrication, docs and KiCad itself, plus a fabrication-toolkit-options.json, a DESIGN_REVIEW.md, a NOTICE file, an fp-lib-table and a sym-lib-table for the symbol libraries.

The split between production and fabrication suggests two different handoffs. production/ is the order-ready set for a fab house, while fabrication/ and the fabrication toolkit options file cover the wider set of options a fabricator might offer, such as alternate finishes or board materials. DESIGN_REVIEW.md is a separate document from the readme, and its presence at the top level indicates that the design has been through a structured review with a written record of it.

For documentation, the README points to one file. Everything about how the board works, pin by pin, is in docs/HARDWARE.md, and it covers every circuit block, the GPIO map, what firmware has to do for the hardware, and the dimensions a case needs.

That last point is the one to note for anyone planning an enclosure. The board has six M2 mounting holes, but which screws you need depends on the case you use, and no case is supplied in this repository. The repository also contains a STEP model reference for the board outline, which is what a case designer would work from.

## Battery polarity at J5, and the reason it is called out twice

The README spends an unusual amount of space on battery connection, and the reason is a real hazard rather than pedantry.

On the board, J5 pin 1 is battery negative and pin 2 is battery positive, and the board prints - and + with the word CHECK right beside the connector's mouth. Wire colours are only a guide, because there is no industry standard for which side of a JST-PH plug each wire goes in: packs ship both ways round and the two look identical in a photo. So before plugging a pack in, with USB unplugged, you check that its black wire lines up with the - mark and its red wire with the +. If they are the wrong way round, the two wires in the plug are swapped. A multimeter is the surest check.

The warning block that follows is blunt: lithium cells are a fire risk if reversed, shorted or crushed, so you check your pack against the - + marks beside J5 before plugging it in, you measure it if you can, you use a pack with its own protection board, and you stop using any cell that is puffed, hot or damaged.

Two other battery constraints are easy to miss. The pack must be a protected single-cell, 3.7 V nominal and 4.2 V charged, and its manufacturer's limits must permit 4.2 V charging at the board's approximately 0.25 A charge current. If a cell requires a lower charge current, you adjust R6 and verify the resulting current against its specifications, with the section on the battery charger in HARDWARE.md as the reference.

The author is explicit that a matching size, plug or protection board alone does not establish compatibility, and says so in the parts table itself. The pack used in the author's own build is a 500 mAh 503035 cell, which is 5 by 30 by 35 mm with a JST-PH 2.0 plug, and it fits the board's 38.75 by 30.50 mm battery bay snugly.

The microSD socket has a related ergonomic consequence. The battery normally sits in the board's cut-out directly in front of the card slot, so you lift or slide the cell aside to put a card in or take one out. That is a deliberate layout choice, and the README says the card is not meant to be swapped often.

## The R84 board, and what to do if yours predates it

There is a version split inside the project, and it is the kind of detail that decides whether your board works on first power-up.

The caution block says: if your board has no R84 resistor, which means it was made from older files, you should power it from a USB-C charger, an ordinary USB-A charger or a PC port rather than a fast-charge USB-A brick on a short, thick cable. You check J6's pins with a meter, and you add two wires after a cut. The reason is given in the same block: the files in production/ add R84, a 3V3 link and ground vias, and they have not been built yet.

That is a statement about testing status rather than a design change. The fast-charge path needs the R84 component and the extra link and vias to work correctly, and since the production files carrying them have not been through a fabrication run, the author is not willing to recommend the fast-charge path on boards that lack it.

The two-wire cut is the other half. The README documents a procedure for cutting the board down for a smaller display, and the caution instructs you to add two wires after the cut, with a link to the section describing it. Cutting a mainboard to fit a different panel size is a hardware modification, not a configuration, and it is irreversible in the sense that the board cannot be uncut.

This is also why the caution says to join the Discord before ordering. The board has working prototypes and the closed beta is underway, and the author says a mistake not yet found could mean a board that does not work, while the factory does not refund a board that was built exactly as the files said. Build your own board to participate, and there is no email application.

A caution like that is unusual in a hardware repository and worth taking at face value. It is a specific, testable statement about the state of the design files rather than a general disclaimer.

## No firmware release yet, and what CrossPoint has to do with it

The software story is the part that most needs the caveat, and it comes before the order instructions in the readme.

Silkscreen is built to run the open firmware made for Xteink's readers, starting with CrossPoint. Setting that firmware up for this board is closed-beta work, so there is no firmware release for it yet. The readme asks you to read the Firmware section before you order.

The practical consequence is straightforward. The board is a hardware project at the point where the hardware is documented and buildable while the software is still being brought up in private. You can have a working board on your desk and still not have a reader that boots into a reading application.

The project website at silkscreenreader.com holds the rest of the information: the complete picture of the project, the story behind it, the cost breakdown and the build configurator. The current site preview includes the builder and the beta plans, and the builder supplies the files for your configuration, so the configurator is what decides which display variant and which optional parts a board is built for.

The licence is the other fact that matters for a hardware project. CERN-OHL-S-2.0 is a hardware licence, and the repository ships both a LICENSE file and a NOTICE file, the latter being the convention for recording attribution and patent declarations alongside an open hardware licence. It is a copyleft-style licence for hardware, in the sense that modified versions of the design must remain open, which is a meaningful condition for anyone planning to sell a derived board rather than build one for themselves.

## Where this sits against buying a reader and against a vendor mainboard

Two alternatives frame the decision, and neither is a like-for-like substitute.

The first is buying a finished e-reader. A commercial reader arrives with a display, a battery, a case, firmware and a warranty, and the Silkscreen route gives you none of those. What it gives you is a design you can inspect, modify and build on, plus the ability to change the display variant without replacing the device. For a buyer who wants a working reader to read on, the open mainboard is the wrong purchase. For someone who wants to add a sensor, change the button layout, or understand how a reader is put together, it is the only one of the two options that allows that.

The second is a vendor-supplied e-paper development board, of the kind sold as a bare module for prototyping. Those usually ship with a smaller display and no battery management worth speaking of, and the display is often soldered or on a fixed header. Silkscreen differs on three concrete points: it is a 2-layer board with all components on the back so the display sits flush on the front, it includes the charger, cell protection and 3.3 V regulator for a single Li-ion pack, and the display is a swap rather than a fixed part. The cost of those choices is that this is a mainboard for a specific class of panel, Good Display's 4.26 inch family, and the part number discipline around GDEY0426T82 and the GDEQ0426T82 suffixes reflects that.

The real limit of the project is that it is early and hardware-specific. The board is open, the fabrication files are ready, the documentation is thorough down to the GPIO map, and the firmware is in closed beta. Ordering a board today means committing to a design whose software is not finished and whose newest production files have not yet been fabricated, and the sensible preparation is to read docs/HARDWARE.md, check the R84 question against the board you would receive, and confirm on the project site what the current firmware support actually is.

## Conclusion

Silkscreen fits a builder with a panel supplier relationship, a soldering setup and the patience to work through the J5 polarity check before powering a cell, and it does not fit someone expecting a finished reader, since no case is supplied, no screws are included and no firmware release exists for the board yet. Before ordering, read docs/HARDWARE.md and the beta caution in the README, and check whether your board carries the R84 resistor, because the production files add it and older boards without it need a plain USB-C charger rather than a fast-charge brick.

## FAQ

### What is the Silkscreen board and what do I still need to buy?

Silkscreen is an open-hardware ESP32-S3 e-paper mainboard covering only the board itself. A factory can assemble it, and you still need a 4.26 inch Good Display panel, a protected single-cell Li-ion or LiPo pack with a JST-PH 2.0 2-pin plug, a microSD card, a USB-C data cable, and your own case and screws.

### Do I need KiCad to order a Silkscreen board?

No. The board was designed in KiCad 9, but every file a factory asks for is in the production/ folder of the repository, ready to upload. The KiCad sources are also in the repository for anyone who wants to modify the design.

### How do I check the battery polarity on the Silkscreen board?

J5 pin 1 is negative and pin 2 is positive, and the board prints - and + with CHECK beside the connector. With USB unplugged, confirm the black wire lines up with the - mark and the red wire with the +, and use a multimeter if you are unsure, because JST-PH packs ship with either wiring and look identical.

### Is there firmware for the Silkscreen board?

Not yet. The board is built to run the open firmware made for Xteink's readers, starting with CrossPoint, but setting that firmware up for this board is closed-beta work, so there is no firmware release for it yet and the README asks you to read the Firmware section before ordering.

### What is the R84 resistor on the Silkscreen board?

Boards made from older files may have no R84, in which case they should be powered from a USB-C charger, an ordinary USB-A charger or a PC port rather than a fast-charge USB-A brick on a short thick cable. The files in production/ add R84, a 3V3 link and ground vias, and have not been built yet.

## Sources

- [iandchasse/silkscreen-pcb on GitHub](https://github.com/iandchasse/silkscreen-pcb)
- [Issues](https://github.com/iandchasse/silkscreen-pcb/issues)
- [License: CERN-OHL-S-2.0](https://github.com/iandchasse/silkscreen-pcb/blob/master/LICENSE)
- [Project website](https://silkscreenreader.com)
- [README](https://github.com/iandchasse/silkscreen-pcb/blob/master/README.md)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/iandchasse-silkscreen-pcb
