Skip to content
Lesefluss

Documentation

Guides for the app, website and the ESP32 companion.

ESP32 Build Guide

Lesefluss runs on two ESP32 variants:

AMOLEDrecommended

1.91" AMOLED display, richer contrast, smaller form factor and better performance. Costs a bit more and requires soldering a JST connector onto the battery if you want to use the same as I did.

ST7789budget

ESP32-S3 dev board with an integrated ST7789 LCD. Cheaper and no soldering needed because we can use a bigger battery made for esp32 specifically.

1Ordering parts

Pick a variant and order its board and battery. Case files are printed from the repo - see step 2.

AMOLED variant

ST7789 variant

2Printing the case

Case files are 3MF - open in Bambu Studio, PrusaSlicer, or Orca. PLA works well at 0.2 mm layer height. Print body, cover, and button separately. Supports are not required.

AMOLED case (oled-v1)

ST7789 case (base-v1)

3Flashing the firmware

The setup.sh script erases flash, writes MicroPython, and uploads the Lesefluss code in one go.

  1. Clone the repo: git clone https://github.com/sch-28/lesefluss
  2. Make sure you have Python 3 installed and connect the board via USB-C.
  3. Both firmware binaries ship in apps/esp32/etc/ - the AMOLED build comes from nspsck/RM67162_Micropython_QSPI (upstream MicroPython build for ESP32-S3 + RM67162). No manual download needed.
  4. From apps/esp32, run:
    ./scripts/setup.sh --board AMOLED
    or
    ./scripts/setup.sh --board ST7789
    The script creates a Python venv, installs esptool + mpremote, flashes firmware, and uploads the app.
  5. Then you have to make sure the Dev mode is disabled, to do that run:
    ./scripts/run.sh --board AMOLED
    or
    ./scripts/run.sh --board ST7789
    Open the lesefluss app, device settings, connect, disable the Dev mode and sync it to the esp32.

4Assembly

  1. Gather the printed case parts (body, cover, button) for your variant.
  2. AMOLED only: solder a 1.25 mm JST connector onto the battery wires and make sure the polarity is correct!
  3. Plug the battery into the board's JST socket.
  4. Fit the board into the case body, seat the button, and close with the cover.