# Dependencies - [Kicad 6](https://www.kicad.org/) - [git-lfs](https://git-lfs.com/) # Setup 1. Fork or clone and change origin remote-url. 2. Checkout dev (branch off dev if desired) 2. Rename/move files to match project name (make sure to update for [CI](#CI) too) 3. Lock the file you want to edit, see [Locking](#Locking) 4. Start editing. # Locking All kicad files are read-only by default, the file will need to be locked to your ssh key/gitlab account for it to be writable. This can be done using `lock.sh {file name}`. Once you are done editing the lock can be released using `unlock.sh {file name}`. Lock/unlock can only be done if there are any branches that aren't merged into `dev` (excluding `main`). # CI Edit lines 41 & 42 of .gitlab-ci.yml to match the naming/structure of your project/s. You can add as many kicad projects as you like, as below: ``` - DIR: 'proj1' SCHEM: 'proj1.kicad_sch' - DIR: 'proj2' SCHEM: 'proj3.kicad_sch' - DIR: 'proj3' SCHEM: 'proj3.kicad_sch' ``` The following will be produced on any commit to dev & main branches or any commit on branch that has an active MR with said branches: - DRC & ERC - Step files The following will be produced only on commits to main or commits on dev if it has an active MR with main: - JLCPCB compatible gerbers - PDFs of Schematic & PCB - BOM Currently there are some ERC errors to do with buses (https://gitlab.com/kicad/code/kicad/-/issues/13285), so the docker image used for CI will be run on an older version to avoid them.