# Investigacion exhaustiva: max rendimiento + fiabilidad (H313 / X96Q)

Fecha: 2026-08-27  
Dispositivo analizado en vivo por ADB.

---

## 1. Que tienes exactamente

| Campo | Valor | Implicacion |
|-------|-------|-------------|
| Modelo comercial | ADT-3 (rebrand) | No es el ADT-3 Google/Amlogic original |
| Producto Android | **eros_p1** / device **ohm** | Coincide con **X96Q H313** |
| SoC | **Allwinner H313** (sun50iw9p1) | Tope CPU ~**1296 MHz** en silicio |
| RAM | **~4 GB** (4048792 kB) | Variante poco documentada (la mayoria X96Q = 2 GB) |
| DRAM type (DT) | **3** (= DDR3) | Probar imagenes **DDR3**, no LPDDR3 |
| eMMC | R311MB, ~16 GB | Particiones Allwinner tipicas |
| WiFi | **AIC8800 SDIO** (`C8A1:0082`) | **No** es XR819 de la DTS mainline X96Q |
| Ethernet | **sunxi-gmac** | Funciona en Android; en Linux depende del DTB |
| GPU | Mali-G31 (mali_kbase) | Mainline Panfrost incompleto para TV box |
| Kernel actual | **4.9.170** (BSP 2024) | Muy viejo vs mainline 6.12–7.2 |
| Android | 12 userdebug | adb root OK |
| Display | 3840x2160 | Exige drivers display maduros en Linux |

**Conclusion hardware:** es un **X96Q revision moderna** (4 GB + AIC8800 + Android 12), **no** el X96Q clasico de 2 GB + XR819 que documentan la mayoria de hilos.

---

## 2. Techo real de rendimiento CPU (dato clave)

Fuentes cruzadas:

