KiCad

Fiche logiciel validé
  • Création ou MAJ importante : 12/09/13
  • Correction mineure : 19/02/14
Mots-clés

KiCad : CAO électronique pour circuits imprimés

Description
Fonctionnalités générales

KiCad est un logiciel de conception CAO pour circuits imprimés (PCB) qui intègre :

  • gestionnaire de projet ;
  • saisie schématique et création de composants ;
  • placement-routage (layout) jusqu'à 16 couches et création d'empreintes ;
  • visionneur-éditeur de fichiers gerber ;
  • calculatrice spéciale.

Cet article utilise des termes de jargon professionnel. Pour une introduction au sujet, lire par exemple ceci au sujet de la conception de circuits intégrés.

Gestionnaire de projet

Le gestionnaire de projet (GP) donne une vision générale du projet. Il montre l'arborescence du projet (dossiers/fichiers) et permet de naviguer au sein de cette arborescence. Le GP qui est également responsable de la gestion des fichiers grâce aux fonctions classiques ouvrir/renommer/effacer et aussi une fonction d'archivage (fichier zip). Enfin, il donne accès aux différents composants de la suite cités ci-dessous.

Saisie de schématique avec Eeschema

La partie "saisie de schématique" du logiciel offre plusieurs fonctionnalités :

  • saisie hiérarchique ;
  • bus ;
  • numérotation des composants automatique et hiérarchique ;
  • génération de la liste des composants (BOM, Bill Of Materials) en prenant en compte les champs ajoutés par l'utilisateur aux composants ;
  • labels locaux, hiérarchiques ou globaux ;
  • importation d'images bitmap.

La génération de la netlist dans plusieurs formats (natif, orcadPCB2, cadStar et Spice) se fait directement depuis Eeschema. Le résultat d'une saisie schématique est plutôt propre et l'impression se fait aisément puisque le paramétrage de la feuille impose le choix d'un format de papier et inclut en conséquence le cartouche.

Routage avec Pcbnew

Routeur manuel qui offre de nombreuses options aisément utilisables :

  • Vérificateur de règles de conception (DRC, design rule check) en temps réel : lorsque l'utilisateur trace une piste, le logiciel regarde en temps réel si cette dernière est cohérente avec les règles préalablement définies (en particulier largeur de pistes et distances aux autre éléments).
  • Affichage sélectif des lignes de connexion (ratsnest, pour une définition en anglais, voir ici) : on peut choisir le niveau de ratsnest que l'on souhaite afficher. Il est donc possible de les cacher, les afficher, les afficher pour un ou plusieurs composants. Il est aussi possible de n'afficher que le ratsnest de la piste en cours de traçage.
  • Choix du niveau de détails affichés : plan en mode contour ou plein, piste en mode contour ou plein, via en mode contour ou plein, pads en mode contour ou plein. Toutes ces options sont indépendantes les unes des autres.
  • routage automatique : peut se faire depuis KiCad directement (interne) ou depuis un outil externe à KiCad, ce dernier générant alors un fichier compatible avec Spectra.
Interopérabilité
  • Tous les fichiers produits et utilisés par KiCad sont des fichiers ASCII, la documentation fournit la spécification détaillée des différents formats.
  • Génération de netlist dans plusieurs formats (natif, orcadPCB2, cadStar et Spice).
Contexte d'utilisation dans mon laboratoire/service

L'auteur (au laboratoire Subatech) utilise ce logiciel pour la conception de toutes ses cartes. Jusqu'à présent, il a conçu 3 cartes 4 couches :

  • une carte d'alimentation pour un ASIC ;
  • une carte numérique ;
  • une carte d'interface vide/Xénon liquide avec via (connections) non débouchant.

Les cartes ont été produites et testées avec succès.

Il a également conçu une carte analogique 6 couches, produite, reçue, câblée et testée avec succès.

Au CINaM, ont été réalisé à peu prés 6 ou 7 circuits imprimés dans le domaine professionnel. Il s'agit de petites carte de quelques centimètres carrés avec peu de composants. Le but principal, dans chacun des cas, étant de réaliser un circuit imprimé qui fasse l'interface entre des appareils de mesure (via des prises BNC) et la prise de contact (au moyen de pointes de touches directement soudé sur le CI) sur des échantillons de nos chercheurs afin d'en faire les caractérisations électriques.

Dans le domaine personnel, un des relecteurs a réalisé quelques (environ 4 ou 5) petites cartes également telles que : interface série, carte d'alimentation simple, capteurs divers, ...

Limitations, difficultés, fonctionnalités importantes non couvertes

