KiCon Europe 2024

How to build awesome KiCad plugins
09-19, 10:00–10:40 (Europe/Berlin), Main Hall

Unlock unused potential of KiCad by learning how to create custom plugins that enhance functionality and streamline your PCB design workflow. This session will guide attendees through the process of building plugins using Python and the KiCad Scripting Interface, covering essential concepts from setup to deployment and uploading into the Plugin and Content Manager for others to use. Whether you're looking to automate repetitive tasks, integrate third-party tools, or introduce new features, this talk will equip you with the basic knowledge and tools to start developing powerful plugins that can significantly improve your design experience.


KiCad is loved for many reasons. It's robust, open-source, and comes with a lot of features built-in. However, as a daily user, you might overlook its power in extensibility and automatibility through custom plugins. In this session, "How to Build Awesome KiCad Plugins," we will delve into plugin development for KiCad, enabling you to tailor the tool to your specific needs.

We will begin with an overview of the KiCad Scripting Interface, explaining how Python code interacts with KiCad to allow for extensive customization. We will cover the initial setup process, including the necessary development environment and tools. You will learn how to navigate the KiCad scripting console and understand the basic structure of a plugin. This is followed by a brief overview of the API and what’s possible and what’s not.

The core of the session will focus on practical, hands-on examples. We will go over the process of creating a simple yet functional plugin from scratch, demonstrating key concepts such as accessing and manipulating PCB data, automating routine tasks, and creating custom user interfaces. Additionally, we will take a brief look into popular and common plugins.

You will also learn how to package and share your plugins with the broader KiCad community (and automate this process). We will also see a way to mitigate the still missing scripting interface for EESCHEMA.

By the end of the session, you will have a basic foundation in KiCad plugin development and be equipped to start exploring and creating your own plugins, enhancing your productivity and unleashing new possibilities in your PCB design projects. Whether you're a seasoned KiCad user or new to the platform, this workshop will provide valuable insights and skills to elevate and automate your EDA experience.

See also: Slides (2.5 MB)

I am an electronics engineer interested across the whole range of PCB development, from computing hardware over analog design to power electronics. I started using KiCad while still in school and have it used for over 10 years now both as a hobbyist and professionally.