Designing electronic circuits from programming code: atopile is a real revolution

Designing electronic circuits from programming code: atopile is a real revolution

Matt Wildoer and Narayan Powderly are two great experts in electronic circuit design and implementation printed circuits. The path into the world of hardware engineering began at a young age, when the two collaborated on the development of truly innovative electronic projects.

During their experiments, Wildoer repeatedly expressed the desire to have access to servo control (servo drive, in English) at low cost. THE servo drive are devices used in the control of electric engines, known as servo motors. They are essential in many applications where high precision is required in positioning, speed control or motor torque management.

The idea remained in the drawer for years, until the project was born sleepy. Let’s see what it is and how to try it now.

Electronic circuit design as you’ve never imagined it: what is atopyl

Recently made public, atopile is a tool based on programming code, specially designed for the creation of printer circuit boards (PCBs). The system presented by the Wildoer-Powderly duo greatly simplifies the process circuit designallowing the direct choice of the necessary components and offering the opportunity to write the required specifications at code level.

To aid in the design of electronic circuits, atopile uses a special language called ato. In this language, the term modulo corresponds to each component on the circuit board. The design begins by creating smaller modules, then assembled into larger modules, until the complete configuration is reached on the called board LogicCard.

Design electronic circuits with atopyle

With atopile, you can automatically select the parts you need by writing descriptive information in the code. An approach that significantly streamlines the process choice of components electronics, making the entire workflow much faster and more efficient.

Once the components and connections with the language have been defined atoatopile relies on KiCad, an integrated environment for the design of electronic circuits, for place physically each component on the circuit board. The servo control mentioned at the beginning is an example of a complex circuit that requires the use of multiple parts: it is possible to specify the necessary information for each component at code level, for example 10uF +/- 20%. The notation 10uF +/- 20% refers to the specifications of a electric capacitor and indicates the nominal value tolerance. Once the selection has been set via code, atopile takes care of drawing on the database and allows the choice of the most suitable components.

This last function is called Cloud Components and presents itself as a very useful way of defining and parametric selection of the components lato server.

Integration with GitHub and CI/CD

The atopile software, available in the GitHub repository as an open source product, supports the collaboration between multiple users. Multiple people can work on the same PCB project at the same time, making it easier change management and versions.

Precisely by leveraging the architecture of GitHub, atopile allows the suggestion of improvements by sending specific pull requests. You can also always view a list of modified parts and the reasons for each intervention.

Atopile: here's how it works

CI/CD is an acronym that stands for Continuous Integration e Continuous Deployment. This is a concept widely used in the software development: with atopyle, however, it also finds its natural application in the field of electronic design.

CI refers to the practice of regularly and automatically integrating code changes by team members into a shared repository. The goal is to promptly identify any conflicts or integration errors, ensuring that the code remains functional even with the addition of new changes. In electronic design, the CI approach integrates regular control of code changes circuit design. The CD scheme is also applied, thanks to atopile, in electronic design to manage the automatic generation of production files for printed circuits.

Ease of production

Wildoer-Powderly’s idea is really neat and saves a lot of time. Once the design phase has been completed, it is in fact possible to order the PCB production uploading the output file as a build result to a PCB prototyping service, such as JLCPCB.

atopyle, finally, looks at reusability of the layout: in the case of complex projects, it is possible to minimize the time to market i.e. the period of time between the conception of a product and its actual marketing, thanks to the support for traces and holes (vias) in the layers that make up the circuit.

In conclusion, Atopile offers an innovative approach to PCB design, enabling code-based design that simplifies part selection, improves team collaboration, and facilitates PCB manufacturing.

To get started working with atopyle, we suggest referring to the official project documentation. The main page of the repository, however, offers a “smattering” of the objectives of the project and the “rudiments” for using ato codeuseful for designing and creating even the most complex jobs, made up of a large number of components and interconnections.

Opening image credit: iStock.com – imaginima

Leave a Reply

Your email address will not be published. Required fields are marked *