Pas de routage de lignes différentielles.

Environnement du logiciel
Distributions dans lesquelles ce logiciel est intégré

De nombreuses distributions offrent KiCad dans leurs dépôts (par exemple Debian, Fedora, Ubuntu (voir aussi instructions pour installation sur Ubuntu)).

Plates-formes

GNU/Linux, Windows, Mac OS X

Logiciels connexes
Autres logiciels aux fonctionnalités équivalentes
  • gEDA, gratuit, sous licence libre (GPL) : c'est un logiciel qui semble lui aussi très performant. Pas d'argument en sa faveur, ni en sa défaveur puisque je ne l'ai pas testé.
  • Eagle, payant, sous licence propriétaire.
Environnement de développement
Type de structure associée au développement

Communauté de développeurs très active et internationale.

Eléments de pérennité
  • Ce projet, initié par Jean-Pierre Charras, chercheur a Grenoble au GIPSA-LAB et enseignant en électronique à l'IUT de Saint Martin d'Hères est maintenant mature et soutenu par une communauté de développeurs extrêmement active et d'utilisateurs de nombreux pays : http://iut-tice.ujf-grenoble.fr/kicad/

  • Cette communauté comprend trois développeurs principaux ainsi qu'une douzaine de contributeurs réguliers.

Références d'utilisateurs institutionnels
Environnement utilisateur
Liste de diffusion ou de discussion, support et forums
Documentation utilisateur

Sur la page de documentation, on trouve des didacticiels d'assez bonne qualité, les documents de référence pour les deux composants principaux de la suite, à savoir Eeschema et Pcbnew.

Divers (astuces, actualités, sécurité)

Pour l'installation, il est possible de prendre la version des dépôts de sa distribution ou de télécharger une version binaire sur le site de KiCad.

Une troisième possibilité consiste à télécharger la version dans des dépôts Launchpad. Cette version se divise en deux sous branches : testing et stable. La branche stable peut à tout moment être intégrée à une distribution stable du logiciel. La version testing, quant à elle, intègre les dernières mises à jour, ce qui rend de fait cette distribution un peu plus instable. On active l'une des deux sous-branches à la pré-compilation (cmake).

Il existe aussi un dépôt Launchpad pour les bibliothèques KiCad : https://code.launchpad.net/~kicad-lib-committers/k...

A noter qu'il existe dans KiCad des fonctionnalités de scripts en python.

Commentaires

Un peu tard, mais pour la référence ...

Date: Thu, 21 Nov 2013 14:49:06 +0100
From: Javier Serrano *** [at] cern [dot] ch (***@cern.ch)
Subject: Meeting in Geneva Hacker Space tomorrow

Dear all,

There will be a presentation about Open Source Hardware and a demo of our latest contributions to KiCad [1] (Push & Shove router, Graphics Abstraction Layer, interactive selection tool, ratsnest) tomorrow at 19:00 in the Geneva Hacker Space. If you are interested in attending, you can find more information at:

http://www.posttenebraslab.ch/wiki/events/2013/11/...

Cheers,

Javier

[1] http://www.ohwr.org/projects/cern-kicad/wiki

Voir aussi : fiche ressource OHWR.

quel dommage de ne pas

quel dommage de ne pas l'avoir su avant...

Suffit de s'inscrire ?

Bien entendu, j'ai un peu traîné en faisant suivre le message, quoiqu'il fusse diffusé très tardivement aussi.

Mais avec un compte CERN (en tant que membre IN2P3, tu devrais au moins pouvoir obtenir un compte "light-weight"), tu peux t'inscrire à la liste ("e-group") où c'était annoncé, pour avoir les informations directement. Me contacter par mèl, si tu es intéressé.

et d'habiter pas trop loin :)

Ça m’intéresse surtout si c'est filmé et visible en ligne...
Je suis vraiment content de voir le travail du CERN sur Kicad, du coup je suis intéressé par ce genre de news...

J'ai vu des YouTube sur le site

Mais pas regardés. Tu nous diras ?

Jargon / terminologie

Je crois que je voudrais bien remplacer jargon par terminologie.

Olivier

En MAJ

@Olivier, la fiche est en mode "MAJ = mise à jour". Tu peux l'éditer à tout moment, comme lors de la rédaction au début. Seulement, les autres membres de PLUME ne verront toutes les corrections sur la fiche qu'une fois repassée en "proposé à publicatoin", "relu RT/RC" et ton "BAP" final.

ok pour terminologie

Oui, je pense que ça serait mieux avec le terme "terminologie".