From b645d6bd606dfd354b82d254d2994357593f01e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aur=C3=A9lio?= Date: Wed, 15 Jul 2026 09:26:34 +0000 Subject: [PATCH] =?UTF-8?q?docs:=20Portugal=20Futurista=20hardware=20produ?= =?UTF-8?q?cts=20master=20plan=20=E2=80=94=204=20product=20lines,=2024=20m?= =?UTF-8?q?onths?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Products: - UniversalisSTB: Set-top box (DVB-T/S/S2/SX, fiber, ADSL, IPTV) on Amlogic S928X-K - UniversalisHand: Handheld console (ESP32-S3 MVP, RISC-V v2) — Gameboy/tamagochi/AI companion - UniversalisDev: DevKit family (ESP32-S3, RP2350, Allwinner D1, RK3588S, PolarFire SoC) - Aurélio Computer: Modular PC/laptop (Framework-style compute modules, expansion bays) Cross-product deps: Mycelium (BSP gen), UOS (hypervisor), Aurélio IDE (dev), Nervura (IPTV) Budget: ~€11,500 over 24 months 8+ SKUs, 50+ units per product, all open-hardware --- ...portugal-futurista-hardware-master-plan.md | 591 ++++++++++++++++++ 1 file changed, 591 insertions(+) create mode 100644 .aurelio/plans/2026-07-13_portugal-futurista-hardware-master-plan.md diff --git a/.aurelio/plans/2026-07-13_portugal-futurista-hardware-master-plan.md b/.aurelio/plans/2026-07-13_portugal-futurista-hardware-master-plan.md new file mode 100644 index 00000000..f842b3f0 --- /dev/null +++ b/.aurelio/plans/2026-07-13_portugal-futurista-hardware-master-plan.md @@ -0,0 +1,591 @@ +# Portugal Futurista — Hardware Products Master Plan + +> **Generated:** 2026-07-13 · **Author:** Hermes Agent for Fábio +> **Scope:** 4 product lines — Set-Top Box, Handheld Console, DevKits, Aurélio Computer +> **North Star:** Every product runs UniversalisOS, built with Mycelium, developed with Aurélio IDE +> **Timeline:** 24 months (MVP) · **Budget tier:** Open-hardware / maker-first / self-hosted + +--- + +## 0. Strategic Context + +This plan defines the **physical product fleet** that makes the software ecosystem real: + +| Software Layer | Hardware Product That Proves It | +|---|---| +| **UniversalisOS** (hypervisor) | Set-Top Box (Android/Linux guests), Aurélio Computer (desktop/laptop guests) | +| **Mycelium** (toolchain) | All products — BSP generation, firmware compilation, config management | +| **Aurélio IDE** | DevKits — the development surface for all hardware | +| **Aurélio Agent** | All products — on-device AI assistant | +| **Nervura Eléctrica** | Set-Top Box — TV/IPTV infrastructure (Tvheadend, DVB) | +| **Ode Electro-sat** | Set-Top Box — CAS/DRM, conditional access | +| **SaveEarth / Ode Triunfal** | Handheld Console — ESP32-S3 firmware, AWS IoT, audio pipeline | +| **Tear de Silicio** | DevKits — FPGA co-design, PolarFire SoC | +| **Olhos de Orpheu** | All products — hardware lab, flashing, debugging, test | + +--- + +## 1. Product Line A — UniversalisSTB (Set-Top Box) + +### 1.1 Vision + +An open-hardware set-top box that replaces proprietary ISP boxes. Runs Android TV / Linux as UniversalisOS guests. Supports every TV delivery technology: DVB-T/T2, DVB-S/S2/Sx, DVB-C (cable), IPTV (multicast/unicast), fiber (GPON/EPON), and ADSL/VDSL for legacy broadband. + +### 1.2 Reference Designs + +| SoC | Vendor | CPU | GPU | DVB Demods | ISP Interfaces | UOS Arch | BOM Est. | +|-----|--------|-----|-----|------------|----------------|----------|----------| +| **Amlogic S928X-K** | Amlogic | A55×4 + A76×4 | Mali-G610 | DVB-S2X/T2/C | Ethernet, WiFi 6 | AArch64 | ~$35 | +| **Rockchip RK3588S** | Rockchip | A55×4 + A76×4 | Mali-G615 | External demod | Ethernet, WiFi 6 | AArch64 | ~$30 | +| **Amlogic S905X4** | Amlogic | A55×4 | Mali-G31 | DVB-T2/C (via demod) | Ethernet, WiFi 5 | AArch64 | ~$18 | +| **Realtek RTD1619B** | Realtek | A55×4 | Mali-G51 | DVB-S2/T2 | Ethernet | AArch64 | ~$15 | + +**Recommended MVP:** Amlogic S928X-K — best DVB support, Android TV certification path, AArch64 (UOS already boots). + +### 1.3 Architecture + +``` +┌─────────────────────────────────────────────────────────────┐ +│ UniversalisSTB │ +│ │ +│ ┌──────────────────────────────────────────────────────┐ │ +│ │ UniversalisOS (EL2 Hypervisor) │ │ +│ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ │ +│ │ │ Android TV │ │ Linux DVR │ │ Aurélio │ │ │ +│ │ │ Guest │ │ Guest │ │ Agent Guest │ │ │ +│ │ │ (Netflix, │ │ (Tvheadend, │ │ (voice, │ │ │ +│ │ │ YouTube) │ │ DVB, DVR) │ │ search) │ │ │ +│ │ └─────────────┘ └─────────────┘ └─────────────┘ │ │ +│ └──────────────────────────────────────────────────────┘ │ +│ │ +│ ┌──────────────────────────────────────────────────────┐ │ +│ │ Hardware Layer │ │ +│ │ SoC: Amlogic S928X-K │ │ +│ │ RAM: 4GB DDR4 Storage: 32GB eMMC │ │ +│ │ DVB: Si2168 (T2) + AVL6882 (S2X) + ATBM8881 (C) │ │ +│ │ ISP: Realtek RTL8221B (2.5GbE) + MediaTek MT7921 │ │ +│ │ HDMI: 2.1 out USB: 3.0 + 2.0 S/PDIF: optical │ │ +│ │ IR: NEC receiver LED: status RGB │ │ +│ └──────────────────────────────────────────────────────┘ │ +└─────────────────────────────────────────────────────────────┘ +``` + +### 1.4 Key Components + +| Component | Choice | Why | +|-----------|--------|-----| +| **DVB-T2 demod** | Si2168 + Si2141 tuner | Most common in Linux STBs, mainline Linux driver | +| **DVB-S2X demod** | AVL6882 | Supports S2X (newer than S2), used in modern satellite STBs | +| **DVB-C demod** | ATBM8881 | Low-cost cable demod, Linux driver available | +| **IPTV** | Software (Tvheadend) | Already running on CT209, proven stack | +| **Fiber (GPON)** | SFP+ module or external ONT | SFP+ for direct fiber, or Ethernet to existing ONT | +| **ADSL/VDSL** | External modem (USB Ethernet) | Not integrated — legacy, use existing ISP modem | +| **Conditional Access** | Ode-electro-sat Nagra3 toolkit | Existing CAS research, extensible to other CAS systems | +| **DRM** | Google Widevine L3 (Android) | Standard for Android TV | +| **AI Assistant** | Aurélio Agent (local LLM via Ollama) | Voice control, content search, recommendations | + +### 1.5 Software Stack + +| Layer | Technology | Source | +|-------|-----------|--------| +| Hypervisor | UniversalisOS (AArch64) | `universalisos/kernel/` | +| Android Guest | AOSP Android TV 14 | LineageOS or AOSP build | +| Linux Guest | Buildroot + Tvheadend + Kodi | Existing CT209 stack ported | +| Agent Guest | Aurélio Agent (Python + local LLM) | `replica-omnisciente/` | +| Firmware Toolchain | Mycelium (configconv replacement) | `mycelium/crates/` | +| BSP Generator | `uos-bsp` (from 24-month plan) | New | + +### 1.6 Open Hardware Design + +| Document | Format | Description | +|----------|--------|-------------| +| Schematic | KiCad 8 | Full board schematic | +| PCB Layout | KiCad 8 | 4-layer, 100mm × 60mm | +| BOM | CSV | Component sourcing (LCSC/Mouser) | +| Mechanical | STEP/STL | Enclosure design (3D-printable) | +| Firmware | Source + binary | UOS + Android + Linux images | +| Documentation | Markdown | Setup guide, API docs, dev guide | + +### 1.7 Phases + +| Phase | Months | Deliverable | +|-------|--------|-------------| +| **A1: Reference Design** | M1–M4 | Schematic, BOM, PCB layout for dev board | +| **A2: bring-up** | M5–M8 | First boot on dev board, UOS AArch64 running | +| **A3: DVB/IPTV Stack** | M9–M12 | Tvheadend + DVB demods working as UOS guest | +| **A4: Android Guest** | M13–M16 | Android TV booting as UOS guest | +| **A5: Production Design** | M17–M20 | Cost-optimized PCB, enclosure, FCC/CE pre-cert | +| **A6: MVP Release** | M21–M24 | 50-unit batch, documentation, open-hardware publish | + +--- + +## 2. Product Line B — UniversalisHand (Handheld Console) + +### 2.1 Vision + +A Rabbit Inc / Game Boy / Tamagotchi-inspired handheld. Not a gaming powerhouse — a **connected, AI-powered pocket companion** with display, touch, audio, and IoT connectivity. Think "Tamagotchi meets AI assistant meets retro gaming." + +### 2.2 Reference Designs + +| SoC | Vendor | CPU | GPU | Display | Audio | WiFi/BT | UOS Arch | BOM Est. | +|-----|--------|-----|-----|---------|-------|---------|----------|----------| +| **ESP32-S3** | Espressif | LX7×2 (240MHz) | — | SPI 240×240 | I2S DAC | WiFi+BT | Bare-metal | ~$5 | +| **ESP32-S3 + display** | Espressif | LX7×2 | — | SPI 320×240 touch | I2S PDM mic+speaker | WiFi+BT | Bare-metal | ~$8 | +| **RP2350** | Raspberry Pi | M33×2 + RISC-V×2 | — | SPI 240×240 | PWM audio | WiFi+BT (via CYW43) | Bare-metal | ~$6 | +| **Allwinner V3s** | Allwinner | A7 (1.2GHz) | Mali-400 | MIPI-DSI 480×800 | I2S codec | WiFi+BT | Linux/UOS | ~$12 | +| **Allwinner D1** | Allwinner | RISC-V C906 (1GHz) | — | MIPI-DSI 480×800 | I2S | WiFi+BT | UOS RISC-V | ~$15 | + +**Recommended MVP:** ESP32-S3 with SPI display + touch + I2S audio. Lowest cost, best existing firmware (ode-triunfal), fastest to prototype. + +**Recommended v2:** Allwinner D1 (RISC-V) — runs UOS natively, bigger screen, more compute for AI features. + +### 2.3 Architecture + +``` +┌─────────────────────────────────────────────────────────────┐ +│ UniversalisHand │ +│ │ +│ ┌──────────────────────────────────────────────────────┐ │ +│ │ Option A: Bare-Metal (ESP32-S3) │ │ +│ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ │ +│ │ │ Game Engine │ │ AI Agent │ │ IoT Gateway │ │ │ +│ │ │ (retro ROMs │ │ (tiny LLM │ │ (SaveEarth │ │ │ +│ │ │ + native) │ │ on-device) │ │ protocol) │ │ │ +│ │ └─────────────┘ └─────────────┘ └─────────────┘ │ │ +│ └──────────────────────────────────────────────────────┘ │ +│ │ +│ ┌──────────────────────────────────────────────────────┐ │ +│ │ Option B: UOS Guest (Allwinner D1) │ │ +│ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ │ +│ │ │ Linux │ │ RetroArch │ │ Aurélio │ │ │ +│ │ │ (Debian) │ │ (emulation) │ │ Agent │ │ │ +│ │ └─────────────┘ └─────────────┘ └─────────────┘ │ │ +│ └──────────────────────────────────────────────────────┘ │ +│ │ +│ ┌──────────────────────────────────────────────────────┐ │ +│ │ Display: 2.8" ILI9341 SPI 320×240 + XPT2046 touch │ │ +│ │ Audio: MAX98357A I2S amp + SPH0645 mic │ │ +│ │ Input: D-pad + 4 buttons + 2 shoulder + touch │ │ +│ │ Power: 18650 Li-ion + TP4056 charger │ │ +│ │ Connectivity: WiFi + BT (on-board antenna) │ │ +│ │ Storage: microSD + 8MB PSRAM (external) │ │ +│ └──────────────────────────────────────────────────────┘ │ +└─────────────────────────────────────────────────────────────┘ +``` + +### 2.4 Key Components + +| Component | Choice | Why | +|-----------|--------|-----| +| **Display** | 2.8" ILI9341 320×240 + XPT2046 touch | Cheap ($3), ESP-IDF driver, Game Boy form factor | +| **Audio output** | MAX98357A I2S DAC + 0.5W speaker | $2, clean I2S, no external DAC needed | +| **Audio input** | SPH0645 I2S MEMS mic | $3, digital I2S, no ADC needed | +| **Controls** | D-pad + 4 face + 2 shoulder + home | Standard retro layout | +| **Power** | 18650 Li-ion + TP4056 + boost to 5V | Rechargeable, long battery life | +| **Storage** | MicroSD (FAT32) | Game ROMs, saved data, OTA updates | +| **Haptic** | DRV2605L LRA motor | Vibration feedback, rumble effects | +| **LED** | WS2812B RGB | Status indicator, ambient effects | + +### 2.5 Firmware Stack + +| Layer | Technology | Source | +|-------|-----------|--------| +| **MVP (ESP32-S3)** | ESP-IDF + ode-triunfal FSM | `ode-triunfal-firmware/` | +| **Game engine** | GB/C/A/NES emulator (esp32 ports) | Open-source emulators | +| **AI assistant** | TinyLlama via esp-llm or Whisper | On-device inference | +| **IoT protocol** | SaveEarth MQTT/HTTP → AWS IoT Core | `savearth/aws-iot-core-poc/` | +| **Audio pipeline** | I2S DMA + FreeRTOS tasks | Custom, based on ode-triunfal audio | +| **OTA updates** | AWS IoT Jobs | Existing provisioning Lambda | +| **v2 (RISC-V)** | UOS micro-kernel (from 24-month plan) | `universalisos/kernel/src/mcukernel/` | + +### 2.6 Open Hardware Design + +| Document | Format | Description | +|----------|--------|-------------| +| Schematic | KiCad 8 | Full board schematic | +| PCB Layout | KiCad 8 | 2-layer, 85mm × 55mm (Game Boy-ish) | +| BOM | CSV | Component sourcing | +| Enclosure | STEP/STL | 3D-printable case with D-pad and buttons | +| Firmware | Source + binary | ESP-IDF project, OTA-ready | +| Game ROMs | Homebrew collection | Public domain / homebrew games | + +### 2.7 Phases + +| Phase | Months | Deliverable | +|-------|--------|-------------| +| **B1: Prototype** | M1–M3 | ESP32-S3 dev board + display + buttons on breadboard | +| **B2: Firmware MVP** | M4–M6 | Display, touch, audio, D-pad working, basic UI | +| **B3: Game Engine** | M7–M9 | GB/C emulator running, game ROM loading | +| **B4: AI Agent** | M10–M12 | On-device AI assistant, voice input, IoT connectivity | +| **B5: PCB Design** | M13–M15 | Custom PCB, enclosure, production-ready | +| **B6: MVP Release** | M16–M18 | 50-unit batch, documentation, open-hardware publish | +| **B7: v2 RISC-V** | M19–M24 | Allwinner D1 version, UOS micro-kernel, bigger screen | + +--- + +## 3. Product Line C — UniversalisDev (DevKits) + +### 3.1 Vision + +A family of development kits at every scale — from tiny MCU dev boards to full motherboard-sized SBCs. All designed for UniversalisOS development, all open-hardware, all with integrated Aurélio IDE support. + +### 3.2 Product Family + +| Tier | Form Factor | Target | SoC/Chip | UOS Arch | BOM Est. | Use Case | +|------|-------------|--------|----------|----------|----------|----------| +| **DevKit-1** | Arduino Nano size | MCU | ESP32-S3 | Bare-metal | ~$8 | IoT, sensors, actuators | +| **DevKit-2** | Raspberry Pi Zero size | MCU+MPU | RP2350 + ESP32-C6 | Bare-metal | ~$12 | Mixed MCU/MPU dev | +| **DevKit-3** | Raspberry Pi size | SBC | Allwinner D1 (RISC-V) | UOS RISC-V | ~$25 | Linux/UOS development | +| **DevKit-4** | Mini-ITX size | SoM+Carrier | RK3588S SoM | UOS AArch64 | ~$80 | Android/Linux guest dev | +| **DevKit-5** | ATX size | Full board | RK3588 + peripherals | UOS AArch64 | ~$150 | Desktop/laptop dev | +| **DevKit-FPGA** | PCIe card | FPGA | PolarFire SoC | UOS RISC-V | ~$200 | Hardware co-design | + +### 3.3 Reference Designs + +#### DevKit-1 (MCU) + +| Component | Choice | Why | +|-----------|--------|-----| +| **MCU** | ESP32-S3-WROOM-1-N8R8 | 8MB flash, 8MB PSRAM, WiFi+BT, ESP-IDF | +| **Headers** | Arduino Nano footprint | Compatible with existing shields | +| **Debug** | Built-in USB-JTAG | No external debugger needed | +| **Power** | USB-C 5V + 3.3V LDO | Standard USB power | +| **LEDs** | 2× WS2812B + power | Status + user indicator | +| **Buttons** | Reset + Boot + User | Standard ESP32 layout | + +#### DevKit-2 (MCU+MPU) + +| Component | Choice | Why | +|-----------|--------|-----| +| **MCU** | RP2350 | Dual M33 + RISC-V, PIO, cheap | +| **Companion** | ESP32-C6 | WiFi 6 + BLE 5 + Thread/Zigbee | +| **Headers** | Raspberry Pi Pico footprint | Compatible with Pico ecosystem | +| **Debug** | SWD (2-pin) | RP2040 debug probe compatible | +| **Power** | USB-C + battery connector | Portable dev | + +#### DevKit-3 (SBC — RISC-V) + +| Component | Choice | Why | +|-----------|--------|-----| +| **SoC** | Allwinner D1 | Single RISC-V C906 @1GHz, Mali-400, MIPI-DSI/CSI | +| **RAM** | 512MB DDR3 | Sufficient for Linux/UOS | +| **Storage** | microSD + 16MB SPI NOR | Boot + rootfs | +| **Display** | MIPI-DSI 4" or HDMI | Touch display option | +| **Networking** | Ethernet + WiFi (RTL8723DS) | Wired + wireless | +| **GPIO** | 40-pin header | RPi-compatible pinout | +| **Debug** | UART + JTAG | Standard debug | + +#### DevKit-4 (SoM + Carrier Board) + +| Component | Choice | Why | +|-----------|--------|-----| +| **SoM** | RK3588S module (8TOPS NPU) | AArch64, 8nm, powerful | +| **Carrier** | Custom mini-ITX | HDMI 2.1, USB 3.0, Ethernet, M.2 | +| **RAM** | 4/8/16GB LPDDR5 | Configurable | +| **Storage** | eMMC 32/64/128GB + NVMe M.2 | Fast storage | +| **AI** | 8 TOPS NPU | On-device inference | +| **Display** | HDMI 2.1 + MIPI-DSI | Dual display | +| **Networking** | 2.5GbE + WiFi 6E | High-speed | + +#### DevKit-5 (Full ATX) + +| Component | Choice | Why | +|-----------|--------|-----| +| **SoC** | RK3588 (full) | All interfaces, 8TOPS NPU | +| **RAM** | 8/16/32GB LPDDR5 | Maximum | +| **Storage** | NVMe M.2 + SATA + eMMC | Desktop-class | +| **PCIe** | ×4 Gen 3 | GPU / accelerator card | +| **Display** | 3× HDMI + MIPI-DSI | Multi-monitor | +| **Audio** | I2S codec + 3.5mm | Full audio | +| **Networking** | 2.5GbE + WiFi 6E | Desktop networking | +| **USB** | 4× USB 3.0 + 2× USB 2.0 | Peripheral connectivity | + +#### DevKit-FPGA + +| Component | Choice | Why | +|-----------|--------|-----| +| **FPGA** | Microchip PolarFire SoC (MPFS250T) | 250K LE, 4× RISC-V cores, Linux-capable | +| **RAM** | 2GB DDR4 | For Linux + FPGA fabric | +| **PCIe** | ×4 Gen 2 | Host connection | +| **FPGA I/O** | 200+ GPIO pins | Custom hardware | +| **Debug** | JTAG + UART + USB | Full debug | +| **Reference** | Microchip Icicle Kit compatible | Existing UOS port | + +### 3.4 DevKit Software + +| Layer | Technology | Notes | +|-------|-----------|-------| +| **BSP Generator** | Mycelium `uos-bsp` | Auto-generate board configs from `.cmp` | +| **SDK** | UOS SDK (C/C++/Rust) | Cross-compile for each target | +| **IDE Integration** | Aurélio Theia + VS Code | Flash, debug, monitor from IDE | +| **Example Projects** | Per-devkit examples | Blink, sensor, display, network, AI | +| **Documentation** | Auto-generated from code | Pinouts, APIs, tutorials | + +### 3.5 Phases + +| Phase | Months | Deliverable | +|-------|--------|-------------| +| **C1: DevKit-1 Design** | M1–M3 | ESP32-S3 dev board, schematic, PCB | +| **C2: DevKit-1 Firmware** | M4–M6 | ESP-IDF examples, Aurélio integration | +| **C3: DevKit-3 Design** | M5–M8 | Allwinner D1 SBC, schematic, PCB | +| **C4: DevKit-3 UOS** | M9–M12 | UOS RISC-V boot on DevKit-3 | +| **C5: DevKit-4 Design** | M9–M12 | RK3588S SoM + carrier, schematic | +| **C6: DevKit-4 UOS** | M13–M16 | UOS AArch64 on RK3588S | +| **C7: DevKit-FPGA** | M13–M18 | PolarFire SoC board, UOS RISC-V | +| **C8: DevKit-5 Design** | M17–M20 | Full ATX board, schematic | +| **C9: Production** | M21–M24 | All devkits in production, docs complete | + +--- + +## 4. Product Line D — Aurélio Computer (Modular PC/Laptop) + +### 4.1 Vision + +A modular, open-hardware computer inspired by Framework Laptop and Olimex TERES. User-upgradeable, repairable, and designed from the ground up to run UniversalisOS with Android/Linux guests. The flagship product that proves UOS works as a real desktop hypervisor. + +### 4.2 Reference Designs + +| Approach | Reference | CPU | RAM | Display | UOS Arch | BOM Est. | +|----------|-----------|-----|-----|---------|----------|----------| +| **Framework-style** | Framework 13 Mainboard | Intel 12th/13th gen | DDR5 SO-DIMM | eDP 2256×1504 | AArch64 (if ARM) or x86 | ~$400 | +| **Olimex-style** | TERES-1 + custom | Allwinner A64 | 2GB DDR3 | IPS 1024×600 | AArch64 | ~$150 | +| **Custom ARM** | RK3588 module + carrier | RK3588 | 8-32GB LPDDR5 | MIPI-DSI + HDMI | AArch64 | ~$200 | +| **Custom RISC-V** | StarFive JH7110 + carrier | JH7110 | 8GB DDR4 | HDMI + MIPI-DSI | RISC-V | ~$180 | + +**Recommended MVP:** Olimex-style (cheapest, fastest to prototype, ARM Linux proven). + +**Recommended production:** Framework-style modular approach with swappable compute modules. + +### 4.3 Architecture — Modular Compute Module System + +``` +┌─────────────────────────────────────────────────────────────────┐ +│ Aurélio Computer │ +│ │ +│ ┌──────────────────────────────────────────────────────────┐ │ +│ │ ┌─────────────────────────────────────────────────┐ │ │ +│ │ │ COMPUTE MODULE (swappable) │ │ │ +│ │ │ Option A: RK3588 (ARM) — 8TOPS NPU, 8nm │ │ │ +│ │ │ Option B: StarFive JH7110 (RISC-V) — 1.5GHz │ │ │ +│ │ │ Option C: Intel N100/N305 (x86) — for legacy │ │ │ +│ │ │ RAM: Soldered on module (4/8/16/32GB) │ │ │ +│ │ │ Storage: eMMC on module + M.2 on carrier │ │ │ +│ │ │ Connector: 200-pin SO-DIMM form factor │ │ │ +│ │ └─────────────────────────────────────────────────┘ │ │ +│ │ │ │ +│ │ ┌─────────────────────────────────────────────────┐ │ │ +│ │ │ CARRIER BOARD (fixed) │ │ │ +│ │ │ Display: eDP/LVDS + HDMI 2.1 │ │ │ +│ │ │ USB: 4× USB 3.0 + 2× USB-C (PD + DP) │ │ │ +│ │ │ Storage: NVMe M.2 + microSD │ │ │ +│ │ │ Audio: I2S codec + speakers + mic + 3.5mm │ │ │ +│ │ │ Camera: MIPI-CSI (1080p) │ │ │ +│ │ │ Battery: Li-Po 5000mAh + USB-C PD charging │ │ │ +│ │ │ WiFi/BT: M.2 E-key (Intel AX210 or QCA6391) │ │ │ +│ │ │ Keyboard: I2C ribbon connector │ │ │ +│ │ │ Trackpad: I2C ribbon connector │ │ │ +│ │ └─────────────────────────────────────────────────┘ │ │ +│ │ │ │ +│ │ ┌─────────────────────────────────────────────────┐ │ │ +│ │ │ EXPANSION BAY (Framework-style) │ │ │ +│ │ │ Bay 1: GPU module (optional dGPU or NPU) │ │ │ +│ │ │ Bay 2: Storage expansion (NVMe or SATA) │ │ │ +│ │ │ Bay 3: Connectivity (5G, LoRa, SDR, DVB) │ │ │ +│ │ │ Bay 4: I/O (extra USB, serial, CAN bus) │ │ │ +│ │ └─────────────────────────────────────────────────┘ │ │ +│ └──────────────────────────────────────────────────────────┘ │ +└─────────────────────────────────────────────────────────────────┘ +``` + +### 4.4 Key Design Principles + +1. **Modular compute** — swap the brain, keep the body (Framework philosophy) +2. **3 expansion bays** — Framework-style card system for GPU, storage, connectivity +3. **Repairable** — every component accessible, no glue, standard screws +4. **Open hardware** — full KiCad files, BOM, mechanical drawings published +5. **UOS-native** — designed for UniversalisOS, not retrofitted +6. **AI-ready** — NPU/dGPU options for on-device inference +7. **Multi-arch** — ARM, RISC-V, and x86 compute modules (same carrier) + +### 4.5 Software Stack + +| Layer | Technology | Notes | +|-------|-----------|-------| +| **Hypervisor** | UniversalisOS | Boot on all compute module architectures | +| **Desktop Guest** | Linux (Debian/Arch) | Primary desktop experience | +| **Android Guest** | AOSP Android | Mobile apps on desktop | +| **Windows Guest** | Windows ARM/RISC-V (if supported) | Legacy app compatibility | +| **Aurélio Agent** | Local AI assistant | Voice, search, code completion | +| **Aurélio IDE** | Theia-based | Primary development environment | +| **Framework SDK** | Expansion bay API | Hot-plug peripheral management | + +### 4.6 Phases + +| Phase | Months | Deliverable | +|-------|--------|-------------| +| **D1: Concept Design** | M1–M4 | Architecture, module connector spec, expansion bay spec | +| **D2: Carrier Board** | M5–M8 | Carrier PCB (RK3588), display, keyboard, trackpad | +| **D3: Compute Module** | M9–M12 | First compute module (RK3588), UOS boot | +| **D4: Expansion Bays** | M13–M16 | 3 expansion modules (GPU, storage, connectivity) | +| **D5: Enclosure** | M17–M20 | Laptop enclosure, hinges, thermal design | +| **D6: MVP Release** | M21–M24 | 10-unit batch, full documentation, open-hardware publish | + +--- + +## 5. Cross-Product Dependencies + +``` + ┌──────────────────┐ + │ MYCELIUM │ + │ (toolchain) │ + │ BSP generator │ + │ firmware build │ + └────────┬─────────┘ + │ + ┌──────────────────┼──────────────────┐ + │ │ │ + ▼ ▼ ▼ + ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ + │ UNIVERSALIS │ │ AURÉLIO │ │ NERVURA │ + │ OS │ │ IDE │ │ ELÉCTRICA │ + │ (hypervisor) │ │ (dev env) │ │ (infra) │ + └──────┬───────┘ └──────┬───────┘ └──────┬───────┘ + │ │ │ + ┌─────┼─────┬────────────┼───────┐ │ + │ │ │ │ │ │ + ▼ ▼ ▼ ▼ ▼ ▼ + ┌────┐┌────┐┌────┐ ┌────┐┌────┐ ┌────────────┐ + │STB ││Hand││Dev │ │PC ││Lap│ │Tvheadend │ + │ ││ ││Kit │ │ ││top│ │DVB/IPTV │ + └────┘└────┘└────┘ └────┘└────┘ └────────────┘ +``` + +### Critical Path Dependencies + +| Product | Depends On | Blocking? | +|---------|-----------|-----------| +| **Set-Top Box** | UOS AArch64 (exists), Tvheadend (CT209), Mycelium BSP | No — can start | +| **Handheld** | ESP32-S3 firmware (ode-triunfal), SaveEarth IoT | No — can start | +| **DevKit-1** | ESP32-S3 dev board | No — can start immediately | +| **DevKit-3** | UOS RISC-V (exists), Allwinner D1 BSP | Needs BSP work | +| **DevKit-4** | UOS AArch64 (exists), RK3588 BSP | Needs BSP work | +| **Aurélio Computer** | UOS multi-arch (exists), expansion bay spec | Needs concept design | + +--- + +## 6. Shared Infrastructure + +### 6.1 Hardware Lab (Olhos de Orpheu) + +| Capability | Tool | Status | +|-----------|------|--------| +| ESP32 flashing | USB-Serial + esptool | ✅ Working | +| SPI/I2C debugging | Logic analyzer (Sigrok) | ✅ Working | +| UART debugging | USB-Serial + auto-baud | ✅ Working | +| JTAG/SWD | J-Link / CMSIS-DAP | ✅ Working | +| PCB programming | XGecu T76 | ✅ Working | +| Oscilloscope | Sigrok-compatible | ✅ Working | +| SDR | RTL-SDR | ✅ Working | +| CAN bus | CANable / SocketCAN | 🔵 Needed for STB | +| Power analysis | PPK2 (Nordic) | ✅ Working | + +### 6.2 Firmware Build Pipeline + +``` +Source Code → Mycelium → BSP Config → UOS Kernel Build → Firmware Image → Flash → Test + │ │ │ │ │ │ │ + ▼ ▼ ▼ ▼ ▼ ▼ ▼ + .cmp/.xsd configconv uos-bsp make ARCH= .img/.bin esptool QEMU + (component (Rust) (Rust) PLATFORM= (binary) /JTAG /HW + model) board= +``` + +### 6.3 CI/CD for Hardware + +| Stage | Tool | Trigger | +|-------|------|---------| +| **Lint** | `cargo clippy`, `cppcheck` | Every commit | +| **Build** | `cargo build`, `make` | Every commit | +| **Test** | `cargo test`, `pytest` | Every commit | +| **QEMU boot** | `qemu-system-*` | Every PR | +| **Hardware flash** | `esptool`, JTAG | Nightly | +| **Hardware test** | Automated test suite | Nightly | +| **Documentation** | `mdbook`, KiCad PDF export | Every release | + +--- + +## 7. Budget Estimate (24 months) + +| Category | Items | Est. Cost | +|----------|-------|-----------| +| **Dev boards** | ESP32-S3×10, Allwinner D1×5, RK3588×3, PolarFire×2 | €2,000 | +| **Components** | Displays, buttons, audio, power, enclosures | €3,000 | +| **PCB fabrication** | JLCPCB/PCBWay × 6 designs × 3 iterations | €2,000 | +| **Test equipment** | CAN bus analyzer, power supply, thermal camera | €1,500 | +| **3D printing** | Enclosures, buttons, prototypes | €500 | +| **Software licenses** | KiCad (free), IDEs (open-source) | €0 | +| **Cloud services** | AWS IoT (existing), CI/CD | €500 | +| **Certification** | FCC/CE pre-scan (if needed) | €2,000 | +| **Total** | | **~€11,500** | + +--- + +## 8. Risk Register + +| # | Risk | Probability | Impact | Mitigation | +|---|------|-------------|--------|-----------| +| R1 | **SoC supply chain** — key chips may be EOL or unavailable | MEDIUM | HIGH | Design for pin-compatible alternatives (Amlogic ↔ Rockchip) | +| R2 | **PCB cost overrun** — 4-layer boards are expensive for iterations | MEDIUM | MEDIUM | Start with 2-layer, move to 4-layer for production | +| R3 | **Thermal management** — RK3588S gets hot without heatsink | HIGH | MEDIUM | Design thermal pad + aluminum backplate from day 1 | +| R4 | **Display availability** — specific display modules may be discontinued | LOW | LOW | Use generic interfaces (SPI, MIPI-DSI) with multiple panel options | +| R5 | **Certification delays** — FCC/CE testing takes time | MEDIUM | HIGH | Start pre-scan early (M18), plan for 2-month buffer | +| R6 | **Firmware maturity** — UOS may not support all peripherals | HIGH | HIGH | Start with minimal peripheral set, add drivers incrementally | +| R7 | **Open-hardware competition** — similar products may exist | LOW | LOW | Focus on UOS integration as differentiator | + +--- + +## 9. Success Metrics + +| Metric | Target | Measurement | +|--------|--------|-------------| +| **Products designed** | 4 product lines, 8+ SKUs | Schematics + PCBs published | +| **Products manufactured** | 50+ units per product | Batches produced | +| **Open-hardware published** | 100% of designs on Forgejo | KiCad + BOM + docs | +| **UOS running** | All products boot UOS | Boot log evidence | +| **Aurélio integration** | IDE can flash/debug all products | End-to-end test | +| **Community adoption** | 10+ external builders | GitHub stars, issues, PRs | + +--- + +## 10. Immediate Next Actions + +1. **Order ESP32-S3 dev boards** (×5) for DevKit-1 and Handheld prototypes +2. **Order Allwinner D1 SBC** (×2) for DevKit-3 reference +3. **Start DevKit-1 schematic** in KiCad — simplest product, fastest to market +4. **Start Handheld breadboard prototype** — display + buttons + audio +5. **Define compute module connector spec** — 200-pin SO-DIMM pinout for Aurélio Computer +6. **Set up CI/CD** for firmware builds — GitHub Actions for ESP-IDF + UOS +7. **Create product catalog** on Forgejo — one repo per product line + +--- + +## 11. References + +| Document | Path | +|----------|------| +| SaveEarth firmware | `ode-triunfal-firmware/` (ESP32-S3) | +| SaveEarth IoT infra | `savearth/aws-iot-core-poc/` | +| Nagra3 CAS toolkit | `ode-electro-sat/nagra3/` | +| Hardware recon tools | `ode-electro-sat/hardware_recon/` | +| Tvheadend/IPTV stack | `nervura-electrica/` CT209 | +| PolarFire SoC FPGA | `tear-de-silicio/` | +| Buildroot for PolarFire | `matriz-da-maquina/` | +| Hardware lab gateway | `olhos-de-orpheu/` | +| UOS kernel | `universalisos/kernel/` | +| Mycelium toolchain | `mycelium/crates/` | +| UOS BSP parity spec | `universalisos/docs/parity/CDK_CONFIG_BUILD_PARITY_SPEC.md` | +| Framework Laptop | https://frame.work | +| Olimex TERES-1 | https://www.olimex.com/Products/Teres/ | +| Allwinner D1 | https://linux-sun.org/d1 | +| RK3588 | https://www.rock-chips.com/a/en/products/RK35_Series/2022/0901/1765.html | +| PolarFire SoC | https://www.microchip.com/en-us/products/fpgas-and-plds/soc-fpgas/polarfire-soc |