hbox-docs/docs/hardware/v6-t44-serigrafia.md

204 lines
16 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: "Designadores de la serigrafía a 0.8 mm con trazo de 0.15 mm, colocados por script (T44): v6, V5.6 y V5.7 — D-22-9 (22/23-oct-2026)"
tags: [project-drogheda, hardware, hbox, einarboard, v6, v5.6, v5.7, serigrafia, designadores, jlc, t44]
project: Project Drogheda
author: Helgen Technologies (script y revisión: Claude; decide: Leo)
date: 2026-10-22
version: 1.2
status: "APLICADO en las tres: v6 en HBox_PCB bd27501 (22-oct); V5.6 y V5.7 en 93d13e3 (23-oct, D-22-9 (b), Leo 08:53), con Rev6/Rev7 regenerados (solo cambia la serigrafía superior); T44b (0.40 mm entre textos) en V5.6/V5.7: d19c832."
audience: Leo (D-22-9 para V5.6/V5.7), Michelle (layout de la v6), Aldair (pedido), Jesús (banco)
---
# 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](https://jlcpcb.com/blog/character-design-specifications). 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](#3-los-que-no-caben) 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](#6-v56-v57)). **T44b** (09:15): 0.40 mm entre textos para que no se lean pegados (como «R31R32R33»); 44 designadores más se recorren en cada una, HBox_PCB `d19c832`.
![v6: serigrafía después de T44](img/2026-10-22_Drogheda_v6-T44-Serigrafia_v1.0.png)
*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 { #1-que-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`.
- `--apply` exige 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 { #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 { #3-los-que-no-caben }
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](designadores-t43-22oct.md#2-resultado-por-tarjeta) 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 { #4-reglas-nuevas }
- **`.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) { #5-para-michelle }
- **Antes de abrir la v6:** `git pull --ff-only` en HBox_PCB. `git log -1` debe mostrar `bd27501` o 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)) { #6-v56-v57 }
!!! 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.
!!! tip "T44b (23-oct, 09:15): 0.40 mm entre textos, HBox_PCB `d19c832`"
Al revisar la serigrafía de la V5.6 se vio que, con solo 0.10 mm entre textos, grupos de designadores vecinos se leían como una sola palabra: «R31R32R33» encima de sus tres resistencias o «D9TP4TP5». El DRC no lo marca, pero en el banco estorba. Ahora el script deja **0.40 mm entre un designador y cualquier otro texto** (designadores, leyendas y campos); los gráficos de serigrafía siguen a 0.10 mm.
- **V5.6** (pcb `ee846ebe`) y **V5.7** (pcb `1f6bf63c`): 44 designadores más se recorren en cada una (por ejemplo, R33 pasa abajo de su resistencia), **0 pendientes**. DRC idéntico al de T44.
- Rev6 y Rev7 regenerados otra vez: solo cambia `F_Silkscreen.gto`.
- **v6:** no se tocó hoy (sigue `bd27501`). T44b corre al cierre del layout, junto con T43; con la tarjeta de hoy dejaría 17 pendientes en vez de 12.
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](designadores-t43-22oct.md#5-d-22-9-tamano-de-los-designadores-en-la-serigrafia-decide-leo) 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):
```bash
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 { #7-como-volver-a-correrlo }
```bash
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 { #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).