Calling external program directly from Eeschema


I am new to Kicad and Eeschema and was wondering if there was a way to call an external file, such as a python script, directly from Eeschema, similar to how a netlist or a BOM can be created by calling a script.
Thank you.


Not possible. The only way would be to call it as a BOM script, it doesn’t have to create a BOM since KiCad doesn’t look at the output.


Thank you. However, when I try calling any BOM script, I get the following error:

Command error. Return code 1

Error messages:
File “C:\Python36\Lib/”, line 178
SyntaxError: invalid syntax

Would you know why?


What does your command line look like?

It looks like there is a mix up between python 2.7 and 3.6. If you have a python 2 script, run it with py -2, otherwise use py -3 for Python 3.


My command line is : python “C:\KiCad\bin\scripting\plugins\” “%I” “%O”

Should I be saying:
python-3 “C:\KiCad\bin\scripting\plugins\” “%I” “%O” ?


I use a test script called, it prints hello and the python version. Python 3 installs the command “py”, which can call up Python 2 or 3.

“python --version” calls python 2.7
“py -2 --version” calls python 2.7
“py -3 --version” calls python 3.6

You can try all those commands in a command prompt to confirm. It might be different depending on how you have your path variables set. I also have Python 2.7 and 3.6 installed which might make a difference.

An example:

My script

import sys
print ("hello Python %s world!" % sys.version.split()[0])


Oh Thank you! I think the problem might be that I am using Python3 not Python 2 and KiCad reads python2.
I’ll try it and let you know if it works.
Thanks again!


This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.