From 56e30a0e3697738b3da47684cf8ba4a21fa6e300 Mon Sep 17 00:00:00 2001 From: arne Date: Sat, 4 Oct 2025 20:32:11 +0200 Subject: [PATCH] Update README.md --- README.md | 29 +++++++++++++++++++---------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index fc5d42c..94071a0 100644 --- a/README.md +++ b/README.md @@ -1,24 +1,33 @@ -# ESP32 Lua Evaluation Example +# Inkpot on ESP32 Lilygo T5 -This example demonstrates how to use Lua 5.4 on ESP32, leveraging the LittleFS filesystem to run Lua scripts from external files. It also showcases Wi-Fi scanning and embedded Lua scripts. +This repository contains the sources required to run the Inkpot frontend on a Lilygo T5, an ESP32 equipped with an e-ink display. It allows you to create Lua sketches that draw on the e-ink screen. ## Prerequisites +There is a `flake.nix` at the root of this repository that defines a development environment with all required tools. If you are using `direnv`, `cd` into the repositorie's root directory after cloning it and run `direnv allow`. If you aren't using direnv the enviroment can be activated using `nix develop .`. + +The build environment consists of: + - ESP-IDF version 5.1.0 or higher - Components: - [Lua 5.4](https://components.espressif.com/components/georgik/lua/) - [LittleFS 1.14](https://components.espressif.com/components/joltwallet/littlefs/) - -## File Structure - -- `main.c`: Main program containing embedded Lua script and file-based Lua execution. -- `assets/`: Directory containing Lua scripts for QR code generation and Fibonacci computation. - - `qr_code.lua` - - `fibonacci.lua` + - [EPDIY](https://github.com/vroland/epdiy) ## Build and Flash ```bash -idf.py set-target esp32 # Replace esp32 with your specific target, e.g., esp32c3 +idf.py set-target esp32 idf.py build flash monitor ``` + +You can stop the monitor by pressing `Ctrl + ]`. + +## File Structure + +- `main/` + - `inkpot.c`: Main program containing embedded Lua script and file-based Lua execution. + - `paper.c`: Defines the lua bindings to epdiy that can be used for drawing on the screen. +- `assets/`: Directory containing all Lua scripts; some are older example scripts that are not executed + - `epaper.lua` contains the sketch that runs at startup +