01 — VISION : le concept en détail


1. L’objectif

Construire un boîtier passif qui s’associe à une première carte mère — devenue carte maîtresse (control-plane / cerveau) — et qui permet d’ajouter des cartes mères auxiliaires : cartes mères de smartphones (ARM64) et de PC (amd64). Les deux familles forment deux clusters distincts — PCs reliés par câble USB4/Thunderbolt ou switch Ethernet (sharding LLM), smartphones en WiFi (nœuds SLM individuels) — pilotés par le même cerveau et réunis au besoin par un routeur central, extensible par plugins USB.

Trois contraintes validées dans le cahier des charges :

  1. 10+ ports serveurs, 6+ ports clés (logiciels / LLM), WiFi et Bluetooth en modules optionnels.
  2. Contrôle des cartes mères sans aucun bouton physique (power / reboot / format / install par scripts).
  3. Clés USB contenant des LLM portables qui exploitent la RAM des nœuds.

2. Architecture en 3 couches

┌────────────────────────────────────────────────────────────────────┐
│ COUCHE 1 · BOÎTIER = CERVEAU (control-plane)                       │
│   SBC (Zero 3E, Pi 4/5, Orange Pi…) · Debian ARM64 · ≥ 8 Go        │
│   ├─ k3s server (taint NoSchedule, aucun workload)                 │
│   ├─ PORT SERVEURS (base 5, plugins ×5) → 1 carte mère par port    │
│   ├─ PORT CLÉS (base 3, plugins ×3) → logiciels + LLM portables    │
│   ├─ (OPTIONNEL) DONGLE WIFI + BLUETOOTH (plugins ×1)              │
│   ├─ CONTRÔLE SANS CONTACT (adb/fastboot/SSH/WoL/PMM)              │
│   └─ MicroSD : etcd + état du cluster                              │
├────────────────────────────────────────────────────────────────────┤
│ COUCHE 2 · NŒUDS DE CALCUL                                         │
│   Nœuds ARM64 (smartphones)   → Debian ARM64 + k3s agent           │
│   Nœuds amd64 (PC)            → Proxmox VE (VMs) + k3s agent       │
│                                  ou Debian amd64 + k3s agent       │
├────────────────────────────────────────────────────────────────────┤
│ COUCHE 3 · RÉSEAU                                                 │
│   LAN local (switch) + Tailscale · une IP fixe par nœud            │
└────────────────────────────────────────────────────────────────────┘

Les 2 idées fortes

Bonus : un tel port expose aussi le bootloader (UART) → on peut débloquer, flasher, formater un téléphone même écran mort ou PIN verrouillé.


3. Architecture modulaire des ports (base + plugins)

Socle minimal + plugins empilables sur un bus d’extension (USB 3.0 + 5V + I2C d’identification) :

FamilleBase+1 plugin+2 pluginsPlugin
Serveurs (USB-C, 1 par carte mère)51015PLUG-SRV-5
Clés logiciels/LLM (USB-A)369PLUG-KEY-3
WiFi (dongle, optionnel)012PLUG-WIFI-1
Bluetooth (dongle, optionnel)012PLUG-BT-1

Total base : 8 ports (5 serveurs + 3 clés). WiFi/BT ne sont PAS dans la base. Extensible sans limite : chaque PLUG-SRV-5 ajoute 5 serveurs. hub-scan.sh lit l’ID I2C de chaque plugin et compte les ports réels tout seul.

Pourquoi USB-C host (pas gadget) ? Un SoC ARM n’a qu’un seul contrôleur USB OTG : il ne peut pas se faire passer pour 10 périphériques devant 10 cartes mères. Les 10 ports sont donc host-mode via un hub USB 3.0 — détail technique, mais qui explique toute la conception des ports.


4. Le choix du cerveau (SBC)

Exigence unique et non négociable : Ethernet Gigabit. L’etcd du control-plane a besoin d’un réseau stable, pas de WiFi.

SBCCPURAMEthernetWiFi/BT à bordVerdict
Radxa Zero 3ERK3566 quad A551–8 Go✅ 1 GbE❌Recommandée (compatible USBridge)
Radxa Zero 3WRK3566 quad A551–8 Go❌✅ WiFi 6⚠️ Pas en control-plane
Raspberry Pi 4BBCM2711 quad A721–8 Go✅ 1 GbE⚠️ BT✅ Solide, documenté
Raspberry Pi 5BCM2712 quad A764–16 Go✅ 1 GbE⚠️ BT✅ Plus rapide
Orange Pi 3ERK3566 quad A554–8 Go✅ 1 GbE❌✅ Alternative directe
Orange Pi 5RK3588S octa8–32 Go✅ 2.5 GbE❌✅ Puissante
Rock 3A / 3BRK3568/RK35662–8 Go✅ 1 GbE⚠️✅
LePotatoAmlogic S905X2 Go✅ 1 GbE❌⚠️ Budget, RAM limitée

8 Go de RAM minimum pour un control-plane confortable (etcd + API).

Pourquoi pas un Arduino ? Microcontrôleur sans MMU ni Linux → incapable de faire tourner k3s/etcd. Rôle possible : capteur/relais satellite USB. Pourquoi pas une carte smartphone ? 1 seul port USB, pas d’Ethernet, bootloader verrouillé. Elle reste un nœud de calcul, jamais le cerveau.

Variante Winux (interface Windows-like sur x86) : si le boîtier doit tourner sous Winux (Ubuntu x86-64, cf. winux.is), le cerveau devient forcément du x86-64 : LattePanda 3 Delta (carte nue) ou carte mère PC récupérée (mini-PC) + dock passif USB4 — toujours en custom case. Variante légère sans Winux : Armbian minimal + Raspberry Pi 5 8 Go (dashboard web remplace l’interface Windows-like, rouvre la porte à l’ARM). Les 4 cas sont détaillés dans la page Matériel.


5. Design du boîtier (physique)

Le boîtier contrôleur est une small enclos alu noir (~230×170×60 mm) avec :


6. Les 3 rails d’alimentation (indispensables)

┌─ Rail 1 · Contrôleur : 5V/3A propre + UPS (jamais impacté) ──────────┐
┌─ Rail 2 · Ports serveurs : 5V/20A, polyfuse par port (1 court-circuit = 1 port) ┐
┌─ Rail 3 · PCs : alimentation ATX séparée ─────────────────────────────┐

Pourquoi : 10 phones × 2 A = 20 A sur un rail → chutes de tension, surtensions de charge qui réinitialisent le contrôleur (etcd corrompu), un court-circuit qui ferait tomber tout le boîtier. Toujours séparer.


7. Le port HDMI : attention, c’est une SORTIE

Le Zero 3E a une sortie Micro-HDMI (1080p60) → port HDMI du boîtier pour monitoring local (dashboard en kiosque sur un écran de rack).

RôlePort HDMI contrôleurCapteur USB HDMI (port serveur)
Afficher le dashboard sur un écran local✅❌
Voir l’écran d’une carte mère (KVM)❌✅

⚠️ SORTIE uniquement. Regarder l’écran d’une carte mère = un capteur USB HDMI (dongle UVC, comme l’USBridge) branché sur un port serveur.


8. Ce qui suit

Le matériel (quoi acheter, coûts, conso) → Matériel. Tester en 2 semaines avec ~144 000 FCFA → MVP.

Détails techniques de conception : Architecture et Matériel.