--- title: "Estado de la v6 al 22-oct: T25, T28, T38, T39 (bloque A) y T40 (MH4) aplicados" tags: [project-drogheda, hardware, hbox, einarboard, v6, auditoria, t25, t28, t38, t39, t40, courtyards, barrenos, mh4, sim, esd, u25, bloque-a, layout, michelle] project: Project Drogheda author: Helgen Technologies (revisión: Claude; pedido: Leo) date: 2026-10-22 version: 1.3 status: ACTIVO — HBox_PCB d5f5002 (T39; Leo, 22-oct) + T40 (Claude, 22-oct, tarde) · falta commit y push de T40 audience: Leo, Michelle (layout) --- # Estado de la v6 al 22-oct · T25, T28, T38, T39 y T40 aplicados !!! warning "Designadores de antes del 22-oct (T43)" Este estado usa la numeración anterior a T43. En la tarjeta, los designadores ya son otros (por ejemplo, U6 es ahora el módem y el cargador es U17). El [plan de fines de semana (rev. 1.6)](v6-plan-fines-de-semana.md) ya está en la numeración nueva; para lo demás, la [tabla viejo → nuevo](designadores-t43-22oct.md#8-tablas-viejo-nuevo). **Pregunta (Leo, 21-oct):** ¿T28 ya quedó o hay que correrlo? ¿Cómo va la v6? Y en la noche: trabaja en la v6 real. **22-oct, 09:40:** «Haz tú los cambios de la v6; es la prioridad». !!! note "Rev. 1.3 (22-oct, tarde): T40 dejó libre MH4" - **T40 sacó de MH4 todo lo que no era GND**, por script. D23 quedó debajo del pin 31 de U19 y D24 junto a R129/R133. `/SIM_CLK` va por In1, `/SIM_RST` por arriba de D25 y `/NTC` ya no cruza el barreno. Las tres TVS de la SIM tienen vía de GND propia, y los pines 92 y 94 de U19 también. Detalle en el [§7](#7-t40-22-oct-tarde-mh4-libre). - **DRC de KiCad 10:** quedan **11 errores**, los encimes de courtyard que son solo de margen. Hay 0 sin conectar y la misma paridad (19 PWR_FLAG). Salieron 37 violaciones y no entró ninguna. - **Lo que no hace T40:** las TVS se quedan del lado del módem, no junto a J14 como pide L-38 (B-09). Leo decide si se cambian al lado del zócalo (D-22-4, [§7.2](#72-las-tvs-de-la-sim-se-quedan-del-lado-del-modem-d-22-4)). - **Falta el commit y el push de T40.** Hasta entonces, Michelle no abre la v6. !!! note "Rev. 1.2 (22-oct): T39, el bloque A, ya está en la v6" - **T39 aplicó la propuesta α del bloque A por script.** Leo lo pidió el 22-oct como prioridad. D34 quedó entre U25 y L22, L22 al este y R53/R54 junto a U6. El nodo SW y `/VEH5V` van por F.Cu. In1 e In2 ya no llevan pistas bajo la fuente, y MH8 quedó libre. Detalle en el [§6](#6-t39-22-oct-el-bloque-a-por-script). - **DRC de KiCad 10, con relleno y paridad:** - 0 sin conectar y la misma paridad (19 PWR_FLAG); - **44 errores**: ≈ 33 de MH4 y 11 encimes de courtyard que son solo de margen; - ya no están MH8 ni los 3 encimes reales del bloque A. - **Falta el commit y el push de T39.** Hasta entonces, Michelle no abre la v6 (recuadro amarillo del §1). !!! note "Rev. 1.1 (21-oct, noche): T38 y una corrección al §3" - **T38 ya está aplicado en la v6.** Antes lo probé en una copia con el DRC de KiCad 10. Hace tres cosas: courtyards reales en 11 huellas, `/3V3` lejos de MH6 y una regla nueva para los barrenos. Detalle en el [§5](#5-t38-21-oct-noche-courtyards-mh6-y-regla-de-barrenos). - **Corrección.** En la rev. 1.0 escribí que L22 se quedaba donde está y D34 iba abajo del pin 8 de U25. **Ahí no cabe:** entre U25 y P1 quedan 4.1 mm, y D34 (SMC) mide 6.7 mm aun de lado. El [§3](#3-lo-que-tiene-que-corregir-michelle-antes-de-seguir) ya trae la colocación que sí cabe (propuesta α), revisada con los courtyards nuevos. **Respuesta corta (22-oct):** - **T25, T28 y T38** ya están en HBox_PCB: `b74b96f`, que Leo subió el 22-oct a las 09:42. **T39** también: `d5f5002`. - **T40 (22-oct, tarde) dejó libre MH4** ([§7](#7-t40-22-oct-tarde-mh4-libre)). Con eso los 5 barrenos quedan libres y el DRC ya no tiene errores de barreno, de máscara ni de courtyard con barreno. - **T39 (22-oct) hizo el bloque A** con la propuesta α ([§6](#6-t39-22-oct-el-bloque-a-por-script)): - el cátodo de D34 quedó a 3.52 mm del pin SW (antes 13.0) y L22.1 a 8.79 mm; - el nodo SW tiene 9.8 mm² de cobre fuera de los pads; - el lazo por centros de pad mide 56.5 mm² con C149 (antes ≈ 115); - MH8 quedó libre y ya no están los 3 encimes reales: C153 y C154 bajo L22, y R53 sobre U25; - In1 e In2 ya no llevan pistas de señal bajo el nodo SW, L22 ni la entrada de U25. - **Del bloque A queda poco:** Rig1 a ≤ 3 mm de P1.3 (está a 4.79 mm) y decidir el `/24V` sin montar (pasos 5 y 6 del plan). - **La v6 todavía no se puede pedir.** Siguen los bloques B a H del plan, y D-22-4 (las TVS de la SIM junto a J14). - **DRC de hoy, con T39 y T40:** - 11 errores, los encimes de courtyard que son solo de margen; esos se excluyen al final; - 0 sin conectar y la paridad solo con los 19 PWR_FLAG; - 249 avisos, 5 menos que con T39. ![v6 con T40: el barreno MH4 libre](img/2026-10-22_Drogheda_v6-T40-MH4_v1.0.png) ![v6 con T39: el bloque A, la fuente U25, por script](img/2026-10-22_Drogheda_v6-T39-Bloque-A_v1.0.png) **Así estaba el 21-oct, antes de T38 y T39:** ![v6 al 21-oct: la fuente U25 y los barrenos](img/2026-10-21_Drogheda_v6-Estado-U25-Barrenos_v1.0.png) ## 1. T25, T28, T38, T39 y T40: qué cambiaron | Script | Qué cambió en `hbox-watchdog-v6` | |---|---| | **T25 `--set v6`** | **5 barrenos** de 3.2 mm con máscara de 6 mm: MH5 (65.2, 45.3), MH6 (65.2, 135.3) y MH4 (185.2, 90.3), los de la placa base de la V5.5, más MH7 (195.2, 45.3) y MH8 (195.2, 135.3) en las esquinas. Van como piezas «solo de tarjeta», así que *Actualizar PCB* ya no los borra. | | **T28** | U25 sin el código del AP64350: queda solo LCSC C524806 (TPS54360B) · pasta del EP de U6 al 50 % (6 ventanas de 0.95 × 0.85 mm) · conexión sólida a la zona en 114 pads de tierra de potencia y RF · stackup JLC04161H-7628 con ENIG y control de impedancia · cajetín «EinarBoard v6 (HBOX 6.0)», rev 6.0, y textos de serigrafía · clase RF a 0.35 mm en el `.kicad_pro`. | | **T38** (21-oct, noche) | Courtyard correcto en U19, U20, U23, U24, U25, U26, D22, D27, J12, J13 y L22, en la tarjeta y en `Drogheda-v6.pretty` · `/3V3` de MH6 por B.Cu, a 4.06 mm del centro · regla nueva en el `.kicad_dru`: en F.Cu y B.Cu, solo GND a menos de 4 mm del centro de un barreno. No toca el `.kicad_pro`. | | **T39** (22-oct) | Bloque A con la propuesta α: mueve D34, L22, R53 y R54 · nodo SW y `/VEH5V` con pistas anchas de F.Cu · `/I2C_SDA`, `/I2C_SCL` y la toma de 5 V de R121 pasan de In1/In2 a B.Cu · borra 28 tramos y 5 vías (2 de ellas dentro de MH8) y agrega 9 vías y 19 tramos. Solo cambia el `.kicad_pcb`; ver [§6](#6-t39-22-oct-el-bloque-a-por-script). | | **T40** (22-oct, tarde) | MH4 libre: mueve D23 y D24 · `/SIM_CLK` por In1 · `/SIM_RST` por F.Cu arriba de D25, con vía nueva · `/NTC` (In2) rodea el barreno · vías de GND para D23, D24, D25 y los pines 92/94 de U19 · borra 17 tramos y 2 vías, acorta 2 tramos y agrega 7 vías y 17 tramos. Solo cambia el `.kicad_pcb`; ver [§7](#7-t40-22-oct-tarde-mh4-libre). | **Cómo se probó.** - T25 y T28: dos copias del commit `9255b84` en la Mac, una tal cual y otra con los scripts. DRC de KiCad 10.0.4 con el `.kicad_dru`, «Rellenar zonas» y «Comprobar paridad»: - sin los scripts: 0 errores; - con los scripts: 22 errores, todos en MH4 y MH8; 0 sin conectar; la paridad igual (19 PWR_FLAG). - T38: igual, sobre una copia de la v6 ya con T25 y T28. Después se aplicó a la v6 de HBox_PCB y el resultado es idéntico, byte por byte, a la copia probada. - T39: igual, sobre una copia de `b74b96f`. Después se aplicó a la v6 de HBox_PCB y se rellenó con `kicad-cli` y el proyecto cargado; el archivo es idéntico, byte por byte, a la copia probada (`97ea7e45`). - T40: igual, sobre una copia de la v6 ya con T39 (`97ea7e45`, la de `d5f5002`). Aplicado y rellenado en HBox_PCB: idéntico a la copia probada (`a273d44c`). - Correr T28 o T38 otra vez no cambia nada, y T25 se niega si los barrenos ya están. !!! warning "Antes de que Michelle vuelva a abrir la v6" T40 (22-oct, tarde) cambia `hbox-watchdog-v6.kicad_pcb`, igual que T39 y que antes T38, que cambió el `.kicad_pcb`, el `.kicad_dru` y 8 archivos de `Drogheda-v6.pretty`. Git ya no mezcla archivos de KiCad (`merge=binary`): si Michelle guarda la v6 sobre su copia anterior y la sube, se pierde uno de los dos trabajos. El orden es: **Leo sube → Michelle hace `git pull --ff-only` → abre la v6.** ## 2. Los 8 bloqueantes del 16-oct, hoy Medido en el cobre con las zonas rellenadas. «19-oct» = `00a9af4`; «hoy» = `d5f5002` (T25, T28, T38 y T39) con T40. | # | Bloqueante del 16-oct | 19-oct | Hoy | Estado | |---|---|---|---|---| | 1 | U25 con el código del AP64350 | igual | solo C524806 | ✅ T28 | | 2 | Sin barrenos | sin barrenos | **5 barrenos libres**: MH6 con T38, MH8 con T39 y MH4 con T40. En las caras, dentro de 4 mm del centro solo queda GND | ✅ T25 + T38–T40 | | 3 | 5 V por capas internas | `/VEH5V` 12 mm por In1 a 0.5 mm; `/VIN_SW` 22 mm por In2 | `/VEH5V` de L22.2 a R51.1 **de 2 mm por F.Cu** (T39); de R51.1 a RS1 sigue de 1.0 mm, sin vías (meta ≥ 2 mm). La toma de 5 V de R121 ya no va por In1. `/VIN_SW` de RS1 a Q7 **igual**: 22 mm por In2 a 0.5–0.8 mm, con 2 vías; Q7 sigue a 10.6 mm de RS1 | 🟠 mitad | | 4 | Cargador U6 | `/SW_BAT` y `/BAT_PLUS` de 0.5 mm; 1 vía en el EP | `/SW_BAT` de 0.7–0.75 mm (meta: polígono ≥ 2 mm); `/BAT_PLUS` igual; 1 vía en el EP (meta 9) | ❌ | | 5 | Fuente U25 | L22 a 13 mm; EP sin vías | **D34 a 3.52 mm del pin SW** ✅ · L22.1 a 8.79 mm ✅ · nodo SW 9.8 mm² fuera de los pads ✅ · lazo por centros 56.5 mm² con C149 (60.8 con C150) ✅ · 6 vías en el EP y 4 en el ánodo de D34 ✅ · C149 a 0.75 mm de VIN ✅ · C153 y C154 fuera de L22 ✅ · faltan Rig1 (4.79 mm de P1.3) y el `/24V` sin montar | ✅ T39 (con las metas del 21-oct) | | 6 | RF LTE por In1 | 21.9 mm por In1 | igual | ❌ | | 7 | Vías de GND | 96 (meta ≥ 400) | 119 (T39: 7 nuevas y 2 menos en MH8; T40: 4 nuevas y 1 menos): 1 bajo U19 y 0 bajo U18; In1 con 1 595 mm de pistas (T40 le sumó 8 mm de `/SIM_CLK`) | ❌ | | 8 | Stackup genérico | igual | JLC04161H-7628, ENIG, control de impedancia | ✅ T28 | **Lo demás** (bloques C a H: módem, GNSS, U12, pares diferenciales, puertos, In1, serigrafía) no cambió desde el 19-oct. **El sensado de RS1 sigue como el 16-oct:** VIN es Kelvin y CLN es «casi Kelvin», como se aceptó. Hay que conservarlo al rehacer `/VIN_SW`. **Otros cambios de hoy:** - `/24V` (la rama de Q10) pasó de In1 a B.Cu; el plan pedía borrarlo. - Rig1 quedó a 4.8 mm de P1.3 (meta ≤ 3 mm; antes 8.4). - P1 se recorrió 1.46 mm al oeste. ## 3. Lo que tiene que corregir Michelle antes de seguir Después del `git pull`. Primero esto y luego el resto de los bloques A y B del [plan](v6-plan-fines-de-semana.md#3-sabado-24-bloques-a-y-b-el-camino-de-la-energia). !!! success "22-oct: el §3.1 ya quedó con T39 y MH8 también" T39 hizo la propuesta α ([§6](#6-t39-22-oct-el-bloque-a-por-script)). Lo de abajo queda como registro de lo que se pidió. Cambió en tres cosas: 1. **D34 y L22 quedaron 0.08 mm más al este:** D34 en (181.08, 121.75) y L22 en (192.18, 122.5). Así el courtyard de D34 ya no encima al de C152. 2. **R53/R54 quedaron abajo de JP2.** Están a 3.4 mm de U6.10 y a 6–7 mm de U6.18, no a ≤ 3 mm: más cerca de U6.18 no hay lugar sin mover piezas del bloque B. 3. **El nodo SW y `/VEH5V` son pistas anchas, no zona** ([§6.3](#63-por-que-pistas-y-no-zona)). **Para Michelle queda:** Rig1 y el `/24V` del bloque A, y luego el bloque B del plan. MH4 ya quedó con T40 ([§7](#7-t40-22-oct-tarde-mh4-libre)); si Leo elige la opción (b) de D-22-4, también las TVS de la SIM junto a J14. ![v6 con T38: courtyards reales, la fuente U25 y los barrenos](img/2026-10-21_Drogheda_v6-T38-Courtyards-U25-Barrenos_v1.0.png) ### 3.1 Bloque A: propuesta α (corrige la rev. 1.0) **D-21-3 (propuesta, falta el OK de Leo):** el bloque A se hace con la colocación de abajo (propuesta α), y antes del sábado se revisa la pared de la HBOX junto a L22. **Por qué hay que mover L22.** El diodo D34 (B560C, SMC) es lo más importante del lazo caliente: su cátodo tiene que quedar pegado al pin SW (pin 8) de U25. Hoy L22 ocupa ese lugar. Abajo del pin 8 no cabe: de U25 a P1 quedan 4.1 mm y D34 mide 6.7 mm aun de lado. La colocación que mejor funciona con estas piezas es **D34 entre U25 y L22, y L22 recorrida al este**. También probé L22 girada 90°: así el nodo SW queda el doble de largo. 1. **Primero, R53 y R54** (divisor BSTFB del LTC4040) a **≤ 3 mm de U6.18** (bloque B, paso 6 del plan). Hoy están en (177.0, 125.7) y (175.4, 126.9), justo donde va el cobre del nodo SW. 2. **D34:** girar 90° (cátodo abajo) y ponerlo en **(181.0, 121.75)**. - El cátodo queda a 3.4 mm del pin 8, de orilla a orilla. - El ánodo queda arriba, junto a la tierra de C153 y C154. 3. **L22:** sin girar, en **(192.1, 122.5)**. - L22.1 queda a 8.7 mm del pin 8. - L22.2 queda a 0.62 mm de la orilla de la tarjeta (mínimo 0.5 mm) y el cuerpo a 1.35 mm. **Revisar que la pared de la HBOX no choque ahí.** - Así C153 deja de quedar debajo de L22. 4. **C152 se queda donde está.** Su courtyard toca el de U25 y el de D34 solo en el margen; el hueco real es de 0.3 a 0.4 mm. 5. **Nodo SW (`/SW_PWRIN`)** en F.Cu, pin 8 → C152.2 → cátodo de D34 → L22.1 (naranja en la figura): ≈ 9 mm² de cobre fuera de los pads. 6. **In1 e In2 limpios debajo del nodo SW y de L22.** Hoy pasan por ahí: - `/I2C_SDA` por In1 y `/I2C_SCL` por In2; - `/MAIN5V` por In1 en x = 178.4; - `/VFB_BST` por In1 en x = 177.2. Los dos últimos se van solos al mover R53 y R54. 7. **4 vías de GND a ≤ 1 mm del ánodo de D34** (verdes en la figura): (178.55, 117.6), (178.55, 118.9), (183.45, 117.6) y (183.45, 118.9). 8. **`/VEH5V` sale de L22.2 por arriba, bajo el cuerpo de la bobina** (azul en la figura). - 2 mm de ancho, por y = 116–118, hasta R51.1; ahí sigue el camino de hoy hacia RS1. - Hay que recorrer la vía de GND de (185.8, 115.5). **Metas corregidas del bloque A.** Las del plan no se pueden cumplir con D34 en SMC y esta bobina. Ya las cambié en el [plan](v6-plan-fines-de-semana.md#31-fuente-u25-bloque-a). | | Plan del 16-oct | Corregida | Con la propuesta α | Hoy | |---|---|---|---|---| | Cátodo de D34 al pin 8 (orilla a orilla) | 2–3 mm | **≤ 3.5 mm** | 3.4 mm | 13.0 mm | | L22.1 al pin 8 (orilla a orilla) | ≤ 5 mm | **≤ 9 mm** | 8.7 mm | 2.2 mm | | Cobre del nodo SW | ≤ 25 mm² en total | **≤ 10 mm² fuera de los pads** | ≈ 9 mm² | 11.6 mm² | | Lazo por centros de pad (C150 → U25 → D34) | < 30 mm² | **≤ 60 mm²** | 56–60 mm² | 115 mm² | - **Por qué cambian.** Los pads del nodo SW ya suman 33 mm²: el de L22 solo mide 23. Ninguna colocación baja de 25 mm² en total. - **El lazo real es menor que el que se mide por centros de pad.** Con In1 como tierra sólida debajo (después del paso 6), a 0.21 mm de F.Cu, el retorno corre justo debajo del camino de ida (igual que en la V5.7, D-21-2). Lo que cuenta es que la ida sea corta y que haya vías de GND en el ánodo de D34 y en C149/C150. ### 3.2 Barrenos 1. **MH8 (195.2, 135.3):** ✅ ya quedó con T39 (22-oct). D34 salió de ahí y se borraron las 2 vías de GND de (194.6, 133.7) y (196.2, 133.7): 0 errores en MH8. 2. **MH4 (185.2, 90.3):** ✅ ya quedó con T40 (22-oct, tarde; [§7](#7-t40-22-oct-tarde-mh4-libre)). Lo que pedía el plan: - `/NTC` (In2) a ≥ 2.5 mm del centro: ✅ pasa a 2.55 mm del centro, 0.95 mm de la orilla del barreno; - `/SIM_RST`, `/SIM_CLK`, `/SIM_DATA` y la pista GND fuera del círculo de 4 mm: ✅ en F.Cu y B.Cu solo queda GND; - D23, D24 y D25 junto a J14 y sus resistencias de 22 Ω: **no**. Salieron del barreno, pero se quedan del lado del módem. Lo decide Leo (D-22-4, [§7.2](#72-las-tvs-de-la-sim-se-quedan-del-lado-del-modem-d-22-4)). 3. **MH6 (65.2, 135.3):** ✅ ya quedó con T38. 4. **No mover los barrenos:** MH4–MH6 son los de la placa base de la V5.5, y MH7 y MH8 son las esquinas de la v6. ### 3.3 Cierre **B** y DRC con «Rellenar zonas» y «Comprobar paridad»: 0 sin conectar y ningún error, salvo los encimes de courtyard que son solo de margen. Esos se excluyen **al final, cuando ya no se muevan las piezas**. En la ventana del DRC: clic derecho → *Excluir esta violación*, con el comentario «T38: solo margen, hueco X mm». La lista está en el [§5](#5-t38-21-oct-noche-courtyards-mh6-y-regla-de-barrenos). KiCad solo acepta la exclusión con la posición exacta del marcador, y esa solo la da su ventana: por eso no la puse con el script. Commit y push con el bloque en el mensaje. ## 4. Calendario El paso del sábado 24 a las 8:00 (Leo corre T25 y T28) ya está hecho, y también MH6, MH8, la colocación del bloque A (T39) y MH4 (T40). Lo demás del [plan de fines de semana](v6-plan-fines-de-semana.md) sigue igual: - sábado 24: lo que queda del bloque A (Rig1 y `/24V`), el bloque B y, si Leo elige la opción (b) de D-22-4, las TVS de la SIM junto a J14; - domingo 25: bloques C, D y E; - entre semana: T29; - lunes 2-nov: pedido del piloto. ## 5. T38 (21-oct, noche): courtyards, MH6 y regla de barrenos Script: `kicad/tools/t38_v6_courtyards_mh.py`. No mueve piezas. ### 5.1 Courtyards Las 8 huellas de `Drogheda-v6.pretty` que vienen de easyeda2kicad traían como courtyard solo el contorno del cuerpo, con los pads afuera. En L22 ni siquiera era un rectángulo: era un triángulo. El DRC solo revisa encimes con el courtyard, así que en esas 11 piezas no podía ver nada. Courtyard nuevo: el rectángulo que cubre cuerpo y pads, más 0.25 mm. Es el margen IPC-7351 nominal, el mismo de las huellas de KiCad del resto de la tarjeta. Se cambió en la tarjeta y en la biblioteca: *Actualizar huella desde biblioteca* ya no lo deshace, y no aparece ningún aviso nuevo de «no coincide con la biblioteca» en la v6. | Huella (`Drogheda-v6`) | Piezas | Courtyard de antes | Ahora | |---|---|---|---| | SO-8_L4.9-W3.9-P1.27-LS6.0-BL-EP | U20, U25 | 5.0 × 4.0 mm, sin los pads | 5.5 × 8.1 mm | | IND-SMD_L13.5-W12.5 | L22 | triángulo | 15.5 × 13.0 mm | | LGA-124_L24.0-W24.0 (A7670) | U19 | 24 × 24 mm | 26.5 × 26.5 mm | | VSSOP-8_L2.1-W2.4 | U23, U24 | 2.0 × 2.3 mm | 2.5 × 4.4 mm | | SMA_L4.4-W2.6 | D22 | 4.3 × 2.5 mm | 6.7 × 3.0 mm | | SOD-923 | D27 | 0.8 × 0.6 mm | 2.1 × 1.1 mm | | RF-SMD_FRF05002 (U.FL) | J12, J13 | 2.6 × 2.85 mm, sin los pads de GND | 4.5 × 4.15 mm | | LGA-12_L2.0-W2.0 | U26 | 2.0 × 2.0 mm | 2.8 × 2.8 mm | **Lo que destapó: 14 encimes de courtyard.** Medí el hueco físico entre cuerpo y pads de cada par: | Par | Hueco físico | Qué es | |---|---|---| | L22 – C153 | **−0.3 mm** | **real:** C153 (1210) queda debajo del cuerpo de L22. La propuesta α lo quita | | L22 – C154 | 0.30 mm | solo margen; con α desaparece | | U25 – C152 · R120 · R53 · C156 | 0.31 · 0.34 · 0.61 · 0.29 mm | solo margen; R53 se va con el bloque B | | U19 – Q20 · Q21 · TP8 · C126 | 0.65 · 0.76 · 0.33 · 0.44 mm | solo margen | | U20 – C129 | 0.29 mm | solo margen | | D22 – C130 | 0.45 mm | solo margen | | D27 – U28 | 0.45 mm | solo margen | | J12 – L21 | 0.44 mm | solo margen | Los de margen están bien para ensamblar: se excluyen al final (§3.3). **V5.6 y V5.7 no se tocaron.** Usan 2 y 4 de estas huellas: U7 y U26, y en la V5.7 también U25 y L22. - Con los courtyards nuevos solo tendrían encimes de margen: 1 en la V5.6 y 7 en la V5.7, con huecos de 0.40 a 0.56 mm. Lo revisé: no hay ninguno real. - Como la biblioteca cambió, su DRC ahora muestra **2 y 4 avisos de «no coincide con la biblioteca»**. Es solo el courtyard: no cambia nada de los Gerber. **No actualicen esas huellas antes de sacar sus Gerber.** ### 5.2 Regla de barrenos y plano `/3V3` Los 5 barrenos tienen máscara abierta de 6 mm en las dos caras. En la v6, B.Cu es el plano de `/3V3`, y llegaba a **1.85 mm del centro de los 5 barrenos**. Del lado de abajo quedaba cobre de 3.3 V desnudo entre 1.85 y 3 mm del centro, justo donde se apoya el separador, el inserto o la tuerca. Del lado de arriba, el cobre desnudo es GND, bajo la cabeza del tornillo. Con un inserto de latón o un separador metálico, el tornillo une las dos caras: **corto de 3.3 V a GND**. Regla nueva en `hbox-watchdog-v6.kicad_dru`: - En F.Cu y B.Cu no puede haber nada que no sea GND a menos de **4.0 mm del centro** de un barreno: 2.4 mm desde la orilla del agujero de 3.2 mm. - Al rellenar zonas, el plano `/3V3` se aparta solo. Lo comprobé en los 5 barrenos: queda a 4.0 mm. - El GND de F.Cu sigue a 1.85 mm, bajo la cabeza del tornillo, como en la V5.5. - Capas internas: la holgura normal de barreno, porque van cubiertas. - Además, el DRC ya marca todo lo que estorba en MH4: los 11 errores de la regla son de `/SIM_*`, D23 y D24. - Salen también 2 errores que no aparecían antes: los pads de GND de D23 (en MH4) y de D34 (en MH8) quedan encima del barreno. Ya estaban así. V5.6 y V5.7 no tienen este problema: su cobre de afuera es GND, y su `/3V3` va por In2, cubierto. ### 5.3 MH6 La pista `/3V3` que rodeaba el barreno por F.Cu quedaba a 3.02 mm del centro, en la orilla de la máscara abierta. Ahora baja a B.Cu con una vía en (61.6, 130.3) y llega a H4.1 por y = 130.3 y x = 69.5. Queda a **4.06 mm del centro** en lo más cercano, con 0.25 mm de holgura a la vía de GND de (70.4, 132.9). B.Cu ya es el plano `/3V3`, así que la pista nueva es parte de él. H4.1 sigue a 4.15 mm del centro; si la rondana no cabe, el plan ya dice correr H4 1 mm al este. ### 5.4 DRC con T38 | | Antes de T38 | Con T38 | |---|---|---| | Errores | 22 (14 MH4 · 8 MH8) | **52** (28 MH4 · 10 MH8 · 14 courtyards) | | Sin conectar | 0 | 0 | | Paridad | 19 PWR_FLAG | 19 PWR_FLAG | | Avisos | 262 | 262 (iguales, incluidos los 81 de «no coincide con la biblioteca») | Cuando quede la propuesta α, salen los 10 de MH8 y el de C153. Al liberar MH4 salen sus 28. Quedan solo los encimes de margen, que se excluyen. ## 6. T39 (22-oct): el bloque A por script Script: `kicad/tools/t39_v6_bloque_a.py`. - Requiere T38. - Antes de escribir revisa que ninguna de las piezas y pistas que toca se haya movido. - Si ya se aplicó, no hace nada. - Guarda un respaldo `.T39bak`. ![v6 con T39: el bloque A, la fuente U25, por script](img/2026-10-22_Drogheda_v6-T39-Bloque-A_v1.0.png) ### 6.1 Qué cambió | Qué | Antes (T38) | Con T39 | |---|---|---| | D34 (B560C, SMC) | (192.0, 132.5), en la esquina, con su pad de GND sobre MH8 | **(181.08, 121.75)**, girado 90°, cátodo abajo | | L22 (SRP1265A) | (185.6, 122.5) | **(192.18, 122.5)**, sin girar | | R53/R54 (divisor BSTFB del LTC4040) | (177.0, 125.7) y (175.4, 126.9), donde va el nodo SW | **(178.25, 109.6) y (178.25, 111.1)**, abajo de JP2 | | Nodo SW (`/SW_PWRIN`) | 7 pistas de 1.0 mm hasta la esquina | pin 8 → D34.K → L22.1 con **1.4 mm** por y = 124.4; C152.2 baja con 0.9 mm | | `/VEH5V` de L22.2 a R51.1 | diagonal de 1.0 mm | **2.0 mm** por arriba, bajo el cuerpo de L22 | | Vías de GND | 2 dentro de MH8 | 4 junto al ánodo de D34 · 1 más en C149 y otra en C150 (ya tienen 2 cada uno) · 1 para R54 · se borran las 2 de MH8 | | In1 e In2 bajo la fuente | `/VFB_BST` (24 mm) y `/MAIN5V` (15 mm) por In1 hasta R53/R54 · `/I2C_SDA` (In1), `/I2C_SCL` (In2) y la toma de 5 V de R121 (In1) bajo L22 | **sin pistas.** `/VFB_BST` y `/MAIN5V` se borran porque R53/R54 se fueron. SDA, SCL y la toma de R121 van por B.Cu, abajo de los dos planos de GND. SCL se rehízo por dentro de SDA para que no se crucen | **Cómo se conectan R53/R54:** - R53.1 toma `/MAIN5V` de la vía de JP2.1. - R53.2 y R54.1 llegan a la vía de `/VFB_BST` de (181.81, 109.54), que ya iba por In1 a U6.10 y U6.18. - R54.2 baja a una vía de GND nueva. - Las referencias de D34, R53 y R54 en serigrafía se reacomodaron para no caer sobre pads ni sobre otras referencias. ### 6.2 Metas del bloque A | Paso del plan | Meta (rev. 1.3) | Con T39 | Antes | |---|---|---|---| | 1 · cátodo de D34 al pin 8 (orilla a orilla) | ≤ 3.5 mm | **3.52 mm** | 13.0 mm | | 1 · L22.1 al pin 8 | ≤ 9 mm | **8.79 mm** ✅ | 2.2 mm | | 1 · cobre del nodo SW fuera de los pads | ≤ 10 mm² | **9.8 mm²** ✅ | 11.6 mm² | | 1 · lazo por centros de pad C150 → U25 → D34 | ≤ 60 mm² | **60.8 mm²** (56.5 con C149) | 114.6 mm² | | 1 · In1/In2 bajo el nodo SW y L22 | sin pistas | **sin pistas** ✅ (el script lo revisa) | 4 redes | | 2 · `/VIN_PROT` de C149 y C150 al pin 2 | ≤ 2 mm | C149 0.75 mm ✅ · C150 2.31 mm | igual | | 2 · tierra de C149, C150 y D34 en una sola isla de F.Cu | sin cuellos < 1 mm | **una sola isla** ✅; el EP de U25 se une por cuellos de < 1 mm | 3 islas | | 3 · vías de GND | EP 6 · ánodo ≥ 4 · C149/C150 ≥ 2 | 6 · **4** · 2 y 2 ✅ | 6 · 2 (dentro de MH8) · 1 y 1 | | 4 · toma de 5 V de R121 por pista propia, lejos del nodo SW | sí | por B.Cu ✅ | por In1, bajo L22 | | 5 · Rig1 a ≤ 3 mm de P1.3 | ≤ 3 mm | 4.79 mm ❌ (no lo toca T39) | 4.79 mm | | 6 · `/24V` sin montar (rama de Q10) | borrarlo | sigue: hay que decidirlo en el esquemático | igual | **Dos medidas quedan apenas arriba de la meta.** Las dejo así: - **El cátodo, 0.02 mm de más.** D34 se corrió 0.08 mm al este para que su courtyard no encime al de C152. Para bajar de 3.5 mm habría que regresarlo, y entonces sí encimaría. Entre la orilla de U25 y el mínimo de 0.5 mm a la orilla de la tarjeta, C152, D34 y L22 caben justos, sin margen. - **El lazo con C150, 0.8 mm² de más.** Con C149, que es la que está pegada al pin 2, mide 56.5. Con In1 como tierra sólida a 0.21 mm debajo, lo que cuenta es otra cosa: que la ida sea corta y que haya vías de GND en el ánodo de D34 y en C149/C150. Las dos se cumplen. **El EP de U25 no puede unirse a esa isla con cobre de 1 mm.** Entre los pines de U25 y C152 (BOOT y SW, clase HV24) no cabe el paso. Su retorno va por sus 6 vías a In1, que ya no tiene cortes debajo de la fuente. ### 6.3 Por qué pistas y no zona Primero hice el nodo SW y la salida de L22 como zonas de F.Cu con prioridad 5. Funcionaban, pero cualquier zona de F.Cu con prioridad mayor que la tierra cambia el relleno de **toda** la tierra de F.Cu en KiCad 10: - el archivo crece 0.7 MB (de ≈ 40 000 a ≈ 65 000 puntos en el relleno); - salen 2 errores de alivio térmico lejos de aquí, en J11.B12 y U26.1. Con pistas anchas el relleno de la tierra queda como estaba (lo comprobé: sin las zonas no aparece ninguno de los dos). **Regla para la v6:** no agregar zonas de F.Cu con prioridad sobre la tierra sin revisar el DRC de toda la tarjeta. ### 6.4 DRC con T39 | | Con T38 | Con T39 | |---|---|---| | Errores | 52: ≈ 29 de MH4 · 9 de MH8 · 14 encimes (3 reales) | **44: ≈ 33 de MH4 · 11 encimes de margen** | | Sin conectar | 0 | 0 | | Paridad | 19 PWR_FLAG | 19 PWR_FLAG | | Avisos | 262 | 254 | KiCad 10.0.4, `pcb drc --schematic-parity --refill-zones --severity-all --all-track-errors`. - **Se van:** - los 15 de MH8: 8 de holgura, 4 de barreno a barreno, D34 dentro del barreno y 2 de serigrafía; - los 3 encimes reales: C153 y C154 con L22, y R53 con U25; - 2 avisos de ancho de `/MAIN5V`; - la serigrafía de L22 sobre C153. - **Aviso nuevo, uno:** la pista de `/MAIN5V` de 0.3 mm de la vía de JP2.1 a R53.1. La regla de PWR_HI pide 1 mm, pero por ahí pasan microamperes y junto a `/VEH5V` no cabe más ancho. - **MH4 cambia entre corridas:** en dos corridas del mismo archivo, KiCad reporta entre 29 y 34 errores. Lo que cambia es qué pares reporta, no lo que está mal. Fuera de MH4, la v6 con y sin T39 difiere solo en lo de arriba. - **Los 11 encimes que quedan ya estaban y son de margen:** - U19 con Q20, Q21, TP8 y C126; - U25 con C152, R120 y C156; - U20 con C129, D22 con C130, D27 con U28 y J12 con L21. Se excluyen al cerrar el layout (pendiente `t-v6-excluir-margen`). ### 6.5 Cómo se probó y lo que queda a la vista **Prueba.** - Copia de `b74b96f` en la Mac, con su `.kicad_pro`, `.kicad_dru`, esquemático y bibliotecas. T39 en la copia, y DRC de la copia contra la v6 sin T39. - Antes de escribir, el script revisa: - la holgura de todo lo nuevo o movido contra el cobre de las otras redes, con las reglas de HV24; - la regla de 4 mm de los barrenos; - que In1 e In2 queden limpios bajo la fuente; - que no se pierdan UUIDs. La holgura más justa de lo nuevo es de 0.15 mm, la mínima. Es la que ya tenía el tramo de `/I2C_SCL` por In2 que se conserva, contra una vía de GND. - **Conectividad.** Las 8 redes que toca (`/SW_PWRIN`, `/VEH5V`, `/VFB_BST`, `/MAIN5V`, `/I2C_SDA`, `/I2C_SCL`, `/BOOT_PWRIN` y `/VIN_PROT`) siguen en un solo grupo cada una. - **Aplicación.** Se aplicó a la v6 de HBox_PCB y se rellenó con `kicad-cli`, con el proyecto al lado. El archivo es idéntico, byte por byte, a la copia probada (`97ea7e45`). - **Regla D-22-3** de la [auditoría final del 22-oct](auditoria-final-22oct.md) (hallazgo P-1): el `.kicad_pcb` sube con el relleno fresco. - La regla pide rellenar en el GUI. `kicad-cli` con el `.kicad_pro` al lado da el mismo relleno: lo comprobé en la V5.6 y la V5.7, cuyos Gerber así rellenados salen idénticos a los del Fabrication Toolkit. - Abrir la v6, B y guardar no debería cambiar el cobre. **Lo que queda a la vista:** 1. **R53/R54** quedaron a 3.4 mm de U6.10 y a 6–7 mm de U6.18. La meta del bloque B (paso 6) es ≤ 3 mm de U6.18. La toma de U6.18 sigue por la vía de In1 que ya existía, de 0.25 mm debajo de U6, y esa pista también es del bloque B. 2. **L22.2 quedó a 0.53 mm de la orilla de la tarjeta** (mínimo 0.5) y el cuerpo de L22 a 1.26 mm. **Hay que revisar la pared de la HBOX** antes del sábado. 3. **Rig1 y el `/24V` sin montar** (pasos 5 y 6 del bloque A) siguen como estaban. 4. **Michelle:** al abrir la v6, revisar el bloque A y ajustar lo que no le guste. En ese bloque el DRC ya está limpio. ## 7. T40 (22-oct, tarde): MH4 libre Script: `kicad/tools/t40_v6_mh4.py`. - Requiere T39. - Antes de escribir revisa que ninguna de las piezas y pistas que toca se haya movido. - Si ya se aplicó, no hace nada. - Guarda un respaldo `.T40bak`. ![v6 con T40: el barreno MH4 libre](img/2026-10-22_Drogheda_v6-T40-MH4_v1.0.png) ### 7.1 Qué cambió | Qué | Antes (T39) | Con T40 | |---|---|---| | D23 (TVS de `/SIM_DATA`) | (182.7, 90.5): su pad de GND quedaba dentro del barreno y el de `/SIM_DATA` a 3.6 mm del centro | **(179.25, 87.0)**, girado 90°, debajo de U19.31: `/SIM_DATA` llega directo del pin (1.95 mm; antes 7.5 mm de pista) | | D24 (TVS de `/SIM_CLK`) | (182.7, 88.5), con el barreno dentro de su courtyard | **(188.15, 87.6)**, girado 90°, entre la vía de `/SIM_CLK` y R129/R133 | | D25 (TVS de `/SIM_RST`) | (182.7, 86.5) | **no se mueve** | | `/SIM_CLK` | por F.Cu en y = 87.75, a 2.55 mm del centro y dentro de la máscara abierta | baja a **In1** junto a U19.32 y corre en y = 86.7 hasta una vía entre D24 y R129 | | `/SIM_RST` | por F.Cu en y = 87.25 hasta una vía a 3.94 mm del centro (regla 4.0) | sale de D25 por **F.Cu en y = 85.95**, por arriba de D25 (a 4.2 mm del centro), hasta una vía nueva en (187.05, 85.95); la diagonal de In1 se acorta 0.42 mm | | `/NTC` (In2) | en y = 89.7: **cruzaba por dentro del barreno** | dobla antes, en (179.8, 87.5), y pasa en y = 87.5: a 0.95 mm de la orilla del barreno | | Pines 92 y 94 de U19 (GND) | al relleno de F.Cu y a la vía de (183.0, 85.5) | pista de GND de 0.25 mm en y = 85.35, bajo U19.93, y **vía nueva en (186.6, 84.6)** | | Vías de GND de las TVS | ninguna propia | D23 a 0.8 mm · D24 a 1.1 mm · D25 a 2.3 mm, con pista directa | | Referencias en serigrafía | D23 y D24 dentro de la máscara de MH4 | D23 a la izquierda de D23, D24 arriba de D24; la de R129 (DNP) pasa a la derecha de R129 para no caer sobre D24 | **Por qué los pines 92 y 94 necesitan su pista.** `/SIM_RST` tiene que pasar entre la fila de pines de U19 y D25: más abajo entra en los 4 mm de MH4. El canal que queda (0.8 mm) es muy angosto para el relleno de GND, que pide 0.5 mm de alivio, 0.3 mm de holgura y 0.25 mm de cobre. Sin la pista nueva, los pines 92 y 94 se quedan sin tierra. Por eso también se borró la vía de GND de (183.0, 85.5), que estorbaba a `/SIM_RST`. **Holguras más justas de lo nuevo** (regla 0.15 mm): - `/SIM_RST` a D25.2: 0.20 mm; - la pista de GND a U19.93 (BT_ANT, sin conectar): 0.225 mm; - la vía de GND de D23 a `/CHRG_FAULT` (In1): 0.23 mm; - `/NTC` a las vías de `/SIM_CLK` y de D25: 0.25 mm. ### 7.2 Las TVS de la SIM se quedan del lado del módem (D-22-4) El plan (L-38, por B-09 del 28-sep) pide **D23–D25 junto a J14**. T40 no lo hace: las saca del barreno, pero las deja junto a U19 (D23 y D25) y junto a R129/R133 (D24). - **Por qué no.** En el esquemático, D23–D25 están en `/SIM_DATA`, `/SIM_CLK` y `/SIM_RST`, del lado del módem de las resistencias de 22 Ω. R133 y R134 (las de `/SIM_CLK` y `/SIM_DATA`) están junto a U22, a 13–24 mm de pista de J14, así que esas dos redes no llegan al zócalo. Ponerlas ahí pide una de dos: - mover también R133 y R134 junto a J14, y volver a rutear las redes; - o cambiar las TVS a `/SIMB_*` en el esquemático. - **Qué protege hoy.** Una descarga en el zócalo recorre **27–41 mm de pista**, y pasa por la resistencia de 22 Ω, antes de llegar a la TVS: 28.6 mm en DATA, 27.1 en CLK y 40.6 en RST (antes de T40: 34.1, 32.2 y 41.2). El módem queda protegido, pero el pico entra a la tarjeta y la resistencia lo aguanta completo. - **Por qué importa.** El 28-sep se dijo que no hacía falta un arreglo de ESD para `/SIM_VDD` porque la SIM se pone una vez, dentro del gabinete, **y** porque D23–D25 iban a quedar junto a J14. La segunda razón ya no se cumple. **D-22-4 (decide Leo):** - **(a) Se quedan así.** No cuesta nada más y el módem queda protegido. - **(b) Recomendada: TVS del lado del zócalo.** D23–D25 pasan a `/SIMB_DATA`, `/SIMB_CLK` y `/SIMB_RST`, pegadas a los pines de J14 y cada una con su vía de GND. Son las mismas piezas: el BOM no cambia. Es un cambio chico de esquemático, más la colocación. Claude lo puede hacer como T41 (esquemático y tarjeta por script), o Michelle el sábado. Recomiendo (b): la SIM se pone a mano, en el taller o en el sitio, casi siempre sin pulsera antiestática, y un módem dañado es una vuelta al sitio. La TVS tiene que quedar donde entra la descarga. ### 7.3 DRC con T40 | | Con T39 (misma corrida) | Con T40 | |---|---|---| | Errores | 43: 13 de holgura de barreno · 17 de máscara · 2 de barreno en courtyard · 11 encimes de margen | **11**: los encimes de margen | | Sin conectar | 0 | 0 | | Paridad | 19 PWR_FLAG | 19 PWR_FLAG | | Avisos | 254 | 249 (5 menos de serigrafía sobre la máscara de MH4) | KiCad 10.0.4, `pcb drc --schematic-parity --refill-zones --severity-all --all-track-errors`. En esta corrida, la v6 con T39 dio 13 errores de holgura de barreno en MH4. En la del §6.4 dio 14: el número cambia de una corrida a otra. - **Se van 37 violaciones y no entra ninguna.** Son todas las de MH4: holgura de barreno y regla T38, máscara, barreno en el courtyard de D23 y D24, y la serigrafía de D23 y D24. - **El relleno solo cambia junto a MH4.** Fuera de una ventana de 29 × 24 mm alrededor del barreno, los rellenos de las 4 capas son idénticos a los de T39. - **Conectividad.** `/SIM_CLK`, `/SIM_RST`, `/SIM_DATA`, `/SIM_VDD` y `/NTC` siguen en un solo grupo cada una. Los pines 29, 92 y 94 de U19 y los pads de GND de las tres TVS quedan unidos a GND: 0 sin conectar y ningún alivio térmico incompleto. ### 7.4 Cómo se probó y lo que queda a la vista **Prueba.** - Copia de la v6 con T39 (`97ea7e45`) en la Mac, con su `.kicad_pro`, `.kicad_dru`, esquemático y bibliotecas. T40 en la copia, y DRC de la copia contra la v6 sin T40. - Antes de escribir, el script revisa: - la holgura de todo lo nuevo, movido o acortado contra el cobre de las otras redes; - en todas las capas, 0.25 mm de la orilla del barreno, y la regla de 4 mm en las caras; - que dentro de 4 mm de MH4, en las caras, ya no quede nada que no sea GND; - que los courtyards de D23 y D24 no se encimen con nadie ni encierren un barreno; - que no se pierdan UUIDs. - **Aplicación.** Se aplicó a la v6 de HBox_PCB y se rellenó con `kicad-cli`, con el proyecto al lado (regla D-22-3). El archivo es idéntico, byte por byte, a la copia probada (`a273d44c`). **Lo que queda a la vista:** 1. **D-22-4:** las TVS junto a J14 ([§7.2](#72-las-tvs-de-la-sim-se-quedan-del-lado-del-modem-d-22-4)). 2. **D25 quedó con su vía de GND a 2.3 mm** (antes había una a 1.25 mm, por el relleno). Ahora llega por una pista directa de 0.4 mm. Más cerca no cabe: arriba pasa `/SIM_RST` y abajo, en In1/In2, `/SIM_CLK` y `/NTC`. 3. **`/SIM_CLK` suma 8.7 mm por In1**, que es plano de tierra. Corre entre el GND de F.Cu y el de In2, y encima, en F.Cu, solo hay pistas de la SIM y de GND. 4. **La pista de GND bajo U19.93** (BT_ANT, sin usar) queda a 0.225 mm de su pad, bajo máscara. ## Cómo se hizo - **Archivos:** - HBox_PCB `9255b84` (Michelle, 21-oct 18:14) contra `00a9af4` (19-oct). - Para T39: `b74b96f` (22-oct 09:42). - Para T40: la v6 con T39 (`97ea7e45`, commit `d5f5002`). - El esquemático de la v6 no cambió desde el 28-sep (`d58a89ba…`). - **Scripts:** primero en una copia y luego en los archivos de HBox_PCB. Los respaldos `.T25bak`, `.T28bak`, `.T38bak`, `.T39bak` y `.T40bak` no se suben. - `kicad/tools/t25_mounting_holes_v55.py --set v6`; - `kicad/tools/t28_v6_mecanicos.py`; - `kicad/tools/t38_v6_courtyards_mh.py`; - `kicad/tools/t39_v6_bloque_a.py`; - `kicad/tools/t40_v6_mh4.py`. - **DRC:** KiCad 10.0.4, `pcb drc --schematic-parity --refill-zones --severity-all`, con el `.kicad_dru` del proyecto. - **Medidas:** - El script de la auditoría del 16-oct sobre el cobre rellenado: distancias, series de cobre, vías por red y por EP, y lazo por centros de pad. - La prueba Kelvin de RS1, con el área del pad recortada. - Para T38: barrido de pads fuera de courtyard en todas las huellas (solo esas 11 fallaban), hueco físico de cada encime y distancia de cada zona rellenada al centro de cada barreno. - **Propuesta α:** colocación probada en una copia: courtyards, pads a otras redes, orilla de la tarjeta y la regla de 4 mm. El cobre del nodo SW y de `/VEH5V` de la figura es un dibujo de la idea; el ruteo lo hace Michelle.