Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01QCy5VHMVLkAmftYM6swWmx
197 lines
15 KiB
Markdown
197 lines
15 KiB
Markdown
---
|
||
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.1
|
||
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)."
|
||
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)).
|
||
|
||

|
||
|
||
*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.
|
||
|
||
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).
|