# PontoTi Orb firmware v0.1.0

Target: **Seeed Round Display for XIAO + XIAO ESP32-S3**. Hardware revision: **REV A**. Status: **PROTOTYPE**.

## Current truth

This is the first versioned firmware scaffold. It proves the project structure, configuration boundary, mode state machine and programmatic character state. The display adapter, touch driver, provisioning portal, Weather API, VPS Health API, OTA, sensors and physical enclosure still require implementation and validation on the selected board.

It is therefore not marked as compiled or hardware-tested.

## Local setup

1. Install Arduino IDE and the Espressif ESP32 board package.
2. Install the official `Seeed_Arduino_RoundDisplay` library and its LVGL dependency.
3. Copy `config.example.h` to `config.h` locally.
4. Replace placeholders locally; do not commit `config.h`.
5. Open `pontoti-orb.ino`, select the XIAO ESP32-S3 board and its USB port.

## Security boundary

The future VPS Health mode must call a public, authenticated, read-only intermediary endpoint. The Orb must never receive administrative VPS credentials. TLS certificate validation, token storage and OTA authentication are still open implementation items.

## Validation status

- Source scaffold: DONE
- Compile: NOT COMPILED — Arduino/PlatformIO toolchain not present in this workspace at the time of creation.
- Physical hardware: NOT HARDWARE TESTED
- Display/touch: NOT VALIDATED
- Weather/VPS data: CONCEPT ONLY
- OTA/provisioning: TODO
