ESP32 Schematic Modification


Actúa como ingeniero de PCB y corrige este proyecto completo llamado "Monitor Industrial ESP32". Necesito que arregles el esquemático, la organización física de la PCB y el Project Specification, sin cambiar la arquitectura funcional del sistema.
OBJETIVO GENERAL
Crear una PCB limpia y ruteable para un monitor industrial basado en ESP32 DevKit V1, con entrada 12VDC, buck 12V a 5V, LDO 5V a 3V3, sensores DS18B20, entradas digitales 3.3V, entradas analógicas protegidas y conectores industriales. Antes de rutear, corrige todos los problemas de colocación, nets y solapamientos.
ARQUITECTURA QUE DEBE CONSERVARSE
  • Entrada industrial: node_12VDC / 12V_PROTECTED.
  • Buck: 12V_PROTECTED a 5V.
  • LDO/regulador: 5V a 3V3.
  • MCU: ESP32 DevKit V1.
  • Bus OneWire DS18B20 en GPIO4 con pull-up 4.7k a 3V3.
  • LED de estado en GPIO2 con resistencia limitadora.
  • Entrada puerta refrigerador en GPIO18.
  • Entrada fuga/agua compartida en GPIO21.
  • Entrada flujo pulsos en GPIO23 con pull-up a 3V3.
  • Entrada nivel de agua en GPIO19.
  • ADC compresor en GPIO34 con 1k serie + 100nF a GND.
  • ADC resistencia/calefactor en GPIO35 con 1k serie + 100nF a GND.
  • ADC bomba en GPIO32 con 1k serie + 100nF a GND.
  • Todas las señales externas al ESP32 deben ser 0 a 3.3V y aisladas/acondicionadas si vienen del mundo industrial.
  • Ninguna señal AC debe conectarse directamente al ESP32.
CORRECCIÓN DEL ESQUEMÁTICO
  1. Revisa y normaliza los nombres de red:
    • 12V_PROTECTED
    • 5V
    • 3V3
    • GND
    • ONEWIRE_GPIO4
    • DOOR_GPIO18
    • LEAK_WATER_GPIO21
    • FLOW_PULSE_GPIO23
    • WATER_LEVEL_GPIO19
    • ADC_COMPRESSOR_GPIO34
    • ADC_HEATER_GPIO35
    • ADC_PUMP_GPIO32
    • LED_STATUS_GPIO2
  2. Corrige conexiones incorrectas o ambiguas:
    • GPIO32 solo debe ir al canal ADC de bomba después de su resistencia serie de 1k.
    • GPIO34 solo debe ir al canal ADC de compresor después de su resistencia serie de 1k.
    • GPIO35 solo debe ir al canal ADC de resistencia/calefactor después de su resistencia serie de 1k.
    • GPIO23 solo debe ir a FLOW_PULSE_GPIO23 y su pull-up, nunca a 12V ni GND directamente.
    • GPIO19 solo debe ir a WATER_LEVEL_GPIO19.
    • GPIO21 solo debe ir a LEAK_WATER_GPIO21.
    • GPIO18 solo debe ir a DOOR_GPIO18.
    • EN del ESP32 no debe estar cortocircuitado con GND.
    • Ningún pin GPIO debe tocar 12V_PROTECTED, 5V o GND salvo por resistencias, pull-ups, capacitores o circuitos previstos.
  3. Para cada entrada analógica:
    • Conector externo -> resistencia serie 1k -> pin ADC del ESP32.
    • Capacitor 100nF desde el lado del pin ADC a GND.
    • No conectar el ADC directamente a 12V, 5V ni señales no acondicionadas.
  4. Para entradas digitales externas:
    • Deben entrar como señales 3.3V.
    • Agrega pull-up a 3V3 donde aplique, especialmente FLOW_PULSE_GPIO23 si no existe.
    • No conectar entradas digitales directamente a 12V.
  5. Para OneWire:
    • Todos los conectores DS18B20 deben compartir ONEWIRE_GPIO4.
    • Debe existir una resistencia pull-up de 4.7k entre ONEWIRE_GPIO4 y 3V3.
    • Los conectores DS18B20 deben tener 3V3, GND y DATA/ONEWIRE.
CORRECCIÓN DE ERRORES DRC / OVERLAPPING COPPER
Corrige específicamente todos los errores de Overlapping Copper actualmente reportados. No los ocultes; elimina la causa física o eléctrica.
Errores a resolver:
  • R7:P1 3V3 solapado con R_LEAK_SER:P1 / LEAK_WATER_GPIO21.
  • U2:+IN / 12V_PROTECTED solapado con pads sin net.
  • U1:D32 / ADC_PUMP_GPIO32 solapado con C_LEVEL_DEBOUNCE y J_PUMP_CURRENT.
  • U1:D32 / ADC_PUMP_GPIO32 solapado con WATER_LEVEL_GPIO19.
  • J_COMP_CURRENT Pin_2 / COMPRESSOR_RAW_0_3V3 solapado con U2 pad.
  • U1:EN / ESP32_EN solapado con C_DOOR_DEBOUNCE / GND.
  • R_FLOW_SER:P2 / FLOW_PULSE_GPIO23 solapado con C_12V input 12V_PROTECTED y GND.
  • U2-IN, U2-OUT, U2+OUT, U2+IN y U2 pads no deben estar físicamente encima de otros pads ni conectores.
  • Cualquier pad del ESP32 que esté solapado con resistencias, capacitores o conectores debe separarse físicamente.
