M2E(1)

📦 version 5.1.1-unstable-2025-02, in nixos 26.05, nixpkgs unstable

💖 M2E(1) — la page de mbk2eagle 💖

okay so bestie, on est officiellement sur la manpage de m2e, et franchement elle est pas si méchante que ça. accroche-toi, on va tout se dire dans l'ordre, no cap ✨


🌸 DESCRIPTION (le tea du jour) 🌸

Donc le concept : t'as une description structurelle de ta carte (un fichier .vst), et l'outil il génère, à partir de ça, un fichier script utilisable par Eagle (le logiciel de routage de cartes). Et ce fichier, il sert à refiler à Eagle deux trucs : la liste des composants utilisés, et l'interconnexion de ces mêmes composants. iconic 👑

Mais 🚨 la description structurelle toute seule, elle suffit pas, fr fr. Il faut la compléter avec trois types de fichiers :

  • Un fichier nom__de_figure.pin → la description des connexions de la carte circuit imprimé, avec son environnement (les connecteurs de la carte).
  • Un ou plusieurs fichiers composants.pin → les différents modèles de composants qui doivent être implantés sur la carte circuit imprimé.
  • Un fichier nom__de_figure.cls → là-dedans on définit la classe des signaux, plus la rotation et le placement des différentes instances des modèles. Petit détail qui compte : par défaut, la classe d'un signal c'est la classe 0.
💡 Rappel qui sauve des vies : dans les fichiers, les lignes vides ou celles qui commencent par # sont ignorées.

🎀 1. Organisation du fichier nom__de_figure.pin 🎀

Dans ce fichier, tu dois placer, pour chaque connecteur de la carte, les 2 rubriques dans l'ordre (oui oui, l'ordre c'est sacré ici) :

Rubrique 1 — /MODELE <instance> <modele> <rotation> <(coordonnees)>

  • <instance> — c'est le nom d'instance du connecteur.
  • <modele> — c'est le nom du fichier Eagle qui décrit le connecteur. Sa forme : nom_modele@nom_bibliotheque
  • <rotation> — tu peux mettre une de ces valeurs : R0, R90, R180, R270.
  • <(coordonnees)> — la position provisoire du connecteur (x y). Il doit être entièrement dans la zone utilisable, qui est actuellement de 100x160 mm.

Rubrique 2 — /CONNECTEURS

Là tu énumères les signaux du connecteur, à raison d'un signal par ligne, sous la forme :

<repère de broche> <nom du signal>

EXEMPLE

/MODELE P1 IBM8BIT@con-pc R90 (6.5 0.5)

/CONNECTEURS B1      VSS B3      VDD B29     VDD B31     VSS

A2      DATA(7)  A3      DATA(6)  A4      DATA(5) A5      DATA(4)
A6      DATA(3) A7      DATA(2) A8      DATA(1) A9      DATA(0)

A11     AEN

🦋 2. Organisation des fichiers composants.pin 🦋

Dans ce fichier, tu dois placer 2 rubriques dans l'ordre (again, l'ordre compte 💅) :

Rubrique 1 — /MODELE <modele>

<modele> correspond au nom du fichier Eagle décrivant le connecteur. Il est de la forme : nom_modele@nom_bibliotheque

Rubrique 2 — /CONNECTEURS

On énumère les signaux du composant sous la forme :

<repère de broche> <nom du signal>

EXEMPLE

/MODELE DIL08@dil (0.5 3.0)

/CONNECTEURS 1   DATA 2   CLK 3   OE_N 4   CE_N 5   VSS 6   CEO 7
VPP 8   VDD

🧚 3. Organisation du fichier nom__de_figure.cls 🧚

Dans ce fichier, tu dois placer 2 rubriques dans l'ordre, évidemment :

Rubrique 1 — /CLASS

On énumère ensuite les signaux avec leur numéro de classe, à raison d'un signal par ligne, sous la forme :

<nom du signal> <numéro de la classe>

Petit tips qui fait gagner du temps : inutile d'énumérer les signaux de classe 0. Et cette rubrique peut être vide… mais il doit y avoir /CLASS, sinon c'est le drame 😭

Rubrique 2 — /PLACEMENT

On énumère ensuite les instances avec la rotation à effectuer et les coordonnées de placement, à raison d'une instance par ligne, sous la forme :

<nom de l'instance> <rotation> <coordonnées>
  • <rotation> — tu peux mettre une de ces valeurs : R0, R90, R180, R270.
  • <(coordonnees)> — la position provisoire du composant (x y). Il doit être entièrement dans la zone utilisable de la carte, qui est actuellement de 100x160 mm.

EXEMPLE

/CLASS CLK  1 VSS  2 VDD  2

/PLACEMENT IC1  R90   (4.25 1.2) IC2  R180  (3.25  1.2)  IC3   R0
(3.25 1.4)

🌈 4. Ligne de commande 🌈

m2e [-v n] [-o output] figure
  • -v n — définit le niveau des messages affichés ; par défaut 1.
    • 0 : affiche seulement les erreurs
    • 1 : affiche les erreurs et les warning
    • 2 : affiche en plus les noms des fichiers .pin utilisés
    • 3 : mode tracé pour le debug
  • -o output — elle apparaît dans la ligne de commande ci-dessus ; la page d'origine ne dit rien de plus à son sujet, donc je vais pas inventer, ngl 🙈
  • figure — pareil, c'est l'argument qu'on passe à la commande, et la page ne développe pas plus.

💜 5. Variable d'environnement 💜

M2E_PIN_LIB doit être définie. Elle donne les chemins d'accès aux fichiers .pin.

🚨 Genre elle doit être définie, okay ? C'est pas un décor optionnel, c'est écrit noir sur blanc, periodt.

voilà bestie, tu sais tout 💖 cette page c'est mbk2eagle, et elle est datée du 01/07/2002. bisous, streame pas trop tes .pin 😘🎀

📦 where this page comes from