% ================================================================ ELÉCTRICA \section{B $\cdot$ Revisión eléctrica por bloque}\label{sec:electrica} Los dos netlists se exportaron hoy de los esquemáticos auditados. \textbf{Los 64 pines del STM32F411 son idénticos en V5.6 y V5.7} (apéndice \ref{sec:pinmap}): un solo firmware sirve para las dos. Lo que cambia entre ellas no toca al MCU: la V5.7 trae la fuente \refdes{U25} y pierde \refdes{P2} (entrada de 5 V) y \refdes{U2} (buck del ventilador, que pasa a colgar de \net{VEH5V} por \refdes{JP1}). \begin{figure}[H]\centering \resizebox{\linewidth}{!}{\begin{tikzpicture}[node distance=5mm and 7mm, font=\small] \node[cajaoscura, text width=24mm] (gx) {GX16 P1\\24 V $\cdot$ GND $\cdot$ IGN}; \node[caja, right=of gx, text width=30mm] (in) {V5.6: Q10 + D10 $\to$ 24 V\\(solo ventilador U2)\\[2pt] V5.7: F2 3 A $\to$ D10 + Q10 $\to$\\\net{/24V} $\to$ \textbf{U25} TPS54360B\\9–32 V $\to$ 5.32 V}; \node[caja, right=of in, text width=24mm] (veh) {\net{VEH5V}\\V5.6: P2 (SD-15B 5 V)\\V5.7: U25}; \node[caja, right=of veh, text width=27mm] (ltc) {\textbf{U6 LTC4040}\\RS1 10 m$\Omega$ Kelvin $\to$ 2.5 A\\Q7 ideal diode\\PFI 4.40 V}; \node[caja, right=of ltc, text width=22mm] (vsys) {\net{MAIN5V} (VSYS)\\C129 $\cdot$ C32/C33\\respaldo 4.79 V}; \node[caja, below=of ltc, text width=27mm] (bat) {Paquete LFP 1S4P $\cdot$ P4\\L6 2.2 $\mu$H/8 A\\carga 1.40 A $\cdot$ flot. 3.50 V\\NTC R55 5.6k B3380}; \node[caja, below=of vsys, text width=22mm] (sys) {P11 cutoff / JP6\\\net{SYS5V}}; \node[caja, below=of sys, text width=22mm, xshift=-32mm] (ldo) {D12 $\to$ U17 TLV1117LV\\\net{3V3} MCU y lógica}; \node[caja, below=of sys, text width=24mm] (u7) {\textbf{U7 AP64350} 3.33 V\\EN = PC3 (\net{MODEM\_EN})\\\net{3V3\_MODEM} $\cdot$ C43 220 $\mu$F}; \node[caja, below=of sys, text width=22mm, xshift=32mm] (q1) {F1 PPTC $\to$ Q1 (PA1)\\\net{SW\_5V} $\to$ ArduSimple\\C3 220 $\mu$F}; \node[caja, below=of ldo, text width=22mm] (eth) {U12 MP1584 $\to$ \net{3V3\_ETH}\\W5500 (sin enable)}; \node[caja, below=of u7, text width=24mm] (xbee) {J7/J8 zócalo XBee\\4G NTRIP Master\\RST PC1 $\cdot$ LED PC2}; \node[caja, below=of q1, text width=22mm] (k1) {K1 (PB5) Modo B\\NC: F9P TX2 $\to$ DIN}; \draw[flecha] (gx) -- (in); \draw[flecha] (in) -- (veh); \draw[flecha] (veh) -- (ltc); \draw[flecha] (ltc) -- (vsys); \draw[flecha] (ltc) -- (bat); \draw[flecha] (vsys) -- (sys); \draw[flecha] (sys) -- (ldo); \draw[flecha] (sys) -- (u7); \draw[flecha] (sys) -- (q1); \draw[flecha] (ldo) -- (eth); \draw[flecha] (u7) -- (xbee); \draw[flecha] (q1) -- (k1); \end{tikzpicture}} \caption{Árbol de potencia de V5.6 y V5.7 tal como sale del netlist. Lo nuevo contra V5.5: U25 (V5.7), AP64350 con enable desde el MCU, C129/C130, RS1 de 10 m$\Omega$ con sensado Kelvin, paquete LFP.}\label{fig:arbol} \end{figure} \subsection{Cargador y respaldo — U6 LTC4040}\label{sec:ltc} Todos los valores se recalcularon contra la hoja de datos (ADI, 4040fb) y coinciden con lo que el ECO V5.6 quiso: \hwtab{\begin{tabular}{@{}L{3.44cm}L{4.01cm}L{2.87cm}L{5.16cm}@{}} \toprule \cab{\cw{Función} & \cw{Piezas / red} & \cw{Valor que resulta} & \cw{Comentario}}\\ \midrule Umbral de respaldo (PFI) & R51 270 k / R52 100 k, $V_{PFI}=1.19$ V & \textbf{4.40 V} cae $\cdot$ 4.51 V sube & 30 mV de histéresis. 0.6 V bajo los 5.0 V de la SD-15B; 0.9 V bajo los 5.32 V de U25.\\ \rowcolor{HelgenMist} Salida en respaldo (BSTFB) & R53 499 k / R54 100 k, ref. 0.8 V & \textbf{4.79 V} & Dentro del rango 3.5–5 V. El AP64350 arranca desde 3.8 V: ya no existe el caso V5.5 (MP1584 pedía 4.5 V).\\ Límite de corriente de entrada & RS1 10 m$\Omega$, umbral 25 mV & \textbf{2.5 A} & Sensado Kelvin VIN (U6.6) y CLN (U6.7) verificado en el cobre (§\ref{sec:cobre}). Recorta solo la carga; el sistema nunca se limita.\\ \rowcolor{HelgenMist} Corriente de carga & R50 1.43 k, $I=2000/R$ & \textbf{1.40 A} & C/10 del paquete 4 × 3.6 Ah LFP-HT.\\ Flotación & JP2 2-3 (F2 = 0 LiFePO4) $\cdot$ JP3 F1 = 0 $\cdot$ JP4 F0 = 1 & \textbf{3.50 V} & Tabla de la hoja de datos (p.~11). Firmware: \texttt{BOARD\_VFLOAT\_V 3.50}.\\ \rowcolor{HelgenMist} Ventana térmica de carga & R55 5.6 k desde \net{VEH5V}, NTC 10 k B3380 en P4.3 & $\approx$ \textbf{+10 … +60 °C} & Los umbrales son 34.9 \% y 76.5 \% de VIN (ratiométricos: el sesgo desde VIN es el correcto). El divisor R113/R114 a PC5 carga el nodo 4 \% (9.57 k en vez de 10 k): despreciable.\\ Capacitor de VSYS & C129 10 $\mu$F 0603 junto a U6.1/24 + C32/C33 47 $\mu$F + C34 & 104 $\mu$F & El hallazgo crítico del 19-oct, cerrado (T31) y colocado (pasada 4).\\ \rowcolor{HelgenMist} CHGOFF / BSTOFF & R56 100 k a GND en PA8 $\cdot$ BSTOFF a GND & carga ON por defecto $\cdot$ boost ON & Ninguno flota (la hoja de datos lo prohíbe). Con el MCU en reset, la carga queda en manos de la ventana NTC y del límite de 2.5 A: no se repite el bucle del 10-ago.\\ OVSNS & unido a VIN & OVP no usada & Permitido por la hoja de datos (p.~12); el umbral de 6.4 V no se alcanza (VEH5V $\le$ 5.46 V).\\ \rowcolor{HelgenMist} PFO & solo TP2 & no llega al MCU & El firmware detecta el respaldo por \net{5V\_SENSE} (PA4). Suficiente; una interrupción sería más elegante (v6).\\ Corriente de respaldo & boost desde 3.2 V & hasta 2.5 A en VSYS & 12 W disponibles contra 8.7 W de pico (§\ref{sec:bateria}). NMOS 6.5 A; L6 8 A de saturación.\\ \bottomrule \end{tabular}} \subsection{Riel del módem — U7 AP64350}\label{sec:modem} \begin{itemize} \item \textbf{Entrada} \net{SYS5V} con C101/C119/C120 (22 $\mu$F), C121 (10 $\mu$F/25 V) y \textbf{C130 100 nF} pegado a U7.2 (T32, pasada 5). \textbf{Salida} 0.8 V × (1 + 100 k/31.6 k) = \textbf{3.33 V}; L7 4.7 $\mu$H/4 A (rizo $\approx$ 0.44 A a 500 kHz); C43 220 $\mu$F polímero + C41 + C122. Frecuencia: RT 200 k $\to$ \textbf{500 kHz} (450–550). Compensación Rcomp2 9.1 k / Ccomp2 10 nF / C123 68 pF. \item \textbf{EN = PC3} a través de R105 10 k, con R106 100 k a GND: \textbf{apagado por defecto} (reset del MCU, firmware viejo). Con PC3 en alto EN = 3.0 V ($>$ 1.25 V). Corriente de apagado 1 $\mu$A. Es lo que hace posible el ciclo de 10 min: el módem se corta con un pin, sin tocar la etapa. \item \textbf{RESET = PC1} a través de R107 1 k hacia J7.5, con \refdes{SW4G1} en paralelo a GND. Manejar como colector abierto (salida en bajo o alta impedancia; nunca en alto). \textbf{LED = PC2} a través de R108 1 k desde J8.8 (la misma señal que enciende \refdes{D4G1}). \textbf{Toma de RTCM = PC7} (USART6\_RX) a través de R111 1 k desde \net{DOUT\_4G}: el MCU puede oír las correcciones que el módem manda al F9P. \item \textbf{Zócalo}: VCC (J7.1) y VREF (J8.7) a \net{3V3\_MODEM}; ON/OFF (J8.1) a GND; USB del módem (J7.7/J7.8) a \refdes{J9} con \refdes{D19} USBLC6; \net{MODEM\_ON\_SLEEP} (J8.3 $\to$ PC4) con R109 DNP: PC4 queda al aire — configurar con pull-down. \end{itemize} \subsection{V5.7 — la fuente a bordo y la entrada de 9 a 32 V}\label{sec:v57-fuente} Cadena: \refdes{P1.1} $\to$ \refdes{F2} (0452003.MRL, 3 A lento, 125 V) $\to$ \net{/VIN\_FUSED} $\to$ \refdes{D10} SMBJ33A a GND y \refdes{Q10} IRFR5305 (P-FET: drenador a la entrada, fuente a \net{/24V}, compuerta a GND por Rrp1 10 k y Zener DzG1 15 V entre fuente y compuerta) $\to$ \net{/24V} (C10 47 $\mu$F/50 V electrolítico, C22 10 $\mu$F/50 V cerámico, C149/C150 2.2 $\mu$F/100 V, C11 100 nF) $\to$ \refdes{U25} TPS54360B. \hwtab{\begin{tabular}{@{}L{3.14cm}L{4.52cm}L{8.25cm}@{}} \toprule \cab{\cw{Parámetro} & \cw{Piezas} & \cw{Valor y comentario}}\\ \midrule Salida & R121 57.6 k / R122 10.2 k, ref. 0.8 V & \textbf{5.32 V} (5.21–5.43 con ±1 \% en R y ref.). Deja 0.9 V sobre el PFI y 0.2 V bajo el máximo de 5.5 V del LTC4040.\\ \rowcolor{HelgenMist} Frecuencia & R120 162 k & \textbf{$\approx$ 600 kHz} (RT = 92417$\cdot$f$^{-0.991}$). Lejos del AP64350 (500 kHz) y del LTC4040 (2.25 / 1.125 MHz).\\ Compensación & R123 13 k $\cdot$ C155 6.8 nF $\cdot$ C156 39 pF & Red tipo II; coincide con el diseño de referencia TI para 5 V / 3.5 A con L = 10 $\mu$H y 2 × 47 $\mu$F.\\ \rowcolor{HelgenMist} Inductor y diodo & L22 SRP1265A 10 $\mu$H (15.5 A sat.) $\cdot$ D34 B560C (5 A, 60 V) & Rizo $\approx$ 0.7 A a 24 V. D34 disipa $\approx$ 1.2 W a 24 V y 2.8 A (conduce el 78 \% del periodo): se mide su temperatura en banco.\\ Salida & C153/C154 47 $\mu$F/16 V 1210 + C78 220 $\mu$F polímero & C78 cuelga de una sola vía 0.8/0.3 (aceptado el 21-oct; opcional 2.\textsuperscript{a} vía).\\ \rowcolor{HelgenMist} Enable / UVLO & R124 523 k y R125 84.5 k \textbf{DNP} & EN flotante = habilitado por la corriente interna; UVLO interno 4.3 V. Si algún día se quiere apagar a $<$ 9 V, se montan.\\ Rango continuo & D10 (33 V de trabajo, conduce desde 36.7 V) $\cdot$ U25 (4.5–60 V) & \textbf{9–32 V DC}: 12 V y 24 V. Piso: a 2.8 A la regulación necesita $\approx$ 6.5 V.\\ \rowcolor{HelgenMist} Polaridad invertida & Q10 bloquea; D10 unidireccional conduce & \alerta{F2 abre} (SMD, no se cambia en campo). Con SMBJ33CA no pasa nada: easy win P-4.\\ Corriente de entrada & 15 W a plena carga & 0.7 A a 24 V $\cdot$ 1.9 A a 9 V. F2 de 3 A lento aguanta el arranque (C10 + C22 + C149/150).\\ \rowcolor{HelgenMist} Térmico & U25 HSOP-8 con 6 vías en el EP $\cdot$ D34 SMC & $\approx$ 2.5 W en el bloque a 32 V y 2.8 A (U25 $\approx$ 1.0 W, D34 $\approx$ 1.2 W, L22 $\approx$ 0.1 W). A 45 °C en la caja el U25 ronda 100 °C de unión: lejos de los 176 °C de apagado, pero se mide.\\ Lazo de entrada & C149/C150 a 1 mm de U25.2 & $\approx$ 56 mm$^2$ por centros de pad; In1 es GND sólido debajo (207 de 208 mm$^2$). Decisión D-21-2: se queda y se mide el timbre en SW/VIN (hallazgo E-9).\\ \bottomrule \end{tabular}} \begin{figure}[H]\centering \includegraphics[width=0.78\linewidth]{fig/fig-v57-fuente.png} \caption{V5.7: bloque de la fuente en F.Cu. Toda la corriente de entrada de U25 cruza una vía 0.8/0.3 en (182.4, 68.1) (hallazgo E-10): a 24 V son 0.7 A y no pasa nada; a 9 V son 1.9 A y se mide con cámara térmica.} \end{figure} \subsection{MCU, relojes, arranque y depuración} \refdes{U16} STM32F411RET6 con VBAT unido a \net{3V3} (no hay batería de RTC: no hace falta, el MCU sigue alimentado en respaldo); HSE \refdes{Y3} 25 MHz HC49-SD con 15 pF (igual que V5.5, probado); \textbf{LSE \refdes{Y4} Epson FC-135 (CL 12.5 pF, ESR 70 k$\Omega$) con C115/C116 de 12 pF}: la carga efectiva queda en $\approx$ 8–9 pF, el oscilador corre unas decenas de ppm rápido (irrelevante para un temporizador de 10 min) y arranca con margen; el firmware pone \texttt{LSEDRV} alto y, si no arranca en 2 s, usa LSI (hallazgo E-12). BOOT0 con R98 10 k a GND y \refdes{SW2}; BOOT1 (PB2) con R99 10 k a GND; DFU por \refdes{J11} con \refdes{D14/D15/D16} (ESD) y \refdes{Rdfu1} 22 k en PA10 para que el bootloader no se enganche con ruido en USART1; NRST con C104, \refdes{SW1}, \refdes{P10} y TP5; SWD en TP3/TP4; VCAP1 4.7 $\mu$F; VDDA por R104 10 $\Omega$ + C109/C112. Pines al aire (PA7, PB1, PB10, PC6, PC8–PC12, PD2): el firmware los pone en pull-down para dormir. \refdes{PA15} (\net{ETH\_RST}) tiene pull-down de 4.7 k: tras el reset el pin es JTDI con pull-up interno ($\approx$ 40 k) y el nodo queda en $\approx$ 0.35 V — el W5500 arranca en reset, como quiere el ECO. \refdes{PA5} (\net{IGN\_SENSE}): divisor 22 k arriba / 22 k $\parallel$ 3.3 k abajo (×0.1154) + BAT54 a 3V3: 24 V $\to$ 2.77 V, 13.8 V $\to$ 1.59 V, 12 V $\to$ 1.38 V — \textbf{en máquinas de 12 V \texttt{digitalRead} no es confiable} (zona indefinida 0.99–2.31 V): ADC con umbrales 0.80 / 0.55 V (hallazgo E-7). \subsection{Etapa RTK, Modo B y telemetría} \net{PWR\_CTRL} (PA1) $\to$ R1 1 k $\to$ Q5 (MMBT3904) $\to$ \net{GATE\_LS} con R2 10 k a \net{SYS5V} $\to$ Q1 AO3401A; fuente por F1 (PPTC) desde \net{SYS5V}, drenador a \net{SW\_5V} (C3 220 $\mu$F, C40) $\to$ MOD1.5. Con el MCU en reset la etapa está apagada (invariante 1). USART2 (PA2/PA3) al UART1 del simpleRTK2B; USART1 RX (PA10) toma TX2 (NMEA); USART1 TX (PA9) al contacto NO de \refdes{K1}; K1 (bobina en \net{SYS5V}, Q6 por PB5 con R41 pull-down, D6 1N4148 de rueda libre) en reposo deja TX2 $\to$ \net{DIN\_4G} directo (invariante 2). Sin cambios contra V5.5 salvo la toma de RTCM en PC7. \subsection{Puertos: Ethernet, RS-485, RS-232, USB y sensores}\label{sec:puertos} \hwtab{\begin{tabular}{@{}L{2.29cm}L{6.31cm}L{2.10cm}L{4.78cm}@{}} \toprule \cab{\cw{Puerto} & \cw{Qué hay (netlist)} & \cw{¿Usable?} & \cw{Reglas y hallazgos}}\\ \midrule Ethernet \refdes{J10} & W5500 en SPI2 (PB12–15), INT PC0, RST PA15 con pull-down; RSET 12.4 k; TOCAP 4.7 $\mu$F; 1V2O 10 nF; PMODE con pull-up (auto-negociación); TCT a \net{3V3\_ETH}; pares con 49.9 $\Omega$ a RCT; LED de enlace J10.9/10 & \estado{Sí} & J10.8 al aire (terminación Bob-Smith sin tierra: solo EMC); LED de actividad invertido (J10.11/12): cosmético. \net{3V3\_ETH} siempre encendido (U12 sin enable): en batería el firmware pone el PHY en power-down (13 mA) — hallazgo E-3.\\ \rowcolor{HelgenMist} RS-485 \refdes{P15} & U14 SP3485EN a 3.3 V; RO $\to$ RXA, DI $\leftarrow$ TXA de U10; \textbf{DE y \nbar{RE} unidos a \nbar{RTSA}}; R82 120 $\Omega$ por JP5 (abierto) & \estado{Sí}, punto a punto & Tras el reset \nbar{RTSA} = 1 $\to$ transmisor encendido: \textbf{ocupa el bus hasta que el firmware escribe EFCR/MCR} ($\sim$1 s en el arranque; también durante DFU). Sin TVS ni polarización de reposo (el SP3485 no es a prueba de bus abierto): bytes basura con el cable suelto. Hallazgo E-4; THVD1410 para las 108 / 322.\\ RS-232 \refdes{P16} & U15 MAX3232 a 3.3 V con C85–C88 100 nF; T1IN $\leftarrow$ TXB; R1OUT $\to$ RXB; canal 2 a tierra & \estado{Sí} & R1OUT y H4.3 comparten \net{SER\_RXB}: \textbf{H4 (TTL) y P16 nunca al mismo tiempo} (hallazgo E-5; v6 pone R147).\\ \rowcolor{HelgenMist} TTL \refdes{H4} & 3V3 $\cdot$ TXB $\cdot$ RXB $\cdot$ GND & \estado{Sí} & Mismo canal B del SC16IS752 que el RS-232.\\ USB-C \refdes{J11} & DFU del MCU (PA11/PA12), ESD, VBUS $\to$ D13 $\to$ LDO (alimenta el MCU sin 24 V) & \estado{Sí} & Igual que V5.5.\\ \rowcolor{HelgenMist} USB-C \refdes{J9} & Paso directo al USB del módem (J7.7/J7.8) con D19 USBLC6 & \estado{Sí} & Para configurar el 4G NTRIP Master sin sacarlo.\\ I$^2$C & SHT40 0x44 $\cdot$ TMP102 0x48 (U4, zona del cargador) $\cdot$ TMP102 0x49 (U18, zona del módem) $\cdot$ SC16IS752 0x4D $\cdot$ PCF8574 0x20 $\cdot$ SC7A20 0x18; pull-ups 4.7 k & \estado{Sí} & U4 se movió 54 mm (ahora mide el cargador, no el MCU); U18 es nuevo. El acelerómetro responde WHO\_AM\_I = 0x11; INT1 en PB9 (EXTI9, despertar desde STOP).\\ \rowcolor{HelgenMist} Gauge y RGB & PCF8574 P0–P3 $\to$ DB1–4 (120 $\Omega$); P4–P6 $\to$ P14 RGB; P7 libre & \estado{Sí} & P7 ya no es el puente de MODEM\_RST de la V5.5.\\ Ventilador \refdes{P6} & Q2 AO3400A por PA6 (Rgs1 100 k); V5.6 desde U2 (24 V), V5.7 desde \net{VEH5V} por JP1 & \estado{Sí} & \textbf{En respaldo no hay ventilador en ninguna de las dos} (ni U2 ni U25 tienen 24 V): el termostato de batería del firmware es inocuo.\\ \rowcolor{HelgenMist} Pines de U10 al aire & \nbar{CTSA}, \nbar{CTSB}, GPIO0–7 & — & Entradas CMOS flotando: sin efecto con el control de flujo apagado; v6 las aterriza.\\ \bottomrule \end{tabular}}