← documentación

Panel de memoria

ESP32-S3 · N16R8 · 16 MB flash / 8 MB PSRAM

Instantánea de uso de flash y RAM del build actual, y qué otros parámetros de runtime vale la pena instrumentar en este proyecto.

instantánea de build · 2026-08-29 · commit 74d4547

Flash total usada
69.2%
11,60 MB / 16 MB
Partición app
41.0%
1,23 MB / 3 MB · 59% libre
DIRAM estática
34.6%
118,1 KB / 333,8 KB
IRAM fija
100%
16,4 KB · normal en IDF*
Heap dinámico
sin medir
requiere runtime
PSRAM en uso
sin medir
8 MB disponibles

Mapa de flash (16 MB)

Distribución real de firmware/partitions.csv para el target esp32s3.

sistema (boot+ptable+nvs+phy) · 65 KB factory / app · 3 MB storage / packs · 4 MB model (raw) · 4 MB libre / OTA · 4,94 MB
Detalle — partición factory1.290.272 B / 3.145.728 B

storage: vacío · pack.json aún no se lee (#21)  model: reservado, sin integrar

Memoria estática enlazada (build-time)

Lo que el linker reserva en compilación para .text/.data/.bss —no el heap dinámico de runtime, que solo se mide con la placa corriendo.

DIRAM118.132 / 341.760 B
IRAM (vectores + ISR)16.384 / 16.384 B

* 100% no es alarma: es una región fija y pequeña; el grueso del código (857,5 KB) corre cacheado desde flash.

Qué más monitorear — y cómo

Parámetros específicos de este proyecto, no una lista genérica de buenas prácticas.

Memoria

Heap interno vs. PSRAM

DMA y WiFi solo en RAM interna —nunca PSRAM.

heap_caps_get_free_size(MALLOC_CAP_INTERNAL)
Memoria

Presupuesto TLS activo

~50 KB de RAM interna por conexión abierta.

contar conexiones TLS vivas
Concurrencia

Cola de brain.ask saturada

brain_cloud.cpp:150 descarta en silencio si la cola (profundidad 4) está llena.

contador propio en el drop
Concurrencia

Stack por tarea

Tareas bus (6144 B) y brain (10240 B), ambas core 0.

uxTaskGetStackHighWaterMark()
Rendimiento

Balance core 0 / core 1

Regla: audio en core 1, red en core 0.

vTaskGetRunTimeStats()
Rendimiento

Tiempo de frame

Medido en 30,4 ms (32,9 fps) con caché por estado.

esp_timer_get_time() en render+blit
Almacenamiento

Libre en NVS

Partición de solo 24 KB, sin uso hoy.

nvs_get_stats()
Almacenamiento

Libre en storage (packs)

4 MB para caras, sonidos, reflejos.

esp_littlefs_info("storage", ...)
Red

RSSI y reconexiones

boot.status se queda ~4 s en "connecting wifi" en un boot normal.

esp_wifi_sta_get_ap_info()

Cómo hacerlo en vivo

El webui ya corre un httpd_server. Un endpoint de solo lectura expondría estos números sin tocar el resto del framework:

GET /health → 200 application/json { "heap_internal_free": 187342, "heap_spiram_free": 7534221, "brain_queue_drops": 0, "wifi_rssi": -58, "uptime_s": 4213 }