Files
ESP32_ZACUS/README_ESP32_ZACUS.md
T
Isaac db7083845b Initial commit: Freenove ESP32-S3 UI + story engine from le-mystere-professeur-zacus
- Sources: ui_freenove_allinone/ (LovyanGFX + LVGL rendering)
- Libraries: story engine, hardware managers, audio codec drivers
- PlatformIO: freenove_esp32s3_full_with_ui environment
- Status: Ready for optimization work

Date: 2026-03-01
2026-03-01 20:08:00 +01:00

2.3 KiB
Raw Blame History

ESP32_ZACUS Freenove ESP32-S3 UI Firmware

Branche de travail dédiée pour optimisations et refactoring de l'interface Freenove.

Status: 2026-03-01 Repo initialisé avec sources Freenove + story engine library.

Structure

ESP32_ZACUS/
├── ui_freenove_allinone/          # Freenove UI app (UI rendering, scenes, story integration)
├── lib/                            # Story engine + auxiliary libraries
├── platformio.ini                  # PlatformIO config (Freenove environment)
└── README.md                       # General Zacus firmware guide

Workflow

Setup Local

cd ESP32_ZACUS
python3 -m venv .venv
source .venv/bin/activate
pip install platformio esptool pyserial

# List PlatformIO boards
pio boards | grep freenove

Build & Upload Freenove

pio run -e freenove_esp32s3_full_with_ui -t upload --upload-port /dev/cu.usbmodem5AB90753301

Serial Monitor (115200 baud)

pio device monitor -p /dev/cu.usbmodem5AB90753301 -b 115200

Or Python:

python3 << 'PY'
import serial, time
port = '/dev/cu.usbmodem5AB90753301'
ser = serial.Serial(port, 115200, timeout=0.5)
time.sleep(0.2)
ser.write(b'STATUS\n')
time.sleep(0.3)
for _ in range(10):
    line = ser.readline().decode('utf-8', 'ignore').strip()
    if line:
        print(line)
ser.close()
PY

Future Work

  • UI Optimization (ui_freenove_allinone):

    • Refactor LVGL rendering pipeline
    • Scene/story integration improvements
    • Touch input handling; audio trigger feedback
  • Story Engine (lib/story/):

    • Performance audit
    • Memory footprint reduction
    • ESP-NOW sync protocol optimization
  • Hardware Integration:

    • Audio codec I2S optimization
    • PSRAM buffer management
    • Camera/WiFi/Bluetooth coexistence

Git Push to GitHub

Once repo created on GitHub:

cd ESP32_ZACUS
git remote add origin https://github.com/YOUR_USER/ESP32_ZACUS.git
git branch -m master main
git push -u origin main

References


Last Updated: 2026-03-01
Authored by: Agent (Copilot)