Рассмотрим различные вспомогательные утилиты для работы kicad. Изначально я был полон энтузиазма и примеров вспомогательного софта было больше ,но как только я начал пробовать завести эти программы, они — отказывались работать, так что пока вот такой маленький обзор, но я думаю мы будем его расширять.

Генераторы УГО и посадочных мест

Создаем УГО online

http://kicad.rohrbacher.net/quicklib.php

onlinelibgen_0.png

Figure 1: Начальное окно генератора

onlinelibgen.png

Figure 2: Таблица для генератора

Самый распространенный и простой, ставить ничего не надо это интернет приложение. Выбираешь тип корпуса и заполняешь таблицу и всё. Удобно и визуально понятно, но для больших компонентов наверно будет трудновато это все заполнять, да и непонятно почему такого удобного визарда нет в самой EEShema, хоть в виде дополнительной программы, поставляемой с исходниками.

Генерируем УГО из XML

https://github.com/AdharLabs/Kicad-tools/tree/master/libgen

Гененрирует из XML синтаксиса компоненты. Поддерживаются виды УГО DIP(==DIL) SIP(Развернутый SIL), CONN(==CONN1) QUAD(==PQFP)

<component refname="Ref_des" compname="Comp_Name" package="PDIP"
description="DESC" keywords="KEYW1 KEYW2 KEYW3">
PIN1DESCRIPTION,ETYPE
PIN2DESCRIPTION,ETYPE
...
</component>

Поддерживает электрические типы компонентов. Номер вывода указывать не надо, он сам автоматически все укажет.

Создаем УГО с помощью list2kc

https://github.com/nekromant/list2kc

git clone https://github.com/nekromant/list2kc.git
Используется 
./list2kc.py --pkg-file=./at91rm9200.pins --output-file=./at91rm9200.lib

Изначально это утилита от Qi-Hardware, xil2kc которая генерировала компонент из Xilinx-вского выхлопа(xil), форкнутая Некромантом.

Инструкция от создателя форка Necromant-а о том как писать свои компоненты.

~subparts 1
:\dB:left:0
:\dC:right:0
:E:bot:0
:COM:top:0

[1:8]
1B
2B
3B
4B
5B
6B
7B
E
[16:9]
1C
2C
3C
4C
5C
6C
7C
COM

Что здесь описано, в начале указано количество частей или подкомпонентов содержащихся в наше компоненте, ну это как допустим несколько логических элементов И в одной микросхеме.

Затем с помощью регулярных выражений python задается

:регулярное_выражение:на_какой_стороне_разместить:в_какой_подкомпонент.

Остается вопрос как указать электрический тип вывода?

Создаем посадочное место с помощью fped

http://people.openmoko.org/werner/fped/gui.html

fped.png

Собственно утилита с помощью которой можно создавать параметрические посадочные места,т.е. они будут зависеть от параметров таких как количество выводов или максимальная ширина дорожек. Этот функционал пытается решать Kicad Footprint Wizard(он входит в стандартную поставку KiCAD , проверьте флаги), но там пока всё сыро.

В будущем постараемся перевести руководство.

Хранение библиотек

Облачное хранилище компонентов kicadcloud

http://www.kicadcloud.com/

kicadcloud.png

В общем приятный сервис и что самое главное вы можете развернуть его на собственном сервере. Сюда можно загружать УГО и посадочные места, тут же их и визуализируют поддерживается загрузка 3D моделей. Также что приятно тут можно ставить лайки и коменты под каждым загруженым компонентом, что в будущем должно облегчить создание библиотек.

Скачать и развернуть сервер можно отсюда https://github.com/joeferner/kicadcloud.com.git

К сожалению никаких упоминаний о лицензии я не нашел , что беспокоит.

Конвертеры форматов

The Upverter Universal Format Converter

https://github.com/upverter/schematic-file-converter

Не работает!!!

Upverter проект облачной EDA, что в общем-то не интересно, так как лично например я не хотел бы привязываться к облаку. Но вот благодаря ему появился этот конвертор который судя по заявленому поддерживает форматы.

  • Upverter OpenJSON
  • KiCad
  • gEDA
  • Fritzing
  • RS274-X Gerber (see note)
  • NC Drill
  • Eagle
  • Eagle XML (in testing)
  • ViewDraw / DxDesigner (in testing)
  • DSN (in testing)
  • PNG Image
  • Bill of Materials
  • CSV Netlist
  • Altium (in development)
  • Telesis Netlist (in development)

Лицензия Apache-2.0

Зависимости

  • python 2.6 -это вообще убило но вроде только ругаеться
  • freetype-py module

Установка

Так она должна выглядеть

git clone https://github.com/upverter/schematic-file-converter.git
cd schematic-file-converter/
sudo python setup.py install

Можете не устанавливать от администратора вот , а запускать прямо из папки конвертора

В общем не работает…. так как нет нормальной документации а библиотеки оно кушать не захотело… и примеров использования нет.

Работа с Github

eeshow.png

Давным давно а может недавно, здесь на сайте здесь показывал код которым пытался возродить скрипт schhist ,который позволяет смотреть изменения и вести проект kicad в системе контроля версий -git.

Но так как знаю мало и, а ещё я очень ленив, то подождав год обнаружил что уже существует проект который реализует все что мне нужно и имя ему eeshow

Проект eeshow как и его предшественник schhist родился в рамках работы с крупным железнячным проектом, только на этот раз проект ближе и понятней Neo900 — это замена железа в корпусе n900. Надеюсь у ребят получится, но уже спасибо за инструменты.

Сайт проекта

Установка

eeshow-3.pngw

Зависимости libgtk-3-dev, libcairo2-dev, libgit2-dev, transfig, и imagemagick

На убунте требуют:

sudo apt-get install libgtk-3-dev libcairo2-dev libgit2-dev transfig imagemagick
git clone http://neo900.org/git/eeshow
cd eeshow
make
sudo make install

Проверка работоспособности

Качаем весь проект телефона neo900.

git clone http://neo900.org/git/ee
cd ee/hw
make pull
eeshow neo900.pro

eeshow-2.png

Проект обладает утилитой eeshow — практически альтернативная оболочка для просмотра kicad проектов, только на больших проектах много кушает.

Также есть консольные утилиты eeplot, eediff для автоматичекского создания изображений и pdf из файлов kicad.