La solución correcta es mover componentes y corregir nets, no crear cortos ni cambiar nombres para silenciar el DRC.
ORGANIZACIÓN DE LA PCB
Reorganiza toda la PCB antes de rutear:
  1. Coloca el ESP32 DevKit V1 en el centro-derecha o centro de la placa, con la antena hacia un borde exterior.
  2. Deja keepout bajo y frente a la antena del ESP32:
    • Sin cobre.
    • Sin plano GND.
    • Sin componentes.
    • Sin pistas.
  3. Coloca la entrada 12VDC y el buck en un borde de la placa, lejos de la antena y lejos de las entradas analógicas.
  4. Coloca el LDO 5V a 3V3 cerca del ESP32, con sus capacitores de entrada/salida cerca de sus pads.
  5. Coloca capacitores de desacoplo muy cerca de los pines o módulos que desacoplan.
  6. Coloca conectores externos en los bordes de la PCB.
  7. Agrupa conectores por función:
    • Zona alimentación: entrada 12VDC, buck, protección, 5V, 3V3.
    • Zona OneWire: conectores DS18B20 cerca de GPIO4.
    • Zona digital: puerta, fuga, flujo, nivel cerca de sus GPIO.
    • Zona analógica: compresor GPIO34, resistencia GPIO35, bomba GPIO32, con sus filtros RC cerca del ESP32 pero separados del buck.
  8. Ordena los conectores para minimizar cruces de airwires.
  9. No debe quedar ningún componente encima del footprint del ESP32.
  10. No debe quedar ningún footprint parcialmente fuera del contorno de placa.
  11. No debe quedar ningún pad encima de otro pad salvo que sea intencional y del mismo componente, cosa que aquí no aplica.
REGLAS DE RUTEO
Después de corregir placement:
  1. No autorutear todavía si quedan errores de overlapping copper.
  2. Primero deja airwires limpias y cortas.
  3. Luego prepara la PCB para ruteo manual:
    • Pistas de alimentación 12V, 5V y 3V3 más anchas.
    • Señales GPIO/ADC más delgadas.
    • Evitar ángulos de 90 grados.
    • Mantener ADC lejos del buck y pistas de conmutación.
    • Usar plano GND si es posible, sin partir completamente el retorno.
    • No poner cobre bajo la antena ESP32.
PROJECT SPECIFICATION
Actualiza el archivo Project Specification para que coincida exactamente con el diseño corregido. Debe incluir:
  • Arquitectura final.
  • Tabla de pines ESP32.
  • Lista de conectores.
  • Reglas de seguridad industrial.
  • Reglas PCB.
  • Nota clara: señales externas analógicas deben llegar aisladas/acondicionadas 0 a 3.3V.
  • Nota clara: no conectar AC ni 12V directamente a GPIO.
  • Nota clara: antena ESP32 requiere keepout libre de cobre/componentes.
CRITERIO DE ACEPTACIÓN
Al terminar:
  1. El esquemático debe conservar la arquitectura descrita.
  2. Todos los nets deben tener nombres claros.
  3. La PCB debe tener componentes separados, sin footprints encimados.
  4. Los errores de Overlapping Copper deben quedar en 0.
  5. Las airwires deben verse más cortas y con menos cruces.
  6. El ESP32 debe tener antena orientada hacia el borde con keepout libre.
  7. El diseño debe quedar listo para ruteo manual.
  8. No cambies la función del circuito para hacer desaparecer errores.
  9. Si una conexión es dudosa, déjala marcada como revisión y explícame cuál es antes de modificarla.
Voy a revisar esquema, layout y DRC actuales; luego normalizaré nets, corregiré solapamientos mediante colocación funcional, actualizaré la especificación y dejaré la PCB lista para ruteo manual sin autorutear.
Normalicé nets clave y reemplacé el buck U2 placeholder, que tenía pads duplicados solapados, por un módulo LM2596 de 4 terminales re-cableado a 12V_PROTECTED, 5V y GND.
Listo. Corregí el proyecto sin cambiar la arquitectura funcional ni las asignaciones GPIO.
Cambios principales:
  • Normalicé nets clave: NODE_12VDC, 12V_PROTECTED, ONEWIRE_GPIO4, DOOR_GPIO18, etc.
  • Reemplacé el buck U2 placeholder por un módulo LM2596 con footprint usable para eliminar solapamientos internos.
  • Reorganicé la PCB completa en 160 × 160 mm, 4 capas: potencia a la izquierda, ESP32 centro-derecha con antena al borde, DS18B20 arriba, digitales abajo y analógicos a la derecha.
  • Preparé reglas de ruteo manual con anchos preferidos 0.20 / 0.30 / 0.60 / 1.00 mm y esquinas redondeadas.
  • Actualicé el Project Specification.
Validación final:
  • Overlapping Copper: 0 abiertos
  • Footprints/layers/dangling/ERC/pull-ups/decoupling revisados: sin errores abiertos
  • No autoruteé; la PCB queda organizada y lista para ruteo manual.
Run routing checks
Prepare manufacturing exports
Optimize board size
Review BOM sourcing
Add layout notes

U1
R3 P2 - C2 P1
R4 P2 - C3 P1
R_FLOW_SER P2 - U1 D23
R2 P2 - C1 P1
U1 GND__1 - C4 P2
U2 - OUT - U3 GND

Monitor Industrial ESP32

Monitor Industrial ESP32 thumbnail