20 min. No todos los pines del ESP32-S3 son iguales. Elegir mal uno hace que la placa no arranque, y el síntoma no dice por qué.

Las cuatro trampas del ESP32

1. Pines strapping. Se leen en el reset para decidir el modo de arranque. Si un sensor los deja en el nivel equivocado al encender, la placa entra en modo descarga o simplemente no bootea. En el S3: GPIO0, GPIO3, GPIO45, GPIO46. No usarlos para señales que puedan estar activas al encendido.

2. ADC2 + Wi-Fi. Cuando el Wi-Fi está activo, el ADC2 queda tomado por el radio y las lecturas fallan o devuelven basura. Toda entrada analógica crítica va en ADC1. En MadRams esto no es teórico: VBAT está en GPIO1 (ADC1_CH0) por esta razón.

3. Pines con función fija. Los conectados a la flash SPI interna (y en el Heltec V4, los del SX1262 y el control de VBAT) no están disponibles aunque el datasheet los liste como GPIO.

4. Corriente por pin y total. ~40 mA por pin como absoluto máximo, con un límite agregado bastante menor. Un LED sin resistencia o un relé directo al GPIO es un pin muerto.

Tierras: la falla que parece software

Un solo punto de tierra común (star ground) entre el nodo, los sensores y la alimentación. Si el retorno de un sensor comparte camino con una carga de alta corriente, la caída por resistencia del cable aparece sumada a la señal. El resultado es una lectura que se desplaza cuando enciende otra cosa — y se busca en el código durante horas.

Sensores analógicos lejanos: par trenzado señal+retorno, retorno solo a la tierra analógica.

Divisores y niveles

El potenciómetro OEM GM entrega 0–5 V; el ESP32 tolera 3.3 V. El divisor no es opcional. Verificar también la impedancia de salida del divisor: si es demasiado alta, el sample-and-hold del ADC no alcanza a cargarse y la lectura sale baja — la misma física de la sesión anterior.

El pin budget

Una sola tabla, firmada, que es la fuente de verdad para quien suelde y para quien programe. Debe incluir: pin → señal → dirección → tipo → corriente → restricción (strapping / ADC / función fija) → justificación. Un pin sin justificación es un pin que alguien va a mover.

Bibliografía