- T44: v6 bd27501 (338 de 350; 12 para Michelle), V5.6/V5.7 93d13e3 (todos), Rev6/Rev7 regenerados (solo F_Silkscreen). - Documento de diseño por tarjeta (página + PDF + esquemático completo + imágenes en img/diseno-*). - Designadores T43: D-22-9 decidido y §6 hecho. Plan de fines de semana de la v6 rev. 1.7. - CLAUDE.md §0 y §2. Submódulos: kicad 93d13e3, firmware 0cac74e, hbox-docs fdc916c. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01QCy5VHMVLkAmftYM6swWmx
15 KiB
Designadores de 0.8 mm en la serigrafía (T44): v6, V5.6 y V5.7 · 22/23-oct-2026
Pregunta (Leo, 22-oct, 18:56): actualizar los designadores de la v6, ver si se pueden acomodar por software y, si no, evaluar qué habría que mover antes de seguir. Leo eligió crecer y acomodar por script para la v6 (D-22-9 (b)).
!!! success "Respuesta corta: 338 de 350 ya miden 0.8 mm; 12 no caben sin mover una pieza"
- v6 (aplicado, HBox_PCB bd27501): los 350 designadores visibles pasan de 0.5 mm / 0.1 mm a 0.8 mm / 0.15 mm, el mínimo de JLC. 81 crecieron en su lugar, 253 se recorrieron junto a su pieza y 4 ya cumplían. No se movió ninguna pieza ni se tocó cobre, así que no hace falta rellenar zonas.
- No caben 12 sin mover piezas: C44, C63, C101, C111, C112, R38, R58, R63, R64, R65, R98 y TP6. Tampoco cabe la leyenda «IGN 12-24V». Se quedan como estaban (0.5 mm) y el DRC los marca. La §3 dice qué estorba en cada uno y cuánto habría que mover.
- DRC de la v6: los mismos 11 errores de siempre (courtyards de margen) y nada nuevo fuera de la serigrafía.
- Encimes de serigrafía: 17 → 4. Serigrafía sobre cobre: 5 → 1. Lo que queda son gráficos de huellas, no textos.
- Avisos de tamaño de texto: 2 → 13, que son los 12 sobrantes más «IGN 12-24V». Es a propósito: la regla nueva del .kicad_dru (0.8 / 0.15 en las dos caras) los deja a la vista de Michelle.
- 0 sin conectar, paridad 0.
- V5.6 y V5.7 (D-22-9 (b), Leo, 23-oct 08:53): aplicado, HBox_PCB 93d13e3. El mismo script coloca todos: 239 de 239 en la V5.6 y 244 de 244 en la V5.7, con todas sus leyendas, sin mover piezas y con el DRC idéntico. Los paquetes Rev6 y Rev7 se regeneraron: solo cambia la serigrafía superior (F_Silkscreen.gto); cobre, máscara, pasta, taladros, BOM, CPL y designadores quedan idénticos (§6).
Arriba, la v6 completa después de T44. En naranja, los 12 designadores que no caben; en azul, la leyenda que tampoco cabe. Abajo, un acercamiento al MCU (U3), antes y después. La cara inferior de la v6 no lleva serigrafía.
1. Qué hace T44
tools/t44_serigrafia.py corre con el Python de KiCad. Usa KiCad solo para leer la geometría y edita el .kicad_pcb
como texto, campo por campo: el diff son las líneas (at …), (size …) y (thickness …) de los textos que cambian,
y nada más.
- Tamaño: todo designador visible de la serigrafía queda en al menos 0.8 × 0.8 mm con trazo de 0.15 mm. Los que ya eran más grandes se quedan como están.
- Lugar: junto a su pieza, a 0° o 90° (que se lea de abajo o de la derecha). Reglas duras:
- nunca sobre el cuerpo de una pieza, la suya o la de otra;
- al menos 0.15 mm de cualquier pad o abertura de máscara, 0.25 mm de un barreno, 0.10 mm de cualquier otra serigrafía y 0.30 mm de la orilla.
- Preferencias:
- fuera de los courtyards ajenos y sin vías debajo (las vías van tapadas);
- centrado en un lado de su pieza;
- siempre más cerca de su pieza que de cualquier otra, para que no se confunda de quién es.
- Si el lugar de antes sigue siendo válido a 0.8 mm, el designador se queda ahí.
- Orden: primero el más apretado. Al final, cada sobrante vuelve a intentar recorriendo hasta dos designadores vecinos. Así entraron R17, R33, R92, R107 y TP12, que en la primera vuelta no cabían.
- Lo que no cabe se queda como estaba (tamaño y lugar) y se reporta con lo que estorba.
- Leyendas sueltas (
gr_text): suben a 0.8 / 0.15 donde están, o con un empujón de hasta 0.6 mm. Con más empujón, «IGN 12-24V» le quitaba a R112 su único lugar, y un designador pesa más que una leyenda. - Garantías: es determinista e idempotente (sobre una tarjeta ya hecha no cambia nada) y deja respaldo
.T44bak.--applyexige que la simulación ya esté en_to_delete/t44/<tarjeta>/y que salga idéntica byte por byte.- Aborta si la tarjeta cambió o si está abierta en KiCad.
Herramientas de apoyo:
tools/t44_drc.py: DRC de KiCad 10 sobre una copia del proyecto completo (con.kicad_pro,.kicad_dru, librerías y tablas), con relleno y paridad.tools/t44_diff.py: prueba que solo cambiaron esas líneas, dentro de designadores y leyendas.tools/t44_export.py: saca la serigrafía para la figura.
2. Resultado en la v6
| Designadores | Leyendas | |
|---|---|---|
| Crecieron en su lugar | 81 | BOOT, NRST, RS485 |
| Se recorrieron junto a su pieza | 253 | RS232 (0.2 mm hacia arriba) |
| Ya cumplían | 4 | «EinarBoard v6» (2.0 mm) |
| Solo trazo a 0.15 mm (ya medían 1.0 mm) | — | «www.helgen.tech», «HBOX 6.0 - 2026-10» (la versión) |
| No caben | 12 | «IGN 12-24V» |
| Ocultos (no se imprimen, no se tocaron) | MH1–MH5, SW1, SW2 | — |
DRC de KiCad 10 sobre copias del proyecto, con relleno, paridad y todos los errores de pista. La copia probada y el archivo vivo dan exactamente lo mismo:
| Tipo | Antes | Después | Qué queda |
|---|---|---|---|
Errores (courtyards_overlap) |
11 | 11 | Los 11 courtyards de margen conocidos |
silk_overlap |
17 | 4 | JP2 ↔ C76: dos líneas de huella que se cruzan |
silk_over_copper |
5 | 1 | La serigrafía de D20 sobre la abertura de MH3 |
silk_edge_clearance |
1 | 1 | El polígono de J19 en la orilla |
text_height / text_thickness |
2 / 0 | 13 / 13 | Los 12 sobrantes y «IGN 12-24V», con la regla nueva |
track_width, lib_footprint_*, track_dangling |
137 · 86 · 1 | igual | — |
| Sin conectar · paridad | 0 · 0 | 0 · 0 | — |
Los tres que quedan en silk_* son gráficos de huellas, no textos. T44 no los toca, y Michelle los ve en su DRC.
3. Los que no caben: qué habría que mover
Para cada sobrante, el script prueba los cuatro lados de la pieza con el designador pegado y centrado. Reporta lo que estorba y cuánto tendría que recorrerse para dejar el hueco. Las cifras salen de las cajas de los pads y cuerpos (± 0.1 mm). Si una opción solo pide acomodar el designador de otra pieza, Michelle lo hace a mano en segundos.
| Sobrante | Pieza | Dónde | La opción más barata | Otras |
|---|---|---|---|---|
| R58 | 100k 0603 | junto a U10 y D16 | Mover C64 0.25 mm hacia abajo: el designador va debajo de R58 | R57 0.3 mm hacia arriba |
| R98 | 100k 0603 | entre D30, D33 y Q10 | Recorrer el designador de D30: R98 va vertical a su derecha | D30 0.6 mm hacia arriba |
| TP6 | USB_BOOT del módem | junto a U5 y R38 | Recorrer el designador de C59: TP6 va debajo | R38 0.55 mm hacia arriba |
| C101 | 47 µF 1210 | entre C100, R86 y D32 | R86 0.65 mm hacia arriba y recorrer el designador de R93 | C100 0.85 mm a la izquierda |
| C44 | 22 µF 0805 | entre C34, Y2 y R33 | R33 0.8 mm a la derecha (designador vertical) | C34 0.9 mm hacia arriba |
| C111 | 39 pF 0402 (U22) | entre R106–R108 y U22 | R108 1.1 mm hacia abajo: el designador va debajo de C111 | Ocultar |
| R38 | 100k 0603 | pegada a U6 (módem) | C47 1.0 mm y U5 0.3 mm a la izquierda | Ocultar |
| R63 · R64 · R65 · C63 | 0R · 22R · 0R · 100 nF | cuatro piezas en ≈ 6 × 6 mm entre U6 (módem), J11 (SIM) y U13 | Cada una necesita ≈ 0.6–1.0 mm de una vecina. R65: U13 0.56 mm a la derecha. R63: R64 0.8 mm a la derecha. R64: U13 0.86 mm o R65 0.9 mm hacia abajo. C63: R63 1.0 mm | Ocultar las cuatro |
| C112 | 100 nF 0402 | entre U25, L6, D34 y MH4 | Ninguna razonable: MH4 no se mueve y U25/L6 son la fuente | Ocultar |
Si no se quiere mover nada, la otra salida es ocultar esos designadores en la serigrafía: en KiCad, desmarcar Visible en el campo Reference. Siguen en el plano de ensamble (F.Fab), en el mapa de designadores de T43 y en el CPL, que es lo que usa JLC para colocar.
«IGN 12-24V» necesita ≈ 0.85 mm más a la izquierda, y ese lugar es el del designador de R112 (la resistencia de 22 k de la ignición). Hay dos caminos: correr la leyenda a mano a otro lugar, o dejarla en 0.5 mm.
4. Reglas nuevas en el proyecto de la v6
.kicad_dru: la regla «Minimum text height and thickness 1» (F.Silkscreen ≥ 0.5 mm / 0.1 mm) se cambia por «T44 texto en serigrafía F» y «… B»: ≥ 0.8 mm de alto y ≥ 0.15 mm de trazo en las dos caras. Lo que no cumpla aparece como aviso en el DRC..kicad_pro:- el texto de serigrafía por omisión pasa de 1.0 mm / 0.1 mm a 0.8 mm / 0.15 mm;
- se activa Board Setup → Text & Graphics → aplicar a los campos de las huellas, para que las piezas nuevas que Michelle agregue con Update PCB lleguen ya a 0.8 / 0.15. Si KiCad hace algo raro al actualizar huellas, esa casilla se puede desmarcar sin perder nada.
5. Para Michelle (fin de semana del 24-oct)
- Antes de abrir la v6:
git pull --ff-onlyen HBox_PCB.git log -1debe mostrarbd27501o un commit posterior. - Los 12 sobrantes y la leyenda aparecen en el DRC como text height / text thickness. En cada uno hay dos caminos: aplicar la opción de la §3 en la misma pasada en que ya mueves piezas de ese bloque, u ocultar el designador.
- Si mueves piezas (bloques A–H del plan), no acomodes designadores a mano uno por uno. Al cerrar el layout, Claude corre T43 y luego T44 y deja todo en orden y a 0.8 mm (≈ 1 min). Si quieres acomodar alguno, que sea a 0.8 mm con trazo de 0.15 mm.
6. V5.6 y V5.7: aplicado el 23-oct (D-22-9 (b))
!!! success "Aplicado el 23-oct a las 08:55 (Leo: «yes D-22-9», 08:53), HBox_PCB 93d13e3"
- Los archivos vivos quedaron idénticos byte por byte a las copias probadas la noche anterior: V5.6 pcb 99d7a0d4, dru 9eca70d6, pro 7d091196; V5.7 pcb ec7b3295, dru 2afb2aee, pro b3b9669b (respaldo .T44bak).
- DRC con relleno y paridad, idéntico a la base en las dos: 3 errores (los NPTH de MOD1, excluidos por diseño), 0 sin conectar, paridad igual.
- Paquetes regenerados con el Fabrication Toolkit (HBOX_v5_Rev6_PROD.zip, HBOX_v5_Rev7_PROD.zip) y comparados capa por capa con los de anoche: solo cambia F_Silkscreen.gto. Cobre (F, In1, In2, B), máscaras, pasta, orilla, taladros y mapas: iguales salvo el encabezado con la fecha. BOM, CPL y designadores: sin cambios (107 renglones / 226 piezas y 115 / 229).
- En el visor de JLC, al subir el pedido, basta una mirada a la serigrafía superior.
Lo que dio el script (en simulación el 22-oct y, el 23-oct, aplicado igual):
| Tarjeta | Designadores visibles | Crecen en su lugar | Se recorren | No caben | Leyendas | DRC (copia) |
|---|---|---|---|---|---|---|
V5.6 (hbox-watchdog-v5) |
238 arriba + MOD1 abajo | 113 | 125 | 0 | 18 crecen en su lugar; 3 ya cumplían | Idéntico: 3 errores (los NPTH de MOD1, conocidos), 96 avisos, 0 sin conectar, paridad 0 |
V5.7 (hbox-watchdog-v57) |
243 arriba + MOD1 abajo | 112 | 131 | 0 | 18 crecen en su lugar; 3 ya cumplían | Idéntico: 3 errores (MOD1), 98 avisos, 0 sin conectar, paridad 0 |
En las dos cabe todo porque tienen más espacio que la v6 (no llevan el módem ni el GNSS a bordo). Las leyendas del zócalo XBee (TX, RX, 3V3, GND, USB±, RESET, V_USB, VREF), «4G NTRIP RESET», «BOOT», «NRST», «IGN» y «RS485/RS232» quedan a 0.8 mm o más con trazo de 0.15 mm.
Recomendación de Claude: (b) también para el piloto. Leo la aceptó el 23-oct a las 08:53. En §5 del documento de T43 se estimaba ≈ 2 h de script y ½ día de acomodo por tarjeta. Ya no:
- El script está hecho y no queda nada que acomodar.
- El cobre no cambia; en el Gerber solo cambia la serigrafía superior.
- El banco del piloto se hace con la tarjeta en la mano, y Jesús puede leer cada designador.
El único costo es regenerar y verificar los dos paquetes antes de pagar.
Lo que se corrió el 23-oct a las 08:55, con KiCad cerrado (las simulaciones dieron los mismos sha):
cd 03-Architecture-Hardware/kicad
PY=/Applications/KiCad/KiCad.app/Contents/Frameworks/Python.framework/Versions/Current/bin/python3
$PY tools/t44_serigrafia.py hbox-watchdog-v5 # simulación: debe dar pcb 99d7a0d4…
$PY tools/t44_serigrafia.py hbox-watchdog-v57 # simulación: debe dar pcb ec7b3295…
$PY tools/t44_serigrafia.py hbox-watchdog-v5 --apply
$PY tools/t44_serigrafia.py hbox-watchdog-v57 --apply
$PY tools/fab_package.py hbox-watchdog-v5 HBOX_v5_Rev6_PROD
$PY tools/fab_package.py hbox-watchdog-v57 HBOX_v5_Rev7_PROD
# luego: verify_mac.sh de la auditoría final (5 min) y, en el visor de JLC, una mirada a la serigrafía superior
Las copias probadas están en _to_delete/t44/hbox-watchdog-v5/ (pcb 99d7a0d4, dru 9eca70d6, pro 7d091196;
entrada b547836b) y _to_delete/t44/hbox-watchdog-v57/ (pcb ec7b3295, dru 2afb2aee, pro b3b9669b; entrada
4f05a3fd). Si alguien guarda la V5.6 o la V5.7 en KiCad antes, --apply se niega y basta con volver a correr la
simulación.
7. Cómo volver a correrlo
cd 03-Architecture-Hardware/kicad # KiCad cerrado, árbol limpio
PY=/Applications/KiCad/KiCad.app/Contents/Frameworks/Python.framework/Versions/Current/bin/python3
$PY tools/t44_serigrafia.py hbox-watchdog-v6 # simulación → _to_delete/t44/hbox-watchdog-v6/ (+ t44_reporte.md)
O=_to_delete/t44/hbox-watchdog-v6/hbox-watchdog-v6
python3 tools/t44_drc.py hbox-watchdog-v6 _to_delete/t44/drc --pcb $O.kicad_pcb --dru $O.kicad_dru --pro $O.kicad_pro
python3 tools/t44_diff.py hbox-watchdog-v6.kicad_pcb $O.kicad_pcb # solo (at)/(size)/(thickness) de textos
$PY tools/t44_serigrafia.py hbox-watchdog-v6 --apply # escribe lo mismo que la simulación, o se niega
Orden cuando se cierre un layout: T43 (numeración por posición) → T44 (tamaño y lugar) → DRC → commit.
8. Archivos
| Archivo | sha256 (inicio) |
|---|---|
kicad/hbox-watchdog-v6.kicad_pcb |
35255855 → 6a5be87c |
kicad/hbox-watchdog-v6.kicad_dru |
8f184028 → dd68c77e |
kicad/hbox-watchdog-v6.kicad_pro |
16ee8123 → 46d79c20 |
kicad/tools/t44_serigrafia.py · t44_drc.py · t44_diff.py · t44_export.py |
en bd27501 |
Figura img/2026-10-22_Drogheda_v6-T44-Serigrafia_v1.0.png |
— |
Commit de la v6: HBox_PCB bd27501 («T44: serigrafía de la v6 a 0.8 mm / 0.15 mm, designadores colocados por
script»). Respaldos locales *.T44bak (no van al repo).
