Pasada 3 rev C: T27 (pasos 1 y 2), docs y figura de RS1
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01QCy5VHMVLkAmftYM6swWmx
This commit is contained in:
parent
8adab008f8
commit
8c405ea7d3
@ -4,8 +4,8 @@ tags: [project-drogheda, hardware, hbox, einarboard, v5.6, v5.7, v6, auditoria,
|
|||||||
project: Project Drogheda
|
project: Project Drogheda
|
||||||
author: Helgen Technologies (auditoría: Claude; revisión: Leo)
|
author: Helgen Technologies (auditoría: Claude; revisión: Leo)
|
||||||
date: 2026-10-16
|
date: 2026-10-16
|
||||||
version: 1.0
|
version: 1.1
|
||||||
status: ACTIVO — sustituye a la auditoría del 13-oct (V5.6) y a la guía de colocación V5.7 del 14-oct
|
status: ACTIVO — rev. C (16-oct, 14:00): MH11 se quita; pasos 1 y 2 con el script T27 · sustituye a la auditoría del 13-oct (V5.6) y a la guía de colocación V5.7 del 14-oct
|
||||||
audience: Leo, Michelle (layout), Jesús (banco), Aldair (fabricación), Adriana (PM)
|
audience: Leo, Michelle (layout), Jesús (banco), Aldair (fabricación), Adriana (PM)
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -45,12 +45,12 @@ audience: Leo, Michelle (layout), Jesús (banco), Aldair (fabricación), Adriana
|
|||||||
| Entrada de alimentación | 24 V → Mean Well SD-15B-05 externa → P2 (5 V) | igual | **fuente a bordo** U25 TPS54360B (5.32 V); sin P2 ni U2 | fuente a bordo (U25) |
|
| Entrada de alimentación | 24 V → Mean Well SD-15B-05 externa → P2 (5 V) | igual | **fuente a bordo** U25 TPS54360B (5.32 V); sin P2 ni U2 | fuente a bordo (U25) |
|
||||||
| Rango de entrada | 18–28 V | 18–28 V (SD-15B 18–36 V; U2 del ventilador 28 V máx.) | **9–32 V** (§5) | 9–32 V (mismo bloque) |
|
| Rango de entrada | 18–28 V | 18–28 V (SD-15B 18–36 V; U2 del ventilador 28 V máx.) | **9–32 V** (§5) | 9–32 V (mismo bloque) |
|
||||||
| Respaldo y carga | LTC4040, carga 2.4 A programada (Li-ion) | LTC4040, LFP, carga 1.4 A | igual que V5.6 | igual en esquemático; **en el PCB: JP2 en Li-ion y R52 sin GND** |
|
| Respaldo y carga | LTC4040, carga 2.4 A programada (Li-ion) | LTC4040, LFP, carga 1.4 A | igual que V5.6 | igual en esquemático; **en el PCB: JP2 en Li-ion y R52 sin GND** |
|
||||||
| Límite de entrada real (§4) | ≈ 1 A (diseño 3.1 A) | ≈ 1 A (diseño 2.5 A) | ≈ 1 A | por corregir (L-19) |
|
| Límite de entrada real (§4) | ≈ 1 A (diseño 3.1 A) | ≈ 1 A (diseño 2.5 A) → 2.5 A con T27 | ≈ 1 A → 2.5 A con T27 | por corregir (L-19) |
|
||||||
| Corte de 10 s en batería (§9) | ❌ el módem no arranca en frío sobre el boost | ✅ diseño · ❌ firmware · ❌ banco | igual que V5.6 | ✅ esquemático · ❌ PCB · ❌ firmware |
|
| Corte de 10 s en batería (§9) | ❌ el módem no arranca en frío sobre el boost | ✅ diseño · ❌ firmware · ❌ banco | igual que V5.6 | ✅ esquemático · ❌ PCB · ❌ firmware |
|
||||||
| Ethernet (W5500 + J10) | solo build de banco `-eth` | hardware igual al de V5.5 (+ pull-down de reset); J10.8 al aire, LED de actividad invertido; sin firmware de campo | igual | esquemático corregido; PCB no |
|
| Ethernet (W5500 + J10) | solo build de banco `-eth` | hardware igual al de V5.5 (+ pull-down de reset); J10.8 al aire, LED de actividad invertido; sin firmware de campo | igual | esquemático corregido; PCB no |
|
||||||
| RS-485 / RS-232 | solo prueba de presencia de U10 | hardware con 3 defectos (§10); firmware 0 % | igual | esquemático corregido (U32, D39, R147); PCB no; firmware 0 % |
|
| RS-485 / RS-232 | solo prueba de presencia de U10 | hardware con 3 defectos (§10); firmware 0 % | igual | esquemático corregido (U32, D39, R147); PCB no; firmware 0 % |
|
||||||
| Acelerómetro | — | ✅ U26 SC7A20 (0x18, INT1 → PB9) | ✅ U26 (INT1 por In1 bajo el MCU) | ✅ U26 |
|
| Acelerómetro | — | ✅ U26 SC7A20 (0x18, INT1 → PB9) | ✅ U26 (INT1 por In1 bajo el MCU) | ✅ U26 |
|
||||||
| Barrenos de la V5.5 (3 de caja + 3 ArduSimple + 1 abrazadera) | 7 | ❌ 0 de 7 | ❌ 0 de 7 | ⚠ 2 de 3 de caja + 2 nuevos en esquinas; se borran con «Actualizar PCB» |
|
| Barrenos de la V5.5 (3 de caja + 3 ArduSimple; la V5.5 lleva además MH11, abrazadera) | 7 | ✅ 6 restaurados el 16-oct; MH11 se quita (T27) | ✅ 6 restaurados el 16-oct; MH11 se quita (T27) | ⚠ la actualización del 16-oct los borró; se reponen con `--set v6` |
|
||||||
| Corriente por capas internas | sí | casi limpio: 7.8 mm de `/BAT_PLUS` en In2 | ❌ como la V5.5 | ❌ (`/BAT_PLUS`, `/SW_BAT` 0.5 mm, RF LTE por In1) |
|
| Corriente por capas internas | sí | casi limpio: 7.8 mm de `/BAT_PLUS` en In2 | ❌ como la V5.5 | ❌ (`/BAT_PLUS`, `/SW_BAT` 0.5 mm, RF LTE por In1) |
|
||||||
| DRC con paridad | — | 0 errores · 0 sin conectar · paridad OK · 6 cobres sueltos | 0 · 0 · paridad OK · 1 vía suelta | 0 · 0 · **70 diferencias de paridad** · 147 avisos de ancho |
|
| DRC con paridad | — | 0 errores · 0 sin conectar · paridad OK · 6 cobres sueltos | 0 · 0 · paridad OK · 1 vía suelta | 0 · 0 · **70 diferencias de paridad** · 147 avisos de ancho |
|
||||||
| Firmware | 0.6.0 CAMPO · 0.6.3 banco | 0.7.0 (`board_v56.h`) **no existe** | el mismo 0.7.0 (mismos pines de MCU que V5.6) | 0.7.x (`board_v6.h` + NTRIP en el MCU) **no existe** |
|
| Firmware | 0.6.0 CAMPO · 0.6.3 banco | 0.7.0 (`board_v56.h`) **no existe** | el mismo 0.7.0 (mismos pines de MCU que V5.6) | 0.7.x (`board_v6.h` + NTRIP en el MCU) **no existe** |
|
||||||
@ -69,7 +69,7 @@ Las correcciones de layout, con coordenadas, están en **[Pasada 3 para Michelle
|
|||||||
| 4a · Ethernet | ⚠ Hardware funcional con 2 defectos menores; falta el modo de campo en firmware (§10) | ⚠ Igual | ⚠ Esquemático corregido; PCB con J10 cruzado |
|
| 4a · Ethernet | ⚠ Hardware funcional con 2 defectos menores; falta el modo de campo en firmware (§10) | ⚠ Igual | ⚠ Esquemático corregido; PCB con J10 cruzado |
|
||||||
| 4b · RS-232 y RS-485 | ⚠ Hardware con 3 defectos (el RS-485 ocupa el bus después de cada reset); firmware 0 % | ⚠ Igual | ⚠ Esquemático corregido; PCB no; firmware 0 % |
|
| 4b · RS-232 y RS-485 | ⚠ Hardware con 3 defectos (el RS-485 ocupa el bus después de cada reset); firmware 0 % | ⚠ Igual | ⚠ Esquemático corregido; PCB no; firmware 0 % |
|
||||||
| 5 · Acelerómetro | ✅ Hardware; falta el driver | ✅ Hardware (INT1 por In1); falta el driver | ✅ Hardware; falta el driver |
|
| 5 · Acelerómetro | ✅ Hardware; falta el driver | ✅ Hardware (INT1 por In1); falta el driver | ✅ Hardware; falta el driver |
|
||||||
| 6 · Barrenos de la V5.5 | ❌ Faltan los 7; al ponerlos, la broca corta `/MODEM_RST_MCU` y cae sobre R107 | ❌ Faltan los 7; además cortarían `/24V`, `/I2C_SCL` y LEDs RGB | ⚠ Falta el del centro derecho y los que tiene se borrarían |
|
| 6 · Barrenos de la V5.5 | ✅ Restaurados (16-oct); MH11 se quita y `/CHRG_STAT` se aparta de MH10 con T27 | ✅ Restaurados y liberados (16-oct); MH11 se quita con T27 | ⚠ La actualización del 16-oct los borró: se reponen con `--set v6` y hay que liberar MH4 |
|
||||||
|
|
||||||
## 3. Barrenos: los 7 de la V5.5 de producción
|
## 3. Barrenos: los 7 de la V5.5 de producción
|
||||||
|
|
||||||
@ -83,14 +83,14 @@ Fuente de verdad: Gerbers de producción de la V5.5 (`HBOX_v5_PROD.zip`, 21-ago:
|
|||||||
| MH7 | ArduSimple (poste M2.5) | 2.75 mm | = barreno | (76.63, 129.90) |
|
| MH7 | ArduSimple (poste M2.5) | 2.75 mm | = barreno | (76.63, 129.90) |
|
||||||
| MH9 | ArduSimple | 2.75 mm | = barreno | (77.90, 81.64) |
|
| MH9 | ArduSimple | 2.75 mm | = barreno | (77.90, 81.64) |
|
||||||
| MH10 | ArduSimple | 2.75 mm | = barreno | (128.70, 96.88) |
|
| MH10 | ArduSimple | 2.75 mm | = barreno | (128.70, 96.88) |
|
||||||
| MH11 | abrazadera del disipador | 2.75 mm | = barreno | (170.39, 83.80) |
|
| MH11 | abrazadera del disipador — **solo V5.5; en V5.6/V5.7 se quita** (Leo, 16-oct) | 2.75 mm | = barreno | (170.39, 83.80) |
|
||||||
|
|
||||||
!!! warning "MH4 va en x = 185.2, no en 193.2"
|
!!! warning "MH4 va en x = 185.2, no en 193.2"
|
||||||
En la V5.5 la huella de MH4 tenía el ancla en (193.2, 90.3) y el barreno desplazado −8 mm; el barreno real (Gerber) está en **(185.2, 90.3)**. El plan de corrección de la v6 (G-01 / L-40) pide «MH4 en (193.2, 90.3)»: esa es la coordenada del ancla, no del barreno. Con 193.2 el tornillo no entra en la placa base.
|
En la V5.5 la huella de MH4 tenía el ancla en (193.2, 90.3) y el barreno desplazado −8 mm; el barreno real (Gerber) está en **(185.2, 90.3)**. El plan de corrección de la v6 (G-01 / L-40) pide «MH4 en (193.2, 90.3)»: esa es la coordenada del ancla, no del barreno. Con 193.2 el tornillo no entra en la placa base.
|
||||||
|
|
||||||
**Por qué se perdieron.** Los MH no tienen símbolo en el esquemático. Al pasar de V5.5 a V5.6, «Actualizar PCB desde esquemático» con «Eliminar huellas sin símbolo» los borró; la V5.7 salió de la V5.6 ya sin ellos.
|
**Por qué se perdieron.** Los MH no tienen símbolo en el esquemático. Al pasar de V5.5 a V5.6, «Actualizar PCB desde esquemático» con «Eliminar huellas sin símbolo» los borró; la V5.7 salió de la V5.6 ya sin ellos.
|
||||||
|
|
||||||
**Cómo se restauran.** Script `03-Architecture-Hardware/kicad/tools/t25_mounting_holes_v55.py` (lo corre Leo con KiCad cerrado; comandos en la [pasada 3](v56-v57-layout-pasada-3.md#0-antes-de-empezar-leo-10-min)). Mete los 7 como huellas **«No en el esquemático»** (fuera de BOM y de la lista de posiciones), así ya no los borra ningún «Actualizar PCB», y deja MH4 con el ancla sobre el barreno. Se probó en copias: KiCad los abre y el DRC muestra exactamente los choques de abajo.
|
**Cómo se restauran.** Script `03-Architecture-Hardware/kicad/tools/t25_mounting_holes_v55.py` (lo corre Leo con KiCad cerrado; comandos en la [pasada 3](v56-v57-layout-pasada-3.md#02-barrenos-con-el-script-t25-hecho-el-16-oct)). Mete los 7 como huellas **«No en el esquemático»** (fuera de BOM y de la lista de posiciones), así ya no los borra ningún «Actualizar PCB», y deja MH4 con el ancla sobre el barreno. Se probó en copias: KiCad los abre y el DRC muestra exactamente los choques de abajo.
|
||||||
|
|
||||||
**Lo que choca al ponerlos** (cobre que hoy está donde va el barreno):
|
**Lo que choca al ponerlos** (cobre que hoy está donde va el barreno):
|
||||||
|
|
||||||
@ -103,6 +103,14 @@ Fuente de verdad: Gerbers de producción de la V5.5 (`HBOX_v5_PROD.zip`, 21-ago:
|
|||||||
|
|
||||||
**La regla es la de la V5.5:** en su PCB de producción no hay ningún cobre que no sea GND, en ninguna capa, a menos de 3.1 mm del centro de MH4/MH5/MH6 ni a menos de 2.6 mm del centro de MH7/MH9/MH10/MH11. MH7, MH9 y MH10 quedan dentro del contorno de MOD1: es el ArduSimple y es por diseño (el DRC lo marca como «barreno dentro de courtyard»; se excluye).
|
**La regla es la de la V5.5:** en su PCB de producción no hay ningún cobre que no sea GND, en ninguna capa, a menos de 3.1 mm del centro de MH4/MH5/MH6 ni a menos de 2.6 mm del centro de MH7/MH9/MH10/MH11. MH7, MH9 y MH10 quedan dentro del contorno de MOD1: es el ArduSimple y es por diseño (el DRC lo marca como «barreno dentro de courtyard»; se excluye).
|
||||||
|
|
||||||
|
!!! success "Actualización 16-oct, 11:35"
|
||||||
|
**V5.6 y V5.7:** barrenos restaurados (commit `15aad72`) y choques liberados (commit `ff5a8ed`); DRC con 0 errores salvo las 3 exclusiones de MOD1. Queda una decisión: para librar R107, **MH11 se movió** — (168.94, 85.44) en V5.6 y (167.58, 84.44) en V5.7 —, así que ya no coincide con la V5.5 ni entre las dos, y en V5.7 queda a 0.4 mm de `/MAIN5V`. Opciones en la [pasada 3, A1](v56-v57-layout-pasada-3.md). En V5.6, `/CHRG_STAT` sigue a 0.25 mm de MH10.
|
||||||
|
|
||||||
|
**v6:** ya se actualizó desde el esquemático (paridad limpia salvo los PF*), y como se advierte abajo, eso **borró sus barrenos**: hoy no tiene ninguno. Se reponen con `python3 tools/t25_mounting_holes_v55.py hbox-watchdog-v6.kicad_pcb --set v6 --apply` (KiCad cerrado): MH5, MH6 y MH4 en (185.2, 90.3) para la placa base de la V5.5, más las dos esquinas MH7/MH8 que tenía. Después hay que apartar D23, D24, `/SIM_CLK`, `/SIM_RST` y `/NTC` (In2) de MH4.
|
||||||
|
|
||||||
|
!!! success "Actualización 16-oct, 14:00 — barrenos cerrados con T27"
|
||||||
|
**Decisión de Leo: MH11 se quita de V5.6 y V5.7** (no llevan la abrazadera de la V5.5). El script `tools/t27_paso1_2_mh11_rs1_kelvin.py` lo borra y, solo en V5.6, desvía `/CHRG_STAT` (In2) para que quede a 2.7 mm del centro de MH10 (hoy 1.6 mm). Con eso, en las dos tarjetas: **MH5, MH6, MH7, MH9 y MH10 sin cobre ajeno a GND dentro de la zona de la V5.5**; en MH4 solo queda, en la V5.6, `/I2C_SCL` en In1 a 2.7 mm del centro (1.1 mm del borde, capa interna: se acepta). Probado en copias con DRC de KiCad 10.0.4: 0 infracciones nuevas, 0 sin conectar. Comandos: [pasada 3, paso 0](v56-v57-layout-pasada-3.md#0-antes-de-empezar-leo-15-min).
|
||||||
|
|
||||||
**v6.** Tiene MH5 y MH6 en su lugar y dos barrenos nuevos en las esquinas derechas, (195.2, 45.3) y (195.2, 135.3), que la placa base actual no tiene. **Le falta MH4 en (185.2, 90.3)**: ahí hoy está D23 (su pad quedaría dentro del barreno), D24 y `/NTC` en In2. Y sus MH tampoco están marcados «No en el esquemático»: el paso 3 de [Próximos pasos](v6-proximos-pasos.md) (Actualizar PCB con «Eliminar huellas sin símbolo») los borraría igual que en V5.6. Antes de ese paso hay que marcarlos. Si la v6 llevará placa base nueva con 4 esquinas, que se decida ya; si no, MH4 en 185.2.
|
**v6.** Tiene MH5 y MH6 en su lugar y dos barrenos nuevos en las esquinas derechas, (195.2, 45.3) y (195.2, 135.3), que la placa base actual no tiene. **Le falta MH4 en (185.2, 90.3)**: ahí hoy está D23 (su pad quedaría dentro del barreno), D24 y `/NTC` en In2. Y sus MH tampoco están marcados «No en el esquemático»: el paso 3 de [Próximos pasos](v6-proximos-pasos.md) (Actualizar PCB con «Eliminar huellas sin símbolo») los borraría igual que en V5.6. Antes de ese paso hay que marcarlos. Si la v6 llevará placa base nueva con 4 esquinas, que se decida ya; si no, MH4 en 185.2.
|
||||||
|
|
||||||
## 4. Común a V5.5, V5.6 y V5.7: el límite de entrada del LTC4040 quedó en ≈ 1 A
|
## 4. Común a V5.5, V5.6 y V5.7: el límite de entrada del LTC4040 quedó en ≈ 1 A
|
||||||
@ -122,7 +130,7 @@ Así que el LTC4040 «ve» RS1 **más** ≈ 6 mΩ del rodeo **más** ≈ 12 mΩ
|
|||||||
|
|
||||||
Con la etapa y el módem encendidos (≈ 0.6 A a 5 V) quedan ≈ 0.35 A para el cargador, que a la batería son **≈ 0.4–0.5 A en lugar de 1.4 A** (V5.6/V5.7) o de 2.4 A (V5.5). Con la etapa apagada carga casi normal. No hay riesgo de daño: la pista de 0.25 mm lleva ≤ 1 A y se calienta ~15 °C. En la v6 el mismo punto ya está en el plan de corrección (A-07 / L-19: sensado Kelvin en RS1).
|
Con la etapa y el módem encendidos (≈ 0.6 A a 5 V) quedan ≈ 0.35 A para el cargador, que a la batería son **≈ 0.4–0.5 A en lugar de 1.4 A** (V5.6/V5.7) o de 2.4 A (V5.5). Con la etapa apagada carga casi normal. No hay riesgo de daño: la pista de 0.25 mm lleva ≤ 1 A y se calienta ~15 °C. En la v6 el mismo punto ya está en el plan de corrección (A-07 / L-19: sensado Kelvin en RS1).
|
||||||
|
|
||||||
Corrección (en la pasada 3): **sensado Kelvin** — la corriente pasa solo por RS1; U6.6 se conecta con pista propia al pad RS1.1 y U6.7 con pista propia al pad RS1.2; RS1.2 → Q7 con cobre ancho que no pase por el pad de U6.7.
|
Corrección (pasada 3, paso 2 — script T27, §4.4): **sensado Kelvin** — la corriente pasa solo por RS1; U6.6 se conecta con pista propia al pad RS1.1 y U6.7 con pista propia al pad RS1.2; RS1.2 → Q7 con cobre ancho que no pase por el pad de U6.7.
|
||||||
|
|
||||||
### 4.3 Cómo confirmarlo hoy en una V5.5 (Jesús, 15 min)
|
### 4.3 Cómo confirmarlo hoy en una V5.5 (Jesús, 15 min)
|
||||||
|
|
||||||
@ -134,6 +142,45 @@ Corrección (en la pasada 3): **sensado Kelvin** — la corriente pasa solo por
|
|||||||
4. En la V5.6/V5.7 (RS1 = 10 mΩ) la misma prueba da ≈ 9–10 mV con el defecto y ≈ 15–16 mV sin él.
|
4. En la V5.6/V5.7 (RS1 = 10 mΩ) la misma prueba da ≈ 9–10 mV con el defecto y ≈ 15–16 mV sin él.
|
||||||
5. Anotar la lectura en el acta de banco de la unidad.
|
5. Anotar la lectura en el acta de banco de la unidad.
|
||||||
|
|
||||||
|
Esta prueba depende de que la batería esté pidiendo carga. La de §4.5 (con TP1) no: sirve a cualquier corriente.
|
||||||
|
|
||||||
|
### 4.4 La corrección: RS1 girado 180° y sensado Kelvin (script T27)
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
**Qué se mide.** RS1 es un «amperímetro» de 10 mΩ en la entrada de 5 V (`/VEH5V`): toda la corriente que entra a la tarjeta (sistema + cargador) pasa por ella y produce una caída de 1 mV por cada 0.1 A. El LTC4040 lee esa caída con dos pines, **U6.6 (VIN)** y **U6.7 (CLN)**; al llegar a 25 mV recorta la carga de la batería. Para que lea solo a RS1, cada pin necesita **su propio hilo hasta su pad de RS1, por donde no pase corriente** (conexión Kelvin o de 4 hilos, como las puntas de un óhmetro de 4 terminales).
|
||||||
|
|
||||||
|
**Por qué se gira RS1.** Con RS1 como está (pad 1 `/VEH5V` a la derecha, del lado de U6), U6.6 —que está arriba de U6.7— tendría que llegar al pad de la derecha y U6.7 al de la izquierda: los dos hilos se cruzan. Girando RS1 180° en su mismo lugar, el pad 1 (`/VEH5V`) queda a la izquierda, junto a la vía de entrada y a C31, y el pad 2 (`/VIN_SW`) a la derecha, junto a Q7. Así nada se cruza y la potencia queda más corta que hoy:
|
||||||
|
|
||||||
|
| | Hoy | Con T27 |
|
||||||
|
|---|---|---|
|
||||||
|
| Entrada | vía → rodeo de 13 mm a 1.0 mm por C31 → RS1.1 | vía (151.0, 115.54) → RS1.1 directo: 1.7 mm a 0.8 mm |
|
||||||
|
| C31 | en medio del rodeo | pegado a RS1.1 (2.5 mm a 1.0 mm) |
|
||||||
|
| Salida | RS1.2 → 0.25 mm hasta el pad de U6.7 → 1.0 mm a Q7 | RS1.2 → Q7.1/2/3 con 1.5 mm (5 mm); ya no pasa por U6 |
|
||||||
|
| Sensado VIN | U6.6 → vía (antes del rodeo) | U6.6 → RS1.1, 0.25 mm propia; pasa por arriba de la vía y entra al pad por fuera |
|
||||||
|
| Sensado CLN | el propio pad de U6.7, que lleva la corriente | U6.7 → RS1.2, 0.25 mm propia (3 mm) |
|
||||||
|
| Lo que ve el LTC4040 | ≈ 27 mΩ → límite ≈ 0.9 A | 10 mΩ + < 0.3 mΩ de cobre de pad → **2.4–2.5 A** |
|
||||||
|
|
||||||
|
Por los hilos de sensado no pasa corriente (el pin VIN del LTC4040 consume < 1 mA), así que su largo y su ancho no importan. En la V5.7, T27 además endereza `/CHRG_EN` bajo TP1 (bajaba a y = 114.56 y no dejaba pasar el hilo VIN); queda igual que en la V5.6.
|
||||||
|
|
||||||
|
**Verificado en copias** de las dos tarjetas (`_to_delete/audit-20261016/v56t27` y `v57t27`): DRC de KiCad 10.0.4 con rellenado de zonas y paridad → **0 infracciones nuevas, 0 sin conectar** (lo único que cambia es que desaparece el aviso de MH11). Y la topología es Kelvin pura: si se quita el pad RS1.1, U6.6 queda desconectado de la entrada; si se quita RS1.2, U6.7 queda desconectado de Q7.
|
||||||
|
|
||||||
|
Con la unidad trabajando (≈ 0.6 A), quedan ≈ 1.9 A para el cargador: carga completa de 1.4 A (V5.6/V5.7).
|
||||||
|
|
||||||
|
### 4.5 Prueba definitiva con TP1 (CLPROG): cualquier tarjeta, cualquier corriente
|
||||||
|
|
||||||
|
El LTC4040 saca en su pin CLPROG —**TP1**, el círculo de 1.5 mm junto a RS1— **32 veces** el voltaje que mide entre U6.6 y U6.7. Comparando TP1 con la caída real en RS1 se sabe cuánto «ve» el chip:
|
||||||
|
|
||||||
|
1. Unidad con 24 V y funcionando; mejor si consume más de 0.3 A (etapa y módem encendidos).
|
||||||
|
2. **V_RS1:** multímetro en la escala de 200 mV (resolución de 0.01 mV) sobre las **terminales metálicas de RS1**, no sobre las pistas.
|
||||||
|
3. **V_TP1:** multímetro en volts, de TP1 a GND.
|
||||||
|
4. **Razón = (V_TP1 ÷ 32) ÷ V_RS1.**
|
||||||
|
- **≈ 1.0–1.1** → sensado correcto.
|
||||||
|
- **≈ 2.7** (V5.6/V5.7 de hoy) o **≈ 3.1** (V5.5) → el defecto de §4.1.
|
||||||
|
- Si TP1 marca ≈ 0.8 V, el límite ya está actuando (la entrada está topada).
|
||||||
|
|
||||||
|
Ejemplo en una V5.6 a 0.5 A: V_RS1 = 5.0 mV; con el defecto TP1 ≈ 0.43 V (razón 2.7); corregida, TP1 ≈ 0.16 V (razón 1.0). Va al banco del piloto (plan, fila 8) y al acta de cada tarjeta.
|
||||||
|
|
||||||
## 5. V5.7: rango de entrada sin la Mean Well
|
## 5. V5.7: rango de entrada sin la Mean Well
|
||||||
|
|
||||||
Cadena: **P1.1 → F2** (fusible 3 A lento, 2410) **→ D10** SMBJ33A (TVS a GND) **y Q10** IRFR5305 (polaridad) **→ `/24V` → U25** TPS54360B **→ L22/D34 → `/VEH5V` 5.32 V** (5.18–5.46 V) **→ RS1 → LTC4040**.
|
Cadena: **P1.1 → F2** (fusible 3 A lento, 2410) **→ D10** SMBJ33A (TVS a GND) **y Q10** IRFR5305 (polaridad) **→ `/24V` → U25** TPS54360B **→ L22/D34 → `/VEH5V` 5.32 V** (5.18–5.46 V) **→ RS1 → LTC4040**.
|
||||||
@ -156,14 +203,17 @@ Dos cambios recomendados y una advertencia:
|
|||||||
2. **Ignición en 12 V.** El divisor de PA5 (22 k arriba, 22 k ∥ 3.3 k abajo) da **1.4 V con 12 V y 1.6 V con 13.8 V**: queda entre el «bajo» y el «alto» del STM32, así que leer PA5 con `digitalRead` no es confiable en máquinas de 12 V (Tractoplana, Montacargas). Con 24 V da 2.8 V y sí funciona. **El firmware debe leer PA5 con el ADC** (umbral ≈ 0.7 V ≈ 6 V de ignición, con histéresis). En v6 el divisor ya es 22 k / 2.2 k, pensado para ADC.
|
2. **Ignición en 12 V.** El divisor de PA5 (22 k arriba, 22 k ∥ 3.3 k abajo) da **1.4 V con 12 V y 1.6 V con 13.8 V**: queda entre el «bajo» y el «alto» del STM32, así que leer PA5 con `digitalRead` no es confiable en máquinas de 12 V (Tractoplana, Montacargas). Con 24 V da 2.8 V y sí funciona. **El firmware debe leer PA5 con el ADC** (umbral ≈ 0.7 V ≈ 6 V de ignición, con histéresis). En v6 el divisor ya es 22 k / 2.2 k, pensado para ADC.
|
||||||
3. **El gabinete no cambia.** Breaker, SPD y la DDR-60G-24 siguen; con ellos la tarjeta recibe 24 V regulados y el rango amplio es margen. Si algún día se quiere quitar la DDR-60G-24 en máquinas de 12/24 V, la V5.7 lo aguanta eléctricamente, pero el SPD y el breaker se quedan.
|
3. **El gabinete no cambia.** Breaker, SPD y la DDR-60G-24 siguen; con ellos la tarjeta recibe 24 V regulados y el rango amplio es margen. Si algún día se quiere quitar la DDR-60G-24 en máquinas de 12/24 V, la V5.7 lo aguanta eléctricamente, pero el SPD y el breaker se quedan.
|
||||||
|
|
||||||
|
!!! note "Leo, 16-oct: hoy todas las instalaciones tienen la fuente externa de 24 V"
|
||||||
|
Entonces el rango de 9–32 V es margen, no requisito. El SMBJ33CA baja de prioridad: solo protege contra un arnés armado al revés, aunque es un cambio de BOM sin tocar el layout. Lo de la ignición de 12 V aplica solo si el pin 3 del GX16 llega crudo de una máquina de 12 V; si llega del gabinete a 24 V, `digitalRead` funciona. Aun así, leerla por ADC no cuesta nada.
|
||||||
|
|
||||||
## 6. V5.6 — qué falta
|
## 6. V5.6 — qué falta
|
||||||
|
|
||||||
**Bien:** paridad limpia, 0 sin conectar, 0 errores; `/SYS5V` hacia U7 y `/MAIN5V` hacia Q7 ya por capas externas; In1 limpio bajo U16; U26 con sus capacitores; C128 a 1.15 mm del borde; pasta del EP de U6 al 50 %. En esquemático: MODEM_EN/RST/LED, toma de RTCM en PC7, K1 en modo B, paquete LFP (JP2 2-3, R55 5.6 k), cristal LSE Y4.
|
**Bien:** paridad limpia, 0 sin conectar, 0 errores; `/SYS5V` hacia U7 y `/MAIN5V` hacia Q7 ya por capas externas; In1 limpio bajo U16; U26 con sus capacitores; C128 a 1.15 mm del borde; pasta del EP de U6 al 50 %. En esquemático: MODEM_EN/RST/LED, toma de RTCM en PC7, K1 en modo B, paquete LFP (JP2 2-3, R55 5.6 k), cristal LSE Y4.
|
||||||
|
|
||||||
| # | Qué | Dónde | Gravedad |
|
| # | Qué | Dónde | Gravedad |
|
||||||
|---|---|---|---|
|
|---|---|---|---|
|
||||||
| 1 | Faltan los 7 barrenos; al ponerlos: R107 y `/MODEM_RST_MCU` en MH11, `/CHRG_STAT` en MH10 | §3 | **Bloqueante** |
|
| 1 | Faltan los 7 barrenos; al ponerlos: R107 y `/MODEM_RST_MCU` en MH11, `/CHRG_STAT` en MH10 — **restaurados el 16-oct; MH11 se quita y `/CHRG_STAT` se desvía con T27** | §3 | **Bloqueante** → cerrado con T27 |
|
||||||
| 2 | Sensado de RS1 → límite de entrada ≈ 1 A | §4 | **Bloqueante** (es la carga de la batería) |
|
| 2 | Sensado de RS1 → límite de entrada ≈ 1 A — **corrección lista: T27 (§4.4)** | §4 | **Bloqueante** (es la carga de la batería) → cerrado con T27 |
|
||||||
| 3 | `/BAT_PLUS`: siguen 7.8 mm en In2 (1.5 mm) entre las vías (180.12, 100.81) y (179.57, 109.63), con una sola vía 0.8/0.3 en cada extremo | P4 → L6.2 | Importante |
|
| 3 | `/BAT_PLUS`: siguen 7.8 mm en In2 (1.5 mm) entre las vías (180.12, 100.81) y (179.57, 109.63), con una sola vía 0.8/0.3 en cada extremo | P4 → L6.2 | Importante |
|
||||||
| 4 | `/MAIN5V` hacia P11: una sola vía (153.19, 110.88) para todo VSYS y 118 mm de B.Cu a 1.0 mm (145 mV a 2.5 A) | U6 → P11.1 | Importante |
|
| 4 | `/MAIN5V` hacia P11: una sola vía (153.19, 110.88) para todo VSYS y 118 mm de B.Cu a 1.0 mm (145 mV a 2.5 A) | U6 → P11.1 | Importante |
|
||||||
| 5 | `/3V3_MODEM`: 51 mm a 0.5 mm (≈ 100 mV en ráfaga de 2 A) | L7.2 → J7.1 | Importante |
|
| 5 | `/3V3_MODEM`: 51 mm a 0.5 mm (≈ 100 mV en ráfaga de 2 A) | L7.2 → J7.1 | Importante |
|
||||||
@ -205,12 +255,15 @@ Dos cambios recomendados y una advertencia:
|
|||||||
| Vías de GND | 2 cerca de U25, 1 junto a D34 | Importante (≥ 6 en EP, ≥ 4 junto a D34) |
|
| Vías de GND | 2 cerca de U25, 1 junto a D34 | Importante (≥ 6 en EP, ≥ 4 junto a D34) |
|
||||||
| `/VEH5V` L22.2 → RS1.1 | 51 mΩ (143 mV a 2.8 A), 4 vías sencillas | Importante |
|
| `/VEH5V` L22.2 → RS1.1 | 51 mΩ (143 mV a 2.8 A), 4 vías sencillas | Importante |
|
||||||
|
|
||||||
**C · Barrenos** (§3): MH4 corta `/24V`, `/I2C_SCL` y `/RGBB_K`; MH11 cae sobre R107 y corta `/MODEM_RST_MCU` y `/RGBG_K`. **Bloqueante.**
|
**C · Barrenos** (§3): MH4 corta `/24V`, `/I2C_SCL` y `/RGBB_K`; MH11 cae sobre R107 y corta `/MODEM_RST_MCU` y `/RGBG_K`. **Bloqueante.** → MH4 y MH10 liberados el 16-oct (`ff5a8ed`); MH11 se quita con T27.
|
||||||
|
|
||||||
**D · Igual que V5.6:** sensado de RS1 (§4), `/3V3_MODEM` (54 mm a 0.5 mm), U7 sin vías en el EP, vías de 0.1 mm en `/NTC`, BOM, puertos (§10). Recomendado además: **D10 → SMBJ33CA** (§5).
|
**D · Igual que V5.6:** sensado de RS1 (§4; **T27**), `/3V3_MODEM` (54 mm a 0.5 mm), U7 sin vías en el EP, vías de 0.1 mm en `/NTC`, BOM, puertos (§10). Recomendado además: **D10 → SMBJ33CA** (§5).
|
||||||
|
|
||||||
## 8. v6 — qué falta
|
## 8. v6 — qué falta
|
||||||
|
|
||||||
|
!!! note "Actualización 16-oct, 11:35"
|
||||||
|
Leo ya corrió «Actualizar PCB desde esquemático» (commit `ff5a8ed`). La paridad quedó limpia salvo los PF*, así que lo de la tabla 8.1 quedó resuelto **en huellas, valores y redes**. Ahora el PCB tiene lo esperado tras la actualización: 14 cortos y 28 conexiones sin rutear (huellas nuevas de L2/L6/L8/L20, puertos U14/U15/U32/D39/R147, J10, ETH_PWR_EN). Eso es el layout de §8.2. Además, la actualización borró los barrenos (§3). La identificación de tarjeta (§8.4) y el firmware (§8.3) siguen igual.
|
||||||
|
|
||||||
### 8.1 El PCB no es el esquemático verificado
|
### 8.1 El PCB no es el esquemático verificado
|
||||||
|
|
||||||
El PCB es del 1–2 de octubre y nunca pasó por «Actualizar PCB desde esquemático» (paso 3 de [Próximos pasos](v6-proximos-pasos.md)). DRC con paridad: 70 diferencias. Las que importan si se fabricara así:
|
El PCB es del 1–2 de octubre y nunca pasó por «Actualizar PCB desde esquemático» (paso 3 de [Próximos pasos](v6-proximos-pasos.md)). DRC con paridad: 70 diferencias. Las que importan si se fabricara así:
|
||||||
@ -304,7 +357,7 @@ Estado del acelerómetro en hardware: V5.6 ✅; V5.7 ✅ con INT1 por In1 y C128
|
|||||||
|---|---|---|---|---|
|
|---|---|---|---|---|
|
||||||
| 1 | Decidir: portar puertos de v6 a V5.6/V5.7 (§10.1), D10 → SMBJ33CA en V5.7 (§5) y el strap de identificación de la v6 en PA9 (§8.4) | Leo | 15 min | — |
|
| 1 | Decidir: portar puertos de v6 a V5.6/V5.7 (§10.1), D10 → SMBJ33CA en V5.7 (§5) y el strap de identificación de la v6 en PA9 (§8.4) | Leo | 15 min | — |
|
||||||
| 2 | Medir el límite de entrada en una V5.5 (§4.3) | Jesús | 15 min | — |
|
| 2 | Medir el límite de entrada en una V5.5 (§4.3) | Jesús | 15 min | — |
|
||||||
| 3 | Restaurar los barrenos con el script T25 en V5.6 y V5.7 y subir | Leo | 10 min | — |
|
| 3 | Restaurar los barrenos con el script T25 en V5.6 y V5.7 y subir — **hecho el 16-oct** (`15aad72`, `ff5a8ed`). **Pasos 1 y 2 de la pasada 3 con el script T27** (quitar MH11, `/CHRG_STAT` fuera de MH10, sensado Kelvin de RS1), probado con DRC en copias | Leo | 15 min | — |
|
||||||
| 4 | [Pasada 3](v56-v57-layout-pasada-3.md) en V5.6 | Michelle | ≈ 1 día (+ 0.5 día si se portan los puertos) | 1, 3 |
|
| 4 | [Pasada 3](v56-v57-layout-pasada-3.md) en V5.6 | Michelle | ≈ 1 día (+ 0.5 día si se portan los puertos) | 1, 3 |
|
||||||
| 5 | Re-auditoría V5.6 + Gerber/BOM/CPL | Claude | 2 h | 4 |
|
| 5 | Re-auditoría V5.6 + Gerber/BOM/CPL | Claude | 2 h | 4 |
|
||||||
| 6 | **Piloto V5.6: 5 tarjetas** (EP de U6 Epoxy Filled & Capped + rayos X) | Leo → Aldair | 1 h + fabricación | 5 |
|
| 6 | **Piloto V5.6: 5 tarjetas** (EP de U6 Epoxy Filled & Capped + rayos X) | Leo → Aldair | 1 h + fabricación | 5 |
|
||||||
@ -314,7 +367,7 @@ Estado del acelerómetro en hardware: V5.6 ✅; V5.7 ✅ con INT1 por In1 y C128
|
|||||||
| 10 | Pasada 3 en V5.7 | Michelle | ≈ 2–3 días | 4 |
|
| 10 | Pasada 3 en V5.7 | Michelle | ≈ 2–3 días | 4 |
|
||||||
| 11 | Re-auditoría V5.7 + 5 prototipos (validación ECO §6) | Claude / Leo | 2 h + fabricación | 10 |
|
| 11 | Re-auditoría V5.7 + 5 prototipos (validación ECO §6) | Claude / Leo | 2 h + fabricación | 10 |
|
||||||
| 12 | Banco V5.7: 9 / 12 / 24 / 32 V con carga, polaridad invertida, temperatura de U25, + lo de la fila 8 | Jesús | 2 días | 7, 11 |
|
| 12 | Banco V5.7: 9 / 12 / 24 / 32 V con carga, polaridad invertida, temperatura de U25, + lo de la fila 8 | Jesús | 2 días | 7, 11 |
|
||||||
| 13 | v6: marcar MH «No en el esquemático», agregar MH4 (185.2, 90.3), Actualizar PCB, L-1…L-67 | Michelle | ≈ 4 días | después de V5.7 |
|
| 13 | v6: Actualizar PCB (**hecho el 16-oct**, `ff5a8ed`) → reponer barrenos con `--set v6` y liberar MH4 → L-1…L-67 | Leo / Michelle | ≈ 3.5 días | después de V5.7 |
|
||||||
| 14 | v6: firmware 0.7.x (AT del A7670SA, cliente NTRIP, UDP, reconexión, configuración) | Leo + Claude | varias semanas (sin estimar a detalle) | — |
|
| 14 | v6: firmware 0.7.x (AT del A7670SA, cliente NTRIP, UDP, reconexión, configuración) | Leo + Claude | varias semanas (sin estimar a detalle) | — |
|
||||||
| 15 | v6: homologación IFT; piloto de 20 antes de las 130 | Leo / Adriana | — | 13, 14 |
|
| 15 | v6: homologación IFT; piloto de 20 antes de las 130 | Leo / Adriana | — | 13, 14 |
|
||||||
|
|
||||||
@ -327,4 +380,5 @@ Si el tiempo manda y se piden las 113 V5.6 sin piloto, el riesgo es que el ciclo
|
|||||||
- Rutas de potencia: script propio que encuentra el cobre que queda **en serie** entre dos pads (cada tramo y vía cuya falta desconectaría la ruta), con resistencia y calentamiento por IPC-2221 (internas de 0.5 oz).
|
- Rutas de potencia: script propio que encuentra el cobre que queda **en serie** entre dos pads (cada tramo y vía cuya falta desconectaría la ruta), con resistencia y calentamiento por IPC-2221 (internas de 0.5 oz).
|
||||||
- Barrenos contra los Gerbers de producción de la V5.5 y el historial de git de su PCB.
|
- Barrenos contra los Gerbers de producción de la V5.5 y el historial de git de su PCB.
|
||||||
- El script T25 se probó en copias de V5.6 y V5.7 con DRC.
|
- El script T25 se probó en copias de V5.6 y V5.7 con DRC.
|
||||||
|
- El script T27 (pasos 1 y 2) se probó igual, en copias de V5.6 y V5.7: DRC sin infracciones nuevas y 0 sin conectar; topología Kelvin comprobada sobre la red (los pines de sensado solo llegan a la entrada o a Q7 a través de su pad de RS1).
|
||||||
- Los hallazgos principales (barrenos, sensado de RS1, V5.7 sin pasada 2, fuente U25, v6 desactualizada, rango de entrada) los revisó un segundo revisor independiente con los mismos archivos.
|
- Los hallazgos principales (barrenos, sensado de RS1, V5.7 sin pasada 2, fuente U25, v6 desactualizada, rango de entrada) los revisó un segundo revisor independiente con los mismos archivos.
|
||||||
|
|||||||
@ -4,8 +4,8 @@ tags: [project-drogheda, hardware, hbox, einarboard, v5.6, v5.7, layout, pcb, mi
|
|||||||
project: Project Drogheda
|
project: Project Drogheda
|
||||||
author: Helgen Technologies
|
author: Helgen Technologies
|
||||||
date: 2026-10-16
|
date: 2026-10-16
|
||||||
version: 1.0
|
version: 1.2
|
||||||
status: ACTIVO — sustituye a la pasada 2 de V5.6 (13-oct) y a la guía de colocación y ruteo de V5.7 (14-oct)
|
status: ACTIVO — rev. C (16-oct, 14:00): MH11 se quita; pasos 1 y 2 con el script T27 · sustituye a la pasada 2 de V5.6 (13-oct) y a la guía de colocación y ruteo de V5.7 (14-oct)
|
||||||
audience: Michelle (layout), Leo
|
audience: Michelle (layout), Leo
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -23,9 +23,67 @@ Reglas de siempre:
|
|||||||
- No mover U6, U16, U26, MOD1, J7/J8 ni la fila de conectores; no tocar la pasta del EP de U6; no poner piezas en la cara inferior (pistas en B.Cu sí).
|
- No mover U6, U16, U26, MOD1, J7/J8 ni la fila de conectores; no tocar la pasta del EP de U6; no poner piezas en la cara inferior (pistas en B.Cu sí).
|
||||||
- No cambiar valores ni huellas: eso es del esquemático y lo hace Leo. Excepción: lo que Leo apruebe en el punto A12.
|
- No cambiar valores ni huellas: eso es del esquemático y lo hace Leo. Excepción: lo que Leo apruebe en el punto A12.
|
||||||
|
|
||||||
## 0. Antes de empezar (Leo, 10 min)
|
!!! success "Estado al 16-oct, 14:00 — rev. C"
|
||||||
|
- **Barrenos: hechos en las dos** (Leo, commits `15aad72` y `ff5a8ed`). **Decisión de Leo: MH11 se quita de las dos** (V5.6 y V5.7 no llevan la abrazadera de la V5.5).
|
||||||
|
- **Pasos 1 y 2 van por script (T27, Leo, 15 min):** quita MH11, aparta `/CHRG_STAT` de MH10 en la V5.6 y deja el **sensado Kelvin de RS1** en las dos (RS1 girado 180°). Probado en copias con DRC: 0 infracciones nuevas, 0 sin conectar. Michelle: **no rehagas A1, A2, B1 ni la parte de A2 en B4**; solo revisa que se vean como en la figura de A2.
|
||||||
|
- **Lo demás sigue pendiente:** A3–A13 en V5.6 y B2, B3, B4 (sin A2) y B5 en V5.7.
|
||||||
|
|
||||||
Leo mete los 7 barrenos de la V5.5 con el script (KiCad **cerrado**):
|
**Los 7 pasos, y qué puntos de esta guía cubre cada uno:**
|
||||||
|
|
||||||
|
| Paso | Qué | Quién | Puntos |
|
||||||
|
|---|---|---|---|
|
||||||
|
| 1 | Barrenos: MH11 fuera, `/CHRG_STAT` lejos de MH10 | Leo (script T27) | A1, B1 |
|
||||||
|
| 2 | Sensado Kelvin de RS1 | Leo (script T27) | A2, B4 (A2) |
|
||||||
|
| 3 | V5.7: la corriente fuera de In1/In2 (lo que la pasada 2 corrigió en V5.6) | Michelle | B2 |
|
||||||
|
| 4 | V5.7: fuente U25 (vías del EP, FB, lazo de entrada, nodo SW) | Michelle | B3 |
|
||||||
|
| 5 | Robustez en las dos: `/BAT_PLUS` en In2, vías de `/MAIN5V`, `/3V3_MODEM`, L7 junto a U7, vías del EP de U7, vías de 0.1 mm, `/VEH5V` de P2 | Michelle | A3–A9, B4 |
|
||||||
|
| 6 | Limpieza y datos: cobre suelto, cajetín y stackup, BOM; puertos solo si Leo los aprueba | Michelle + Leo | A10–A12, B2 (serigrafía, vía), B4 |
|
||||||
|
| 7 | Cierre: DRC, re-auditoría, Gerber/BOM/CPL, pilotos | Michelle → Claude → Leo | A13, B5 |
|
||||||
|
|
||||||
|
## 0. Antes de empezar (Leo, 15 min)
|
||||||
|
|
||||||
|
### 0.1 Pasos 1 y 2 con el script T27 — ahora
|
||||||
|
|
||||||
|
Con **KiCad cerrado** (PCB y esquemático de las dos tarjetas):
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd ~/Documents/Claude/Projects/Drogheda/03-Architecture-Hardware/kicad
|
||||||
|
git pull --ff-only
|
||||||
|
# prueba en seco: no escribe nada, solo dice lo que haría
|
||||||
|
python3 tools/t27_paso1_2_mh11_rs1_kelvin.py hbox-watchdog-v5.kicad_pcb
|
||||||
|
python3 tools/t27_paso1_2_mh11_rs1_kelvin.py hbox-watchdog-v57.kicad_pcb
|
||||||
|
# aplicar (deja un respaldo .T27bak junto a cada archivo)
|
||||||
|
python3 tools/t27_paso1_2_mh11_rs1_kelvin.py hbox-watchdog-v5.kicad_pcb --apply
|
||||||
|
python3 tools/t27_paso1_2_mh11_rs1_kelvin.py hbox-watchdog-v57.kicad_pcb --apply
|
||||||
|
```
|
||||||
|
|
||||||
|
Lo que debe decir:
|
||||||
|
|
||||||
|
| V5.6 (`hbox-watchdog-v5`) | V5.7 (`hbox-watchdog-v57`) |
|
||||||
|
|---|---|
|
||||||
|
| `paso 1: MH11 eliminado` | `paso 1: MH11 eliminado` |
|
||||||
|
| `paso 1: /CHRG_STAT (In2) apartado de MH10 (V5.6): 3 tramos -> 5` | `paso 1: /CHRG_STAT ya va lejos de MH10 (V5.7) - sin cambio` |
|
||||||
|
| `paso 2: 14 pistas borradas` | `paso 2: 14 pistas borradas` |
|
||||||
|
| `paso 2: RS1 girado 180 grados en (151.005, 117.235)` | igual |
|
||||||
|
| `paso 2: /CHRG_EN ya va recto bajo TP1 (V5.6) - sin cambio` | `paso 2: /CHRG_EN bajo TP1 enderezado (V5.7): 4 tramos -> 2` |
|
||||||
|
| `pasos 1-2: 17 tramos nuevos en total` | `pasos 1-2: 14 tramos nuevos en total` |
|
||||||
|
|
||||||
|
Si dice **ABORTAR**, el archivo ya no es el que se auditó (alguien movió esa zona): no escribió nada; avísale a Claude.
|
||||||
|
|
||||||
|
Después, en KiCad, cada tarjeta: **B** (rellenar zonas) → **Inspeccionar → DRC** con «Rellenar zonas» y «Comprobar paridad»: debe dar lo mismo que antes menos el aviso de MH11 — **3 errores** (MH7/MH9/MH10 dentro de MOD1: por diseño; si no están excluidos, clic derecho → *Excluir*), **0 sin conectar**, paridad solo con los PF*. Mira la zona de RS1 contra la figura de A2 y **guarda** (Ctrl+S). Luego:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mv hbox-watchdog-v5.kicad_pcb.T27bak hbox-watchdog-v57.kicad_pcb.T27bak _to_delete/
|
||||||
|
git add tools/t25_mounting_holes_v55.py tools/t27_paso1_2_mh11_rs1_kelvin.py hbox-watchdog-v5.kicad_pcb hbox-watchdog-v57.kicad_pcb hbox-watchdog-v5.kicad_pro hbox-watchdog-v57.kicad_pro
|
||||||
|
git commit -m "T27: pasos 1 y 2 de la pasada 3 en V5.6 y V5.7 - MH11 fuera, CHRG_STAT lejos de MH10, sensado Kelvin de RS1"
|
||||||
|
git push
|
||||||
|
```
|
||||||
|
|
||||||
|
Michelle, después del aviso de Leo: `git pull --ff-only` y sigue con el paso 3 (B2) o el 5 (A3–A9), según te diga Leo.
|
||||||
|
|
||||||
|
### 0.2 Barrenos con el script T25 — hecho el 16-oct
|
||||||
|
|
||||||
|
**Hecho el 16-oct (commit `15aad72`).** Se deja como referencia. Leo metió los barrenos de la V5.5 con el script (KiCad **cerrado**):
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cd ~/Documents/Claude/Projects/Drogheda/03-Architecture-Hardware/kicad
|
cd ~/Documents/Claude/Projects/Drogheda/03-Architecture-Hardware/kicad
|
||||||
@ -44,39 +102,48 @@ Michelle, después del aviso de Leo:
|
|||||||
git pull --ff-only
|
git pull --ff-only
|
||||||
```
|
```
|
||||||
|
|
||||||
Si falla, avísale a Leo; no fuerces nada. Al abrir el PCB vas a ver MH4, MH5, MH6, MH7, MH9, MH10 y MH11. **No los muevas** (son los de la placa base del HBOX, del ArduSimple y de la abrazadera del disipador) y no les quites el atributo «No en el esquemático».
|
Si falla, avísale a Leo; no fuerces nada. Después de T27 vas a ver **MH4, MH5, MH6, MH7, MH9 y MH10** (MH11 ya no existe). **No los muevas** (son los de la placa base del HBOX y del ArduSimple) y no les quites el atributo «No en el esquemático».
|
||||||
|
|
||||||
| Ref | Barreno | Centro (x, y) | Zona libre (así estaba la V5.5) |
|
| Ref | Barreno | Centro (x, y) | Zona libre (así estaba la V5.5) |
|
||||||
|---|---|---|---|
|
|---|---|---|---|
|
||||||
| MH5, MH6, MH4 (caja, M3) | 3.2 mm, máscara abierta de 6 mm | (65.2, 45.3) · (65.2, 135.3) · (185.2, 90.3) | **ningún cobre que no sea GND, en ninguna capa, a menos de 3.1 mm del centro** (en F.Cu/B.Cu ese cobre quedaría expuesto bajo la rondana) |
|
| MH5, MH6, MH4 (caja, M3) | 3.2 mm, máscara abierta de 6 mm | (65.2, 45.3) · (65.2, 135.3) · (185.2, 90.3) | **ningún cobre que no sea GND, en ninguna capa, a menos de 3.1 mm del centro** (en F.Cu/B.Cu ese cobre quedaría expuesto bajo la rondana) |
|
||||||
| MH7, MH9, MH10 (ArduSimple, M2.5) | 2.75 mm | (76.63, 129.9) · (77.9, 81.64) · (128.7, 96.88) | ningún cobre que no sea GND, en ninguna capa, a menos de **2.6 mm** del centro |
|
| MH7, MH9, MH10 (ArduSimple, M2.5) | 2.75 mm | (76.63, 129.9) · (77.9, 81.64) · (128.7, 96.88) | ningún cobre que no sea GND, en ninguna capa, a menos de **2.6 mm** del centro |
|
||||||
| MH11 (abrazadera, M2.5) | 2.75 mm | (170.39, 83.8) | igual (2.6 mm), y ninguna pieza dentro de ese círculo |
|
| ~~MH11 (abrazadera, M2.5)~~ | — | — | **se quitó** (Leo, 16-oct): V5.6 y V5.7 no llevan la abrazadera de la V5.5 |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Parte A — V5.6 (`hbox-watchdog-v5`)
|
## Parte A — V5.6 (`hbox-watchdog-v5`)
|
||||||
|
|
||||||
### A1. Lo que choca con los barrenos — BLOQUEANTE
|
### A1. Barrenos — cerrado con T27 (paso 1)
|
||||||
|
|
||||||
- **MH11 (170.39, 83.8):** **R107** (hoy en (171.8, 83.6)) quedó encima del barreno. Muévela a ≥ 3 mm del centro, de preferencia junto a **J7 pin 5** (174.2, 82.8). Re-rutea `/MODEM_RST_MCU` (hoy (167.8, 82.2)→(169.57, 82.2)→(171.8, 84.42): la broca la corta) y `/MODEM_RST` ((171.8, 82.78)→(174.18, 82.78)) por fuera de 2.6 mm del centro.
|
Hecho (commit `ff5a8ed` + T27):
|
||||||
- **MH10 (128.7, 96.88):** `/CHRG_STAT` en In2 pasa a 0.25 mm del borde (tramo (130.47, 96.14)→(117.91, 83.58)): sepárala a ≥ 2.6 mm del centro.
|
|
||||||
- **MH4 (185.2, 90.3):** `/I2C_SCL` y `/I2C_SDA` en In1 (verticales en x = 183.0 y x = 187.4) pasan a 1.95 mm del centro, 0.35 mm del borde. No es un corte, pero en la V5.5 estaban fuera de 3.1 mm: aléjalas a eso.
|
|
||||||
- MH5, MH6, MH7 y MH9 están libres.
|
|
||||||
- El DRC marca **MH7, MH9 y MH10 «dentro del courtyard de MOD1»**: es por diseño (son los barrenos del ArduSimple). Clic derecho → *Excluir esta infracción*.
|
|
||||||
|
|
||||||
### A2. Sensado de RS1 (límite de entrada del LTC4040) — BLOQUEANTE
|
- `/I2C_SCL` y `/I2C_SDA` apartados de MH4 (hoy a 1.1 mm del borde, en In1: se acepta).
|
||||||
|
- **MH11 se quitó** (decisión de Leo: la V5.6 no lleva la abrazadera de la V5.5). R107 y `/MODEM_RST_MCU` se quedan donde están.
|
||||||
|
- **`/CHRG_STAT` (In2) se desvió junto a MH10:** sigue su misma diagonal, pero entre (134.0, 99.8) y (122.63, 88.3) hace una Z de 1.7 mm hacia afuera y queda a **2.7 mm del centro del barreno** (antes 1.6 mm, a 0.25 mm del borde).
|
||||||
|
- MH5, MH6, MH7, MH9 y MH10: libres.
|
||||||
|
|
||||||
Hoy el LTC4040 mide RS1 **más** 19 mm de pista, y por eso limita la entrada a ≈ 1 A en lugar de 2.5 A (auditoría §4). La regla: **la corriente pasa solo por RS1; los pines de sensado se conectan con pista propia directo a los pads de RS1.**
|
Te queda solo esto: el DRC marca **MH7, MH9 y MH10 «dentro del courtyard de MOD1»**. Es por diseño (son los barrenos del ArduSimple): clic derecho → *Excluir esta infracción*, si Leo no lo hizo ya.
|
||||||
|
|
||||||
Piezas: **RS1** pad 1 `/VEH5V` (152.47, 117.24) y pad 2 `/VIN_SW` (149.54, 117.24) · **U6.6** VIN (154.50, 114.12) · **U6.7** CLN (154.50, 114.62) · **Q7.1/2/3** fuente (153.79, 120.58 / 121.85 / 123.12) · vía `/VEH5V` (151.0, 115.54) por donde llega la entrada · **C31** (149.46, 120.89).
|
### A2. Sensado de RS1 (límite de entrada del LTC4040) — hecho con T27 (paso 2)
|
||||||
|
|
||||||
1. Borra la pista de 0.25 mm **RS1.2 → U6.7** ((149.45, 117.26)→(150.44, 117.26)→(153.08, 114.62)→(154.5, 114.62)) y la de 1.0 mm que sube de Q7 al pad de U6.7 ((153.78, 123.12)→(153.78, 115.44)→(154.34, 114.89)); la sustituye el polígono del paso 2.
|

|
||||||
2. **Potencia:** une **RS1.2 con Q7.1, Q7.2 y Q7.3** con un polígono `/VIN_SW` en F.Cu (o pista de ≥ 1.5 mm), sin tocar el pad de U6.7.
|
|
||||||
3. **Sensado CLN:** pista nueva de 0.25 mm desde **U6.7** que llegue al pad **RS1.2** por su lado interior. Que no comparta cobre con el polígono de potencia más que en el pad.
|
|
||||||
4. **Entrada:** lleva `/VEH5V` de la vía (151.0, 115.54) a **RS1.1** directo, a ≥ 1.5 mm (son ≈ 2 mm). Que la corriente ya no dé la vuelta por C31: C31 se queda colgado de RS1.1 con un tramo corto.
|
|
||||||
5. **Sensado VIN:** la pista de 0.25 mm de **U6.6** que hoy termina en la vía (151.0, 115.54) debe llegar al pad **RS1.1** por su lado interior.
|
|
||||||
|
|
||||||
Cómo sé que quedó: resaltando `/VIN_SW` y `/VEH5V`, entre los pads de RS1 y los pines U6.6/U6.7 solo hay pistas delgadas que **no llevan** corriente a ningún otro lado. Claude lo mide en la re-auditoría (meta: < 1 mΩ de cobre compartido).
|
**Qué se mide.** RS1 (10 mΩ) es el «amperímetro» de la entrada de 5 V: por ella pasa toda la corriente que entra a la tarjeta (sistema + cargador), y el LTC4040 lee su caída entre **U6.6 (VIN)** y **U6.7 (CLN)**. A 25 mV (= 2.5 A) recorta la carga de la batería. Para que lea solo a RS1, **cada pin necesita su propio hilo hasta su pad de RS1, por donde no pase corriente** (conexión Kelvin). Antes, U6.6 tomaba el voltaje en la vía, antes de 13 mm de rodeo, y la salida de RS1 pasaba por el pad de U6.7 con 0.25 mm: el chip veía ≈ 27 mΩ y limitaba a ≈ 0.9 A (auditoría §4).
|
||||||
|
|
||||||
|
**Qué hizo T27** (mismas coordenadas en V5.6 y V5.7):
|
||||||
|
|
||||||
|
1. Borró 14 tramos de F.Cu: el rodeo de `/VEH5V` por C31, la pista de 0.25 mm RS1 → U6.7 y la de 1.0 mm que bajaba del pad de U6.7 a Q7.
|
||||||
|
2. **Giró RS1 180° en su mismo lugar** (151.0, 117.24): el pad 1 (`/VEH5V`) quedó a la izquierda, junto a la vía y a C31; el pad 2 (`/VIN_SW`), a la derecha, junto a Q7. Así los dos hilos de sensado no se cruzan.
|
||||||
|
3. Potencia: vía (151.0, 115.54) → RS1.1 con 0.8 mm; C31.1 → RS1.1 con 1.0 mm; RS1.2 → Q7.1/2/3 con 1.5 mm (una barra en x = 153.4 que toca los tres pines).
|
||||||
|
4. Sensado, 0.25 mm: **U6.7 → RS1.2** (entra por arriba del pad) y **U6.6 → RS1.1** (pasa por arriba de la vía, baja por x = 148.6 y entra al pad por su lado de afuera).
|
||||||
|
5. Solo V5.7: `/CHRG_EN` bajo TP1 enderezado como en la V5.6 (horizontal en y = 114.24 y diagonal a 45° hasta (149.98, 113.32)); si no, el hilo de U6.6 no cabe.
|
||||||
|
|
||||||
|
**Cómo se ve que quedó:** resalta `/VEH5V` y `/VIN_SW`. Entre los pads de RS1 y los pines U6.6/U6.7 solo están las dos pistas de 0.25 mm, y ninguna toca otra cosa de su red. Por el pad de U6.7 ya no pasa ninguna pista ancha.
|
||||||
|
|
||||||
|
**No muevas RS1, C31, la vía ni esas pistas.** Si algo de los pasos 3–6 necesita pasar por ahí, avísale a Leo antes.
|
||||||
|
|
||||||
|
**En banco (piloto):** con la unidad funcionando, (voltaje de TP1 ÷ 32) ÷ (voltaje en las terminales de RS1) debe dar **≈ 1.0** (antes daba ≈ 2.7). Detalle en la [auditoría §4.5](auditoria-produccion-16oct.md#45-prueba-definitiva-con-tp1-clprog-cualquier-tarjeta-cualquier-corriente).
|
||||||
|
|
||||||
### A3. `/BAT_PLUS` — lo que quedó en In2
|
### A3. `/BAT_PLUS` — lo que quedó en In2
|
||||||
|
|
||||||
@ -143,7 +210,7 @@ Cuenta ≈ 0.5 día extra.
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
git add hbox-watchdog-v5.kicad_pcb hbox-watchdog-v5.kicad_sch hbox-watchdog-v5.kicad_pro
|
git add hbox-watchdog-v5.kicad_pcb hbox-watchdog-v5.kicad_sch hbox-watchdog-v5.kicad_pro
|
||||||
git commit -m "V5.6 pasada 3: choques con barrenos, sensado Kelvin de RS1, BAT_PLUS fuera de In2, vias MAIN5V/U7, 3V3_MODEM, L7, rev 5.6"
|
git commit -m "V5.6 pasada 3: BAT_PLUS fuera de In2, vias MAIN5V/U7, 3V3_MODEM, L7, limpieza, rev 5.6"
|
||||||
git push
|
git push
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -153,16 +220,9 @@ Avísale a Leo con el hash; Claude revisa pad a pad y genera Gerber/BOM/CPL.
|
|||||||
|
|
||||||
## Parte B — V5.7 (`hbox-watchdog-v57`)
|
## Parte B — V5.7 (`hbox-watchdog-v57`)
|
||||||
|
|
||||||
### B1. Lo que choca con los barrenos — BLOQUEANTE
|
### B1. Barrenos — cerrado con T27 (paso 1)
|
||||||
|
|
||||||
- **MH4 (185.2, 90.3)** — hoy la broca cortaría tres pistas. Todo lo de abajo va a **≥ 3.1 mm del centro**:
|
Hecho (commit `ff5a8ed` + T27): **MH4 libre** (`/24V`, `/I2C_SCL`, `/I2C_SDA` y `/RGBB_K` ya pasan a más de 3.1 mm, sin cobre ajeno a GND dentro de la abertura de 6 mm), **MH10 libre** (`/CHRG_STAT` desviada) y **MH11 quitado** (estaba a 0.4 mm de `/MAIN5V`). Exclusiones de MH7/MH9/MH10 en MOD1: igual que A1.
|
||||||
- `/24V` en **B.Cu** a 1.0 mm, recta en x = 184.0 de (184.0, 121.81) a (184.0, 70.72): en ese tramo desvíala a x ≤ 181.6 o x ≥ 188.8.
|
|
||||||
- `/I2C_SCL` en **In1**, recta en x = 185.0 de (185.0, 94.4) a (185.0, 88.05), y su tramo F.Cu (185.05, 88.0)→(185.05, 86.05) con la **vía (185.05, 88.0)**, que hoy quedan dentro de la abertura de máscara de 6 mm (cobre expuesto bajo la rondana).
|
|
||||||
- `/RGBB_K` en **In1**, recta en x = 186.0 de (186.0, 86.8) a (186.0, 94.32).
|
|
||||||
- `/I2C_SDA` en In1 en x = 187.22, hoy a 0.2 mm del borde.
|
|
||||||
- **MH11 (170.39, 83.8):** lo mismo que A1 (R107, `/MODEM_RST_MCU`, `/MODEM_RST`), y además `/RGBG_K` en **In2** (169.6, 82.4)→(169.6, 103.18), que pasa por el barreno: desvíala a ≥ 2.6 mm del centro.
|
|
||||||
- **MH10:** igual que A1 (`/CHRG_STAT` en In2).
|
|
||||||
- Exclusiones de MH7/MH9/MH10 en MOD1: igual que A1.
|
|
||||||
|
|
||||||
### B2. Lo que la pasada 2 de V5.6 corrigió y aquí falta — BLOQUEANTE
|
### B2. Lo que la pasada 2 de V5.6 corrigió y aquí falta — BLOQUEANTE
|
||||||
|
|
||||||
@ -190,7 +250,7 @@ Piezas: **U25** (189.19, 68.6, girado −90°): pin 2 VIN (186.19, 67.97), pin 5
|
|||||||
|
|
||||||
### B4. Lo mismo que en la V5.6, mismas coordenadas
|
### B4. Lo mismo que en la V5.6, mismas coordenadas
|
||||||
|
|
||||||
- **A2** sensado de RS1 (RS1, U6, Q7 y C31 están en el mismo lugar; aquí la entrada llega de L22, pero también por la vía (151.0, 115.54)).
|
- **A2** sensado de RS1: **hecho con T27** (RS1, U6, Q7 y C31 están en el mismo lugar que en la V5.6; aquí la entrada llega de L22, también por la vía (151.0, 115.54)). En la V5.7, T27 además enderezó `/CHRG_EN` bajo TP1.
|
||||||
- **A5** `/3V3_MODEM` (aquí 54 mm a 0.5 mm, de L7.2 (141.52, 102.2) a J7.1).
|
- **A5** `/3V3_MODEM` (aquí 54 mm a 0.5 mm, de L7.2 (141.52, 102.2) a J7.1).
|
||||||
- **A7** vías en el EP de U7 · **A8** vías de 0.1 mm en `/NTC` · **A11** stackup (el cajetín de V5.7 ya dice Rev 5.7) y BOM.
|
- **A7** vías en el EP de U7 · **A8** vías de 0.1 mm en `/NTC` · **A11** stackup (el cajetín de V5.7 ya dice Rev 5.7) y BOM.
|
||||||
- **A12** puertos, si Leo los aprueba. Si además aprueba **D10 → SMBJ33CA**, es la misma huella SMB: no hay que mover nada.
|
- **A12** puertos, si Leo los aprueba. Si además aprueba **D10 → SMBJ33CA**, es la misma huella SMB: no hay que mover nada.
|
||||||
@ -201,7 +261,7 @@ Igual que A13, y además resalta `/24V`, `/SW_PWRIN`, `/VEH5V` y `/FB_PWRIN`: na
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
git add hbox-watchdog-v57.kicad_pcb hbox-watchdog-v57.kicad_sch hbox-watchdog-v57.kicad_pro
|
git add hbox-watchdog-v57.kicad_pcb hbox-watchdog-v57.kicad_sch hbox-watchdog-v57.kicad_pro
|
||||||
git commit -m "V5.7 pasada 3: barrenos, pasada 2 replicada (BAT_PLUS/MAIN5V/SYS5V/SW3 externos), fuente U25 (EP, FB, lazo de entrada), sensado Kelvin de RS1"
|
git commit -m "V5.7 pasada 3: pasada 2 replicada (BAT_PLUS/MAIN5V/SYS5V/SW3 externos), fuente U25 (EP, FB, lazo de entrada), limpieza"
|
||||||
git push
|
git push
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -209,7 +269,8 @@ Después: re-auditoría pad a pad, Gerber/BOM/CPL y **5 prototipos** (validació
|
|||||||
|
|
||||||
## Lo que NO hay que hacer
|
## Lo que NO hay que hacer
|
||||||
|
|
||||||
- No mover ni borrar los MH; no quitarles «No en el esquemático».
|
- No mover ni borrar MH4, MH5, MH6, MH7, MH9 ni MH10; no quitarles «No en el esquemático». MH11 ya no va.
|
||||||
|
- No tocar la zona de RS1 que dejó T27: RS1, C31, la vía de entrada y las dos pistas de sensado de 0.25 mm.
|
||||||
- No mover U6, U16, U26, MOD1, J7/J8, P1–P11 ni la fila de conectores.
|
- No mover U6, U16, U26, MOD1, J7/J8, P1–P11 ni la fila de conectores.
|
||||||
- No cambiar la pasta del EP de U6 (6 ventanas, 50 %, intencional).
|
- No cambiar la pasta del EP de U6 (6 ventanas, 50 %, intencional).
|
||||||
- No poner piezas en la cara inferior.
|
- No poner piezas en la cara inferior.
|
||||||
|
|||||||
Binary file not shown.
|
After Width: | Height: | Size: 388 KiB |
@ -1 +1 @@
|
|||||||
Subproject commit 15aad72e20901577aa68b4794d2fe88096f50178
|
Subproject commit f65c830ef4f7ab0349e27adea52ca858561a2a01
|
||||||
@ -1 +1 @@
|
|||||||
Subproject commit aabaa2fffb3819ed3b3118f3cee1dc03d8d533fa
|
Subproject commit 5553527a97f423e78e6f6276b01d657639520f49
|
||||||
Loading…
Reference in New Issue
Block a user