← Back to team overview

kicad-developers team mailing list archive

Re: Interprocess, scripts, and other


Hi Leonid!,

2013/9/21 ASM <asm@xxxxxxxxx>

> Hi folks!
> I need your opinion about:
> * interprocess communication cvpcb<->eeschema<->pcbnew.
> * optimizational scripts (optimization work cycle)
> * the ability to change the scheme in pcbnew
> My usual scheme is a microcontroller and peripherals. Microcontoller
> have many equivalent IO pins. I can use all, but only some make good
> routing. I may estimate, but find out about it precisely in pcbnew.
> I can't change the link in pcbnew, I need to go back to eeschema,
> change it, generate netlist (for it need 3 pressed mouse), reload
> netlist in pcbnew (for in need 7 pressed mouse).
> It takes a lot of time and raises three fundamental problems.
> First: KiCAD don't have (in any case, I do not know about them)
> optimizational scripts.
> Second: KiCAD don't have (in any case, I do not know about them)
> interprocess communication.
> Third: KiCAD can't change the schema in pcbnew
> Optimization scripts can be simplified constant manipulation. For example:
> * annotate all new elements (by default or user defined)
> * check this on error
> * create netlist (by default or user defined)
> * reload updated netlist in pcbnew
> Interprocess communication can scripts to pass the baton to other programs.
> Third problem can be resolved using the first and second tasks.
> That do you think about it?

That those are good ideas, probable you're not the first thinking about

At this moment we have python scripting integration inside pcbnew (work in
we thought about LUA at the start, and JS, but they have very limited
libraries, so
we sticked to python for now.

There is another issue, eeschema is not scriptable yet, and, it's on queue
a severe refactor / rewrite. So it's not the time to put scripting in
until that's done.

> I would be interested in his spare time solve these issues. I think
> for scripting would be ideal to take lua, since it can be built right
> into the kicad (have MIT licence and less binary 100k code).
> As the IPC to take POSIX shared memory objects, or any cross platform.
> What do you advise?

Any implementation must be cross platform. Keep in mind that any
must run in windows/macosx/linux at least.

> About bad: I have no experience in C++ (only C), I have no experience
> in wxWidgets, I have no experience in lua.
> I have no experience in the development of such projects. I have bad
> english as you may have noticed ;-) But it's for the better, since the
> native language I have started letter diarrhoea.

I find very interesting your scripting/interaction/automation idea between
kicad parts.
But I think it's not the moment for thinking into new languages until the
first one it's stabilized and we manage to figure out what things can be
done with what we have.

> Tasks seems interesting to me, and if it likes you too, I can try to
> solve it. But I need some help from you as advice and guidance.
If you're interested in scripting, and find python interesting, It would be
great to have some help on that.  I'm starting to write a big set of
& QA tests for the scripting part.

> ---
> Best regards,
> Leonid Myravjev
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp

Follow ups