ERBO PUB Reader

Free EPUB reader firmware for the M5Stack Paper S3 e-ink device. Turn the ESP32-S3 e-paper board into a pocket ebook reader.

Stable v1.0.16 ESP32-S3 1.7 MB Released 2026-04-28

This project moved here from erbosoft.org. Old links, bookmarks and firmware download URLs redirect to this page automatically.

Install Firmware

Stable release v1.0.16
Your browser doesn't support Web Serial. Use Chrome or Edge, or flash manually below. Web Serial access was denied.
1.7 MB ESP32-S3 USB-C

Works in Chrome and Edge. Plug the device in via USB and click.

or download manually
Download erbopubreader-1.0.16.bin

Flash with esptool at offset 0x0, see the instructions below. Web flasher manifest: manifest.json

Features

Comfortable EPUB reading

Fast partial e-ink refresh, selectable refresh quality modes, furthest-read position tracking and a cover shown on power-off.

Search, bookmarks, footnotes

Full-text search, go-to-page, bookmarks and footnote support including grouped footnotes.

Images and covers

Inline images with a toggle, progressive JPEG decoding for images and covers, placeholders for oversized images.

Dark mode and rotation

Dark mode, manual display flip and IMU-based auto-rotation.

Library and collections

Book collections via /books/ subfolders, library page navigation and USB disk mode for copying books.

Clock and alarm

WiFi NTP time sync, clock screen with date, alarm with speaker and wake from deep sleep.

Smart battery readout

Smoothed battery percentage with a per-cell LiPo learner, auto power-off and optional hourly lock-screen refresh.

Flash Instructions

1

Install esptool

pip install esptool
2

Connect the device

Plug in M5Stack Paper S3 via USB-C. It should appear as /dev/ttyACM0.

3

Flash the firmware

esptool.py --chip esp32s3 --port /dev/ttyACM0 write_flash 0x0 erbopubreader-1.0.16.bin
Permission denied? Add a udev rule for USB access without sudo:
sudo tee /etc/udev/rules.d/99-esp32.rules <<EOF
SUBSYSTEM=="tty", ATTRS{idVendor}=="303a", MODE="0666"
EOF
sudo udevadm control --reload-rules
sudo udevadm trigger
Then unplug and replug the device.
1

Install esptool

pip install esptool
2

Connect the device

Plug in M5Stack Paper S3 via USB-C. Find the port:

ls /dev/cu.usbmodem*
3

Flash the firmware

esptool.py --chip esp32s3 --port /dev/cu.usbmodem* write_flash 0x0 erbopubreader-1.0.16.bin

Replace /dev/cu.usbmodem* with the actual port from step 2.

1

Install esptool

pip install esptool
2

Connect the device

Plug in M5Stack Paper S3 via USB-C. Open Device Manager to find the COM port (e.g. COM3).

3

Flash the firmware

esptool.py --chip esp32s3 --port COM3 write_flash 0x0 erbopubreader-1.0.16.bin

Replace COM3 with your actual port from Device Manager.

Download mode: If the device isn't detected, hold the Boot button (G0) while plugging in the USB cable, then release. This forces download mode.

Changelog

v1.0.16 Book collections via /books/ subfolders, Settings reachable with no books installed, smoother battery % via 11-sample median filter and per-cell LiPo learner (SD log + BMI270 temperature), optional hourly lock-screen battery refresh with quick partial redraw, date on the power-off / lock screen when RTC is synced, faster pagination via incremental per-word width measurement, cached image dimensions per book to skip repeated ZIP inflate
v1.0.15 Progressive JPEG images in reader (with placeholder for oversized images), library page navigation, dark mode
v1.0.14 Clock screen rework, font build fix
v1.0.13 Alarm wake from deep sleep, clock screen
v1.0.12 WiFi NTP time sync, alarm with speaker
v1.0.11 Display rotation: manual flip + IMU auto-rotation
v1.0.10 Cover on power-off fixes, auto power-off
v1.0.9 Cover display on power-off with JPEG cache
v1.0.8 Footnote support
v1.0.7 Progressive JPEG covers, grouped footnotes fix
v1.0.6 Full-text search, go-to-page, bookmarks
v1.0.5 Furthest read position tracking
v1.0.4 Inline images with toggle
v1.0.3 E-ink refresh quality modes
v1.0.2 USB disk mode
v1.0.1 Fast partial e-ink refresh
v1.0.0 Initial release

Support My Work

If you enjoy ERBO PUB Reader or my other projects, consider buying me a coffee.

Back to main page