Files
kicad2panel/Readme.md
T
2026-09-05 20:00:50 +02:00

67 lines
1.7 KiB
Markdown

TODO: Add table of content
# KiKit Processor
Processing script for KiKit panelizes PCBs and draws a fixture sketch and positions the whole panel for easy CNC and MSLA processing.
The script:
- Panelizes the board
- Moves the finished panel to the origin `(0, 0)`
- Adds alignment holes
- Adds silskcreen text
- Extends the copper layers
The resulting output is intended for repeatable CNC/MSLA processing.
![Panel](images/Flow_Controller_Panel.png)
## Install kikit
Install `kikit`:
```bash
pipx install --system-site-packages kikit
```
## Usage
```bash
# Panelize the PCB using the preset defined in `myPreset.json`.
kikit panelize -p myPreset.json \
../Flow_Controller/Flow_Controller.kicad_pcb \
panel/Flow_Controller_Panel.kicad_pcb
```
The new `panel/Flow_Controller_Panel.kicad_pcb` file will contain the panelized PCB with the following feature specified in `myPreset.json`. E.g.: Grid of 1 x 2 with space 2.1 mm and fiducials.
```json
"layout": {
"type": "grid",
"rows": 1,
"cols": 2,
"hspace": "2.1mm",
"vspace": "2.1mm"
}
```
See all values in [default.json](https://raw.githubusercontent.com/yaqwsx/KiKit/refs/heads/master/kikit/resources/panelizePresets/default.json)
Check the kikit panelization [examples](https://yaqwsx.github.io/KiKit/latest/panelization/examples/).
# The container solution
Dockerfile.kikit, based on kicad/kicad:10.0.4 with KiKit 1.8.0.
## Build once:
```
docker build -f Dockerfile.kikit -t kicad10-kikit:1.8.0 .
```
## Run panelization:
```
docker run --rm --user "$(id -u):$(id -g)" \
-v "$PWD:/workspace" \
kicad10-kikit:1.8.0 \
panelize -p myPreset.json \
Board_Game_Timer.kicad_pcb \
panel/Board_Game_Timer_Panel.kicad_pcb
```