GithubHelp home page GithubHelp logo

ns2gupta / kicad-ci-test-spora Goto Github PK

View Code? Open in Web Editor NEW

This project forked from inti-cmnb/kicad-ci-test-spora

0.0 0.0 0.0 1.93 MB

This is a CI/CD test for KiCad using KiBot and other tools. As example we took the Spora project and applied the concepts.

License: Other

Makefile 100.00%

kicad-ci-test-spora's Introduction

KiCad CI/CD test using Spora

KiCad CI/CD for Spora main board KiCad CI/CD for Spora I/O KiCad CI/CD for Spora programmer

This project is a demo of CI/CD for KiCad

Objetive

Automate the following tasks:

  • ERC and DRC checks
  • PDF versions of the schematic and PCB for documentation
  • Generation of fabrication files (BoMs, gerbers, drill, position, 3D model, etc.)

Tools used

To automate the process here we use:

  • KiBot to generate gerbers, drill, position files and BoMs (HTML, XLSX and CSV)
  • kicad-automation-scripts to run DRC/ERC, print schematics and PCB
  • InteractiveHtmlBom to generate interactive HTML BoMs
  • PcbDraw to generate the PCB previews using different colors
  • Docker to integrate KiCad and all the tools in a single package suitable for CI/CD pipelines
  • GitHub CI/CD pipeline mechanism

The docker image can be found here

Test project

As a testbed we are using the Spora project. It contains three separated boards:

  • pcb_io is the I/O module. 2 layers
  • pcb_main is the main module. 6 layers.
  • pcb_prog is the programmer interface. 2 layers.

Here is what we test

The pipeline we test here runs 3 workflows, one for each PCB. Each workflow runs 4 jobs:

  • ERC: Runs the Electrical Rules Check (schematic test).
  • Schematic fabrication files: Generates all the outputs related to the schematic. Runs only if the ERC was successful.
  • DRC: Runs the Design Rules Check (PCB test). Runs only if the ERC was successful.
  • PCB fabrication files: Generates all the outputs related to the PCB. Runs only if the DRC was successful.

When a commit affects any of the schematics, PCBs or the associated Makefiles the workflow is started.

The configuration for the workflows can be found here: .github/workflows/

To get the generated outputs you must enter in one of the workflows, here is an example. Use the Actions option at the top of the page.

Here is what we get

The summary of each workflow contains the generated files in a compressed ZIP. In the GitHub dialect these are the artifacts. Here are links to the run #5 (2021-02-12):

The KiBot configuration

The KiBot configuration files are:

We also generate gerbers and drill files for some common manufacturers using the configurations found here

Original Spora README

BUILD AWESOME WEARABLES

Open hardware platform for wearables.

Lots of sensors ready to use, program and expand at ease. All packed in an incredible small size. More info at Spora web page.

Final release in Spora repo

kicad-ci-test-spora's People

Contributors

set-soft avatar ns2gupta avatar ferdymercury avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.