Back to list

SmoothEPD

A driver that pushes a tiny 1.54-inch e-paper display to 47Hz: a 0.01-second stopwatch and a 2,300-particle fluid simulation on a screen costing a few dollars.

田清远
Author
@田清远
Project ShowcaseDeveloper ToolsOnline
2
0

Project intro

E-paper screens normally take seconds to refresh a frame — lovely for reading, useless for anything that moves. SmoothEPD is a driver for the 1.54-inch SSD1681 e-paper display that gets this little screen, which costs just a few dollars, running at 47Hz by only updating the pixels that changed instead of redrawing the whole screen. The repo includes two demos: a stopwatch accurate to 0.01 seconds and a 2,300-particle fluid simulation, both tested and working on CH32H417 and CH32V303 microcontrollers.

It builds on other people's work: Heguang first showed the 60Hz parallel-interface approach, then kuslota's inkboy hit 30Hz with four grey levels on the same 1.54-inch serial screen, and this project pushes it further to 47Hz. In theory other SPI e-paper displays work too, such as the 152x152 square panel and the 2.9-inch strip. Memory use is chunky — a 5KB display needs around 40KB for the driver plus buffers — but it runs on single-core chips as well, and the stopwatch demo works fine on the CH32V303.

The project has 78 stars and 14 forks on GitHub. The author is refreshingly honest in the README: the driver code is vibe-coded, but every line has been read and cleaned up by a human before going in. He also wrote a long, careful section on e-paper lifespan: switching pixels too fast builds up DC stress that damages the panel and leaves ghosting, so the default setup compensates for static stress at intervals, pushing only in the direction already being displayed, which barely affects the picture.

The limits are practical: this is a driver for electronics hobbyists, not a product you can buy. You need your own e-paper module and SPI hardware, and you have to open the project in MounRiver Studio II to compile and flash it. And fast refresh will never be e-paper's natural strength — the ink particles have inertia and leave heavy trails, so the author himself advises using slow-moving blocks of colour and avoiding fast horizontal lines.

Actions

Visit project URL

Tech stack

cch32h417ch32v303ssd1681

Project info

Project category
Developer Tools
Project status
Online
Collaboration intent
None

Comments (0)

ME
0/1000
Loading comments...