- Kernel mainline ([PATCH Tanix TX1 H313 DVFS](https://lists.infradead.org/pipermail/linux-arm-kernel/2024-December/986423.html)): H313 sube hasta **1,3 GHz** con `sun50i-h616-cpu-opp.dtsi`.
- [linux-sunxi.org H313](https://linux-sunxi.org/H313): variante low-end del die H616; **1512 MHz es dominio H616/H618** con speed bin adecuado.
- Tu dispositivo: driver `sun50i-cpufreq-nvmem` solo registra OPP hasta **1296000** (confirmado en `/sys/kernel/debug/cpufreq_table`).

**Ninguna ROM fiable te dara 1512 MHz en este chip H313.**  
Las cifras 1344/1512 del Device Tree Android son OPP compartidos del BSP; el silicio/driver los filtra.

Ganancia real al cambiar ROM ≈ ** mejor sistema operativo + menos bloat + kernel moderno**, no mas MHz.

---

## 3. Opciones evaluadas (foros + documentacion)

### Opcion A — Android optimizado (ACTUAL) ⭐ Mas fiable hoy

| Criterio | Valor |
|----------|-------|
| Rendimiento CPU | 1296 MHz fijo (ya aplicado) |
| GPU | 600 MHz max |
| WiFi / BT / HDMI 4K | OK (drivers vendor) |
| Riesgo | Bajo |
| Esfuerzo | Hecho (`acelerar.ps1`) |

**Veredicto:** mejor opcion si priorizas **fiabilidad total** y uso como TV box/Android.

---

### Opcion B — MiniArch SD (mainline 7.2) ⭐ Mejor Linux para *probar*

Imagenes relevantes ([warpme/miniarch releases](https://github.com/warpme/miniarch/releases)):

```
MiniArch-15.3.0-...-board-h313.x96_q-SD-Image.img.xz          ← PROBAR PRIMERO (DDR3)
MiniArch-15.3.0-...-board-h313.x96_q_lpddr3-SD-Image.img.xz  ← solo si A falla
```

**Pros (foros [minimyth2#48](https://github.com/warpme/minimyth2/issues/48), [Armbian Andre Ruiz](https://forum.armbian.com/profile/217806-andre-ruiz/)):**
- Arranque desde SD reversible (sin tocar eMMC al principio)
- Kernel mainline reciente → mejor scheduler, menos latencia
- Comunidad activa para X96Q H313
- U-Boot de MiniArch considerado mas fiable que el de Armbian oficial para eMMC

**Contras para TU unidad:**
- DTS orientada a **2 GB** → tu **4 GB** puede requerir DTB extraido de Android
- WiFi **AIC8800** no soportado en mainline estable (RFC 2025, aun no mergeado)
- Ethernet: en algunos X96Q falla `EMAC reset timeout` ([issue #48](https://github.com/warpme/minimyth2/issues/48)); tu chip es gmac nativo → hay posibilidad, hay que probar
- Sin aceleracion video HDMI madura para uso multimedia TV

**Rendimiento esperado:** +10–25% en tareas CPU puras vs Android optimizado; **0% mas MHz**.

---

### Opcion C — Armbian community (sicXnull / NickAlilovic)

Hilos clave:
- [Armbian H313 X96-Q LPDDR3](https://forum.armbian.com/topic/43682-armbian-for-h313-x96-q-lpddr3-tv-box/) (sicXnull, mergeado PR [#7101](https://github.com/armbian/build/pull/7101))
- [x96q H313 board v5.1](https://forum.armbian.com/topic/51264-x96q-h313-board-v51-armbian-instalation-problem/) — **DTB exacto obligatorio** (`sun50i-h313-x96q-ddr3-v5.1.dtb`)
- [eMMC boot failure X96Q](https://forum.armbian.com/topic/59581-emmc-boot-failure-in-x96q-h313-lpddr3-v13-on-armbian-2602-official-image/) — instalacion eMMC problematica
- [Guia X96Q + Singkong PDF](https://nopri.github.io/singkong-armbian-tv_box-x96q.pdf) — imagen community `X96q-ddr3v5-1`, kernel 6.12

**Pros:** entorno Debian/Ubuntu familiar, mas documentacion de servidor/desktop.  
**Contras:** misma incompatibilidad WiFi AIC8800; eMMC inestable sin U-Boot de MiniArch; imagenes pensadas para **2 GB DDR3 v5.1**.

---

### Opcion D — Mainline Linux oficial (sun50i-h313-x96q.dts)

DTS mergeada en kernel 2025: [sun50i-h313-x96q.dts](https://github.com/torvalds/linux/master/arch/arm64/boot/dts/allwinner/sun50i-h313-x96q.dts)

Estado actual del DTS upstream:
```dts
/* TODO: XRadio XR819 WLAN @ mmc1 */
/* TODO: EMAC1 connected to AC200 PHY */
```

**No cubre tu hardware** (AIC8800 + gmac + 4 GB). Requeriria fork de DTB + driver WiFi out-of-tree ([aic8800-sdio-linux](https://github.com/LYU4662/aic8800-sdio-linux-1.0)).

---

### Opcion E — CoreELEC / LibreELEC / EmuELEC

- [LibreELEC H313](https://forum.libreelec.tv/thread/29356-allwinner-h313-chip-adaptation-problem/): **sin soporte production-ready**; display/audio incompletos.
- EmuELEC: orientado a retro-gaming; soporte H313 fragmentado.

**Veredicto:** descartado para fiabilidad TV/general.

---

## 4. Matriz decision (rendimiento × fiabilidad)

| Opcion | MHz CPU | Fiabilidad | WiFi | HDMI 4K | Esfuerzo |
|--------|---------|------------|------|---------|----------|
| **A. Android optimizado** | 1296 | ★★★★★ | ★★★★★ | ★★★★★ | Hecho |
| **B. MiniArch SD** | ~1296 | ★★★☆☆ | ★☆☆☆☆ | ★★☆☆☆ | Medio |
| **C. Armbian SD** | ~1296 | ★★★☆☆ | ★☆☆☆☆ | ★★☆☆☆ | Medio-alto |
| **D. Custom mainline** | ~1296 | ★★☆☆☆ | ★★★☆☆* | ★★☆☆☆ | Muy alto |
| **E. LibreELEC/EmuELEC** | ~1296 | ★☆☆☆☆ | ★☆☆☆☆ | ★☆☆☆☆ | Alto |

\* WiFi solo con driver vendor portado manualmente.

---

## 5. Recomendacion final

### Si quieres **max rendimiento + max fiabilidad**:

1. **Quedarte en Android optimizado** para uso diario (TV, apps, red, 4K).
2. **Probar MiniArch desde SD** solo como experimento reversible, **sin borrar Android**.
3. **No flashear eMMC** hasta confirmar: arranque SD + red (eth) + estabilidad 24h + `cpufreq` max.

### Si quieres Linux serio en este box:

Plan de 3 fases (orden obligatorio):

```
Fase 1 — Comprobaciones (sin riesgo)
  .\verificar-hardware.ps1
  Backup: boot, bootloader, env (ya tienes boot.img)

Fase 2 — Prueba SD MiniArch (reversible)
  Descargar: board-h313.x96_q-SD-Image.img.xz
  Flashear SD → arrancar con boton recovery en jack AV
  Comprobar: HDMI, ethernet, dmesg, cpufreq, temperatura

Fase 3 — Solo si Fase 2 OK y necesitas Linux permanente
  Extraer DTB Android (/sys/firmware/fdt)
  Portar driver AIC8800 + firmware de /vendor/etc/firmware/
  Ajustar memoria 4 GB en DTB
  Instalar eMMC usando U-Boot MiniArch (metodo Andre Ruiz, foro Armbian)
```

---

## 6. Comprobaciones obligatorias ANTES de flashear

Ejecutar en PC:

```powershell
cd c:\xampp\htdocs\Android-super-accelerar-rom
.\verificar-hardware.ps1
```

En dispositivo (tras arrancar Linux desde SD):

```bash
# CPU max real
cat /sys/devices/system/cpu/cpufreq/policy0/scaling_available_frequencies
cat /sys/kernel/debug/cpufreq_table

# Red
ip link
dmesg | grep -iE 'gmac|eth|aic|sdio|wlan'

# Estabilidad
stress-ng --cpu 4 --timeout 300s
cat /sys/class/thermal/thermal_zone0/temp
```

**Criterios GO/NO-GO para instalar en eMMC:**
- [ ] Arranca 3 veces seguidas desde SD sin freeze
- [ ] HDMI estable 10 min
- [ ] Ethernet OK **o** WiFi OK (minimo uno)
- [ ] CPU llega a 1200–1296 MHz
- [ ] Temperatura < 85°C en stress test
- [ ] Backup eMMC completo hecho

---

## 7. Enlaces de referencia

| Recurso | URL |
|---------|-----|
| Armbian Allwinner TV boxes | https://forum.armbian.com/forum/194-allwinner-cpu-boxes/ |
| MiniArch releases | https://github.com/warpme/miniarch/releases |
| MiniArch X96Q H313 thread | https://github.com/warpme/minimyth2/issues/48 |
| Armbian X96Q LPDDR3 (sicXnull) | https://forum.armbian.com/topic/43682-armbian-for-h313-x96-q-lpddr3-tv-box/ |
| Mainline X96Q DTS | https://github.com/torvalds/linux/master/arch/arm64/boot/dts/allwinner/sun50i-h313-x96q.dts |
| H313 @ linux-sunxi | https://linux-sunxi.org/H313 |
| Driver AIC8800 out-of-tree | https://github.com/LYU4662/aic8800-sdio-linux-1.0 |
| Guia X96Q Armbian (PDF) | https://nopri.github.io/singkong-armbian-tv_box-x96q.pdf |

---

## 8. Siguiente paso concreto

Opcional (solo experimento Linux en SD, **no necesario para CCTV**):
Si alguna vez quisieras probar Armbian sin tocar la eMMC interna, haria falta microSD:

1. Descargar MiniArch `board-h313.x96_q-SD-Image.img.xz`
2. Flashearla con herramientas Windows
3. Guiarte en el arranque SD (recovery + power)
4. Ejecutar bateria de tests post-arranque via SSH/serial

**No recomiendo saltar directamente a eMMC** sin pasar por SD: los foros reportan brick/bootloop frecuente en X96Q H313.
