
Devkit B F28P551
Nicolboy/KICAD-C2000-devkit
Shield d'isolation C2000 sous KiCad 10 — connecteur identique à 100 % entre F280037 et F28P551, brochage généré depuis le Markdown

Shield d'isolation C2000 sous KiCad 10 — connecteur identique à 100 % entre F280037 et F28P551, brochage généré depuis le Markdown
Devkit A F280037 is an open-source printed circuit board by Nicolboy, from the Nicolboy/KICAD-C2000-devkit repository on GitHub, published under the CERN-OHL-S-2.0 licence. It is a 2-layer board of 28 × 75 mm with 27 parts on 73 nets.
It is built around the MCP1700-3302E/TT. Its parts include 14 capacitors, 5 resistors, 4 connectors, 3 ICs and 1 diode.
Shield d'isolation et cartes devkit pour TMS320 C2000, conçus sous KiCad 10. Le brochage est décrit en Markdown, les symboles et les projets KiCad en sont générés — le document reste la source de vérité, pas le schéma.
Cible : une commande numérique de convertisseur de puissance isolé, pilotée par un C2000 et supervisée par un ESP32-C6 pour le Wi-Fi et la mise à jour FOTA.
| Carte | Rôle |
|---|---|
| Puissance | Conversion, barrière d'isolation, isolateurs (AMC0311S, AMC0300R, ISO7710, DPC817), shunts en connexion Kelvin, régulateurs |
| Shield | Support mécanique des deux devkits, adaptation de brochage, conditionnement analogique, protections. Aucun composant isolé |
| Devkit C2000 | MCU, deux LDO 3,3 V, JTAG, bouton reset, LED, cavalier de boot |
| Devkit ESP32 | Wi-Fi, hôte FOTA, écran OLED en SPI |
L'isolation est entièrement confinée à la carte de puissance. Le shield ne fait que du conditionnement côté froid : c'est ce qui permet de le fabriquer en 2 couches à la maison sans se poser de question de ligne de fuite.
Liaison shield ↔ puissance : quatre nappes 2 × 8 à alternance signal / masse stricte 1:1, aucune alimentation dedans. Le +5 V passe par un connecteur séparé — les 500 mA de la commande n'ont pas à partager leur retour avec les masses de référence des voies ADC.
Le connecteur est identique à 100 % entre le F280037 et le F28P551, 56 positions sur 56. Les deux devkits sont interchangeables sur le shield.
Ce n'est pas une coïncidence, c'est le résultat d'un arbitrage : les LED ont été délibérément posées sur les entrées/sorties non communes aux deux boîtiers, pour que toutes les broches qui traversent le connecteur, elles, soient communes.
Le fichier doc/spec-devkit.md fait autorité. Les
symboles KiCad, les schémas et les vérifications en découlent par génération —
on ne modifie jamais un .kicad_sym à la main.
doc/spec-devkit.md source de vérité, relue par un humain
│
├── gen_symbole_mcu.py → build/C2000_MCU_LQFP64.kicad_sym
│ (dimensionne le symbole depuis les noms)
│
└── gen_devkit.py → devkit_A_F280037.* devkit_B_F28P551.*
▲ kicad_gen.py — primitives communes
│
src/*.kicad_sch schémas source des devkits, versionnés
shield.* édité à la main dans KiCad — pas généréL'intérêt n'est pas le gain de temps, c'est que les règles de conception deviennent exécutables. Les générateurs vérifient ce que le document promet : unicité des broches et des GPIO, masse de part et d'autre des voies de mesure de courant, présence des réserves. Une divergence entre l'intention et le schéma est une erreur de script, pas un oubli qu'on découvre au routage.
gen_symbole_mcu.py dimensionne par exemple le corps du symbole à partir de la
longueur réelle du nom de broche le plus long, pour que les textes des quatre
faces ne se croisent jamais — plutôt qu'une taille choisie à l'œil qui casse au
premier nom un peu long.
Les schémas ne contiennent d'ailleurs aucun fil : toute la connectivité passe par des étiquettes globales posées sur le point de connexion de chaque broche. C'est ce qui permet d'ajouter un composant par script sans rien router.
Une part inhabituelle du travail est faite par un agent : lire les datasheets, en extraire les contraintes, écrire la spécification, générer les symboles, poser les composants et choisir les boîtiers. Le placement et le routage restent manuels — ils encodent des choix que rien ne devine sur une chaîne de mesure de courant.
doc/methode-kicad-claude.md documente cette
façon de travailler : le partage des rôles, le déroulé d'une séance, et surtout
les pièges de format rencontrés — chacun avec sa signature, parce que KiCad
répond « échec du chargement » et rien de plus quand un fichier est malformé.
Trois, pas un de plus.
| Projet | Contenu |
|---|---|
shield.* | Shield, connecteurs devkit 2 × 28, quatre nappes, ESP32-C6 |
devkit_A_F280037.* | Devkit TMS320F280037CSPM |
devkit_B_F28P551.* | Devkit TMS320F28P551SG5PM |
KiCad 10 et Python 3.12 requis. kicad-cli doit être dans le PATH.
python gen_symbole_mcu.py -o build/ # symboles MCU
python gen_devkit.py --force # les deux projets devkit
kicad-cli sch erc --exit-code-violations <projet>.kicad_sch
kicad-cli pcb drc --exit-code-violations <projet>.kicad_pcbshield.* n'apparaît pas ici : il est édité à la main et ne se régénère pas.
Les schémas de devkit produits à la racine sont en revanche jetables — toute
retouche manuelle y est perdue au prochain --force. Ce qui doit survivre se
modifie dans src/ ou dans le générateur.
Chaque carte existe en deux versions de fabrication : 2 couches gravées à la maison — pistes 1 mm, vias 2 mm, perçage 0,8 mm — pour itérer vite sur la mécanique, et 4 couches en fabrication externe, avec plan de masse continu sous la zone analogique. Même schéma, même brochage, seul le PCB change.
Travail en cours, et le dire plutôt que de le masquer :
I2C_CK/DT,
SPI_CK/DO/DI/CS...) et alimentations, plutôt que les noms
spécialisés du schéma (Vin, I_SHUNT1_CMP...), pour que le connecteur se
lise seul. L'ERC du schéma reste à 41 violations, de la même famille que
les autres projets (pins de réserve non pilotées).PWR_FLAG par
net. Le routage des signaux n'est pas fait : il demande des choix de
conception qui n'ont pas leur place dans un générateur. D'où les 108
violations d'ERC (pin_not_connected attendus). PCB non routé.doc/, pas encore dessinée.Les points laissés ouverts — caractéristiques de sortie des AMC, courant
d'entrée du REFIN, choix de VREFHI — sont listés en fin de
doc/decisions.md. Ils attendent une lecture de datasheet,
pas une estimation.
Certains choix ressemblent à des inefficacités sans en être. Les douze sont
documentés dans doc/decisions.md, chacun avec sa raison et
ce qui casse si on le défait — entre autres :
_MES filtré et _CMP direct. Le chemin
comparateur attaque le CMPSS sans filtre anti-repliement : pas de retard sur
le déclenchement de la Trip Zone, et un défaut du filtre ne désarme pas la
protection.CERN-OHL-S v2 — CERN Open Hardware Licence, fortement réciproque.
Tu peux étudier, modifier, fabriquer et distribuer ce matériel. En contrepartie, si tu distribues un produit fondé dessus, ou une version modifiée, tu dois publier les sources correspondantes sous la même licence.
C'est la licence de référence du matériel libre, l'équivalent de la GPL côté logiciel. Si tu préfères une réciprocité limitée à la carte elle-même, ou pas de réciprocité du tout, les variantes CERN-OHL-W et CERN-OHL-P existent.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 7 | 100n | Capacitor_SMD:C_0805_2012Metric | C5, C6, C8, C9, C10, C11, C14 |
| 5 | 10u | Capacitor_SMD:C_0805_2012Metric | C1, C2, C3, C4, C12 |
| 3 | 10k | Resistor_SMD:R_0805_2012Metric | R2, R3, R4 |
| 2 | 2u2 | Capacitor_SMD:C_0805_2012Metric | C7, C13 |
| 2 | MCP1700-3302E/TT | Package_TO_SOT_SMD:SOT-23 | U2, U3 |
| 1 | 1k | Resistor_SMD:R_0805_2012Metric | R5 |
| 1 | 2k2 | Resistor_SMD:R_0805_2012Metric | R1 |
| 1 | DEVKIT_C2000_ROW_A | Connector_PinHeader_2.54mm:PinHeader_1x28_P2.54mm_Vertical | J1 |
| 1 | DEVKIT_C2000_ROW_B | Connector_PinHeader_2.54mm:PinHeader_1x28_P2.54mm_Vertical | J2 |
| 1 | LED_BICOLORE_3MM | LED_THT:LED_D3.0mm-3 | D1 |
| 1 | RESET | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | J4 |
| 1 | TC2050 | Connector:Tag-Connect_TC2050-IDC-NL_2x05_P1.27mm_Vertical | J3 |
| 1 | TMS320F280037CSPM | Package_QFP:LQFP-64_10x10mm_P0.5mm | U1 |

Nicolboy/KICAD-C2000-devkit
Shield d'isolation C2000 sous KiCad 10 — connecteur identique à 100 % entre F280037 et F28P551, brochage généré depuis le Markdown


sportiduino/sportiduino
Electronic timing system for orienteering and similar outdoor sports events on Arduino


meetjestad/mjs_pcb
This repository contains various versions of the sensor station PCB used by Meetjestad.


SpaceTeam/uHoubolt_PCB_ECU
µHoubolt Engine Control Unit KiCad project


Afuu-coder/Cargofy
🚚 Cargofy — AI-Powered Cold Chain Intelligence Platform | Autonomous Rerouting Agent | Google ADK | ULIP Integration | FAR AWAY 2026 Hackathon
It measures 28 × 75 mm and has 2 copper layers, 1.6 mm thick.
27 parts, built around the MCP1700-3302E/TT. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the Nicolboy/KICAD-C2000-devkit repository on GitHub, at the commit this page was made from: the board is devkit_A_F280037.kicad_pcb and its schematic devkit_A_F280037.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository publishes it under the CERN-OHL-S-2.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).