44 lines
1.8 KiB
Markdown
44 lines
1.8 KiB
Markdown
# Dependencies
|
|
- [Kicad 8](https://www.kicad.org/)
|
|
- [git-lfs](https://git-lfs.com/)
|
|
- [kimelon](https://gitlab.com/Micromelon/education/hardware/kimelon)
|
|
|
|
# Setup
|
|
1. From an empty directory: `kimelon config --init --remote <REMOTE_URL>`; if git is already setup and pointing to the remote then drop `--remote`
|
|
2. Create a kicad project, based off of a template found in this directory
|
|
3. Lock the file you want to edit, see [Locking](#Locking)
|
|
4. Start editing
|
|
|
|
# Updating
|
|
`kimelon config`
|
|
|
|
# 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 `kimelon lock <type> <filter>`.
|
|
See `kimelon lock --help` for more info.
|
|
Once you are done editing the lock can be released using `kimelon unlock <type> <filter>`.
|
|
See `kimelon unlock --help` for more info.
|
|
|
|
Lock/unlock can't be done if there are any branches apart from `dev` & `main`.
|
|
|
|
# CI
|
|
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
|
|
|
|
# Panels
|
|
[Kikit](https://github.com/yaqwsx/KiKit) is used to generate panels by placing a `json` file in your kicad project root folder.
|
|
|
|
The templates in this repository all contain a default panel file with the following features:
|
|
- single board
|
|
- full frame, no tabs/gap between PCB and frame, vcuts
|
|
- Mounting hole + fiducial in each corner
|
|
|
|
See examples of panel types/options [here](https://yaqwsx.github.io/KiKit/v1.3/panelization/examples/)
|
|
See syntax of `json` file [here](https://yaqwsx.github.io/KiKit/v1.3/panelization/cli/)
|