Oreo mascot
Oreo
ESP32-S3-DevKitC · breadboard phase

The hardware, all open.

Tufty-classic portrait layout. Eight buttons, IR for line-of-sight quests, an MPU6050 for shake and tilt, four LEDs around the frame. Schematics and BOM live on the repo — fork them and roll your own.

IRBSGFRQWCHOMEABCUPDOWNLEFTRIGHTIMUUSB-C

Full schematics

KiCad project (4-layer FR-4, ENIG finish), Gerbers, and a full BOM with substitutions live in docs/hardware/. PCB v1 fab files coming soon.

Coming soon

MCU

ESP32-S3 dual core @ 240 MHz

Memory

16 MB flash · 8 MB PSRAM

Radio

WiFi 2.4 GHz · BLE 5 · IR transceiver

Display

ST7789 240×320 IPS · portrait

Power

USB-C + LiPo deep-sleep · ~5 µA standby

I/O

8-button matrix · IMU · 1-wire IR · I²C bus

Dimensions

55 × 90 mm portrait PCB

Layers

4-layer FR-4 · 1.6 mm · ENIG finish

Layered architecture

Four layers, each can be rewritten without the others noticing.

apps/L4

Userland — manifest.json + main.py per app.

oreoOS/L3

The OS: launcher, store, OTA, notifications, file transfer.

oreoWare/L2

HAL / Board Support: drivers for screen, buttons, IMU, BLE, WiFi, IR, battery.

MicroPythonL1

Runtime — we credit it loudly; we did not write it.