現在,とあるプロジェクトのためにEagleのライブラリをKiCad用に変換する
スクリプトを整備しているのですが,それがそこそこ使えるようになってきたので
公開します.
これはPythonのスクリプトになっていまして,
1.Python 2.7系をインストール
http://python.jp/Zope/download/pythoncore
2.Eagle2KiCadスクリプトをダウンロードして解凍.
https://github.com/Trump211/Eagle2Kicad
3.コマンドプロンプト(ターミナル)で,解凍したディレクトリへ移動.
4.python Library/Library.py
として,スクリプトを実行.
5.「Input Library:」と出てくるので,変換するEagleのライブラリ(lbr)を指定.
6.「Output Modules: 」と出てくるので,新しく作成するKiCadのモジュール(mod)を指定.
7.「Output Symbols: 」と出てくるので,新しく作成するKiCadのシンボル(lib)を指定.
という使い方になっています.
Pythonのインストール等が面倒なので,Web上でクリックだけで生成できるように
できれば良いんですけどね.
なお,Eagle 6.+で使用されている,xml形式のライブラリでないと変換できません.既存のライブラリは,Eagleのバージョン6以上で開いてから,「名前をつけて保存」することで生成できます.lbrファイルをメモ帳等のテキストエディタで開いてみて,「<?xml version=”1.0″ encoding=”utf-8″?>」から始まっていれば,変換可能な形式です.
まだバグが残っているのですが,そこそこ使えると思います.
よろしくお願いします.
Eagleから制限のないKicadに乗り換えようと思い始めました。
このスクリプトでEagleのライブラリが変換できるようなので試した見ましたが下記の「AttributeError: ‘module’ object has no attribute ‘maketrans’」のエラーが出て変換で来ません。原因が分かりますでしょうか。
###############################################################################
#Session: 2013-03-08 21:02:19
###############################################################################
*******************************************
Converting Lib: C:/PWB/EAGLE/Mylibrary/lcd.lbr
Module Output: C:/PWB/KiCAD/FM3/lcd.mod
Symbol Output: C:/PWB/KiCAD/FM3/lcd.lib
Lib name: lcd
Conversion Failed
Traceback (most recent call last):
File “C:\PWB\KiCAD\Eagle2Kicad-master\Start.py”, line 95, in convertLib
lib=Library(node,name)
File “C:\PWB\KiCAD\Eagle2Kicad-master\Library\Library.py”, line 35, in __init__
self.modules.append(Module(package,converter))
File “C:\PWB\KiCAD\Eagle2Kicad-master\Common\Module.py”, line 40, in __init__
self.description = str(description.text).translate(string.maketrans(‘\t\r\n’, ‘ ‘))
AttributeError: ‘module’ object has no attribute ‘maketrans’
*******************************************
白阪様こんにちは.
実際に変換しようとしたEagleのライブラリを見てみないと正確なアドバイスは難しいのですが,もしかして,Pythonの3.x系をお使いではありませんか?
コマンドプロンプト(ターミナル)で,
python –version
と入力してEnterを押して,お使いのコンピュータにインストールされているPythonのバージョンをご確認ください.
このスクリプトは,Pythonのバージョン2.7.x系で動作するように作成されています.
管理人様
pythonを2.7に変更してみましたが、NGのようです。
python Library/Library.pyでスクリプトを実行すると下記のエラーが出ます。
raceback(most recent call last):
File “Library/Library.py”, line 10, in
from Converter, SchemConverter
このスクリプトのreadme.txtに下記のように書いてあるので、python3.2でないと駄目ということですか?
hese python scripts will eventually be able to convert an Eagle 6.0+ project into a Kicad Project. All scripts are written in the python 3.2 grammer.
何か大きく勘違いしていますか?
白阪様
あぁ,わかりました.
ライブラリの変換は,Libraryフォルダの中で行ってください.
具体的には,Libraryフォルダの中に,Eagleのlbrファイルを入れて,
そのフォルダ内にターミナルで入って, python ./Library.py で実行してください.
よろしくお願いします.
yonekenさん
Python 2.7をインストールして、現在(5月6日)のリビジョンのEagle2KiCadを実行してみましたが、動作しないようですね・・・。Python3.3でStart.pyをたたいたらGUIが実行できましたが、コンバートはすべてFailになります。
いろいろ試してみましたが、あきらめます。Pythonはよくわからないので。
トラ技のEagleライブラリをコンバートしてKiCadでTA7291Pの図を使いたかったのですが、部品を自作することにしました。まず、報告しておきます。
WebのI/Fからはコンバートできましたが、2回目から動かなくなりました・・・。どちらの環境が悪いのかよくわかりません。1ファイル目はコンバートできたのですが、2ファイル目から送信ボタンを押下しても反応しません。この件についても報告しておきます。ちなみに、Windows XP+Chromeです。
とだしょーさん
こんばんは.yonekenです.
すいません..スクリプトがまだ不安定で,ご迷惑をおかけしました.
現在のスクリプトは,Python 3.x系で動作するように作成されているので,
2.7.x系では動作しません.
kicad-users@kicad.jpのメーリングリスト内でも,トラ技付録のライブラリを
どうにかして変換できないか,議論が続いています.
どうやら,元のEagleファイル内に日本語の文字が混入しているため,
変換が失敗しているようだというところまでは突き止められています.
よろしくお願いします.