yaqwsx / KiKit

Automation tools for KiCAD
https://yaqwsx.github.io/KiKit
MIT License
1.56k stars 201 forks source link

Unexpected Panel Cutout Behavior #593

Open gcormier opened 1 year ago

gcormier commented 1 year ago

Prerequisites

KiKit version

1.4.0

KiCAD version

7.0.8

Operating system

Linux and Windows 11

Description

Note - I am getting the same output on my local Windows machine, and my Ubuntu GitHub (linux) pipeline.

Here is my board image

Note in all cases, the top corners don't seem to be affected by the framing fillet: 1mm parameter.

Changing the value of the cutout parameter in tabs:

1mm (default)

2 weird cutouts on an angle image image

1.5mm

all 4 weird cutouts image

2mm

Slot? image

Notes

I've also tried to make this center cutout without a radius. image

It does change the behavior slightly. The panel top corners are now rounded, and the cutout behavior is different (still broken?)

2mm

image

Changing the cutout to be all 90 degree corners, removing millradius - behavior not fixed. image

Steps to Reproduce

kibot-panel.yaml.txt This is the kibot-panel.yaml I am using.

espairqual.kicad_pcb.txt PCB file.

kibot -c kibot-panel.yaml -b espairqual.kicad_pcb

yaqwsx commented 1 year ago

There were two problems:

PS: When you report a bug, please, create a minimal example with inputs directly for KiKit. Transforming the inputs from for the developers unknown tool (in this case, KiBot) to KiKit and studying how KiBot translates and modifies the arguments takes extra precious time.

gcormier commented 1 year ago

Awesome, thanks for looking at this! Apologies about the KiBot file - will convert it to a native file to repro the issue next time.

Can I try out these changes with nightly container as described at https://yaqwsx.github.io/KiKit/v1.4/installation/docker/#mac-m1-containers ?

gcormier commented 1 year ago

Pulled the latest

pip install git+https://github.com/yaqwsx/KiKit.git

And looks great!

image

I know you have done it already, but I've attached the kikit json.

kikit-panel.json.txt

set-soft commented 1 year ago

Hi @gcormier !

Just to let you know that the current KiBot docker images should include @yaqwsx fixes.

The Debian package for KiKit with version 1.4.0-1 contains the above mentioned patches. And the images are created using it. The kibot-check tool should report KiKit v1.4.0.1. Note that the info output can log the kibot-check output, no need to call it manually in a workflow.

gcormier commented 1 year ago

Oh awesome, I thought I would have to wait until the next major release of KiKit. Great news, thanks! I just ran my GitHub KiBot pipeline and am getting proper panels created :)

gcormier commented 1 year ago

I think this is the best place to post this and possibly re-open? You mentioned it might need more testing and this might be related.

I am expecting to see cuts in pink on the 2 right PCB's image

My suspicion is the logic from cutout is not checking backbones. It did behave as expected for the top/bottom rails.

Here is the kikit file I'm using.

kitpanel.json

Here is the PCB - https://raw.githubusercontent.com/gcormier/esphome-pressure/main/pcb/esphome-pressure.kicad_pcb

My command: kikit panelize -p kitpanel.json esphome-pressure.kicad_pcb ./out/panel.kicad_pcb

(This is using latest KiKit installed from pip pointed at git repo.)

yaqwsx commented 12 months ago

Backbones are not indeed checked (as internally, we don't perform cutout but shape the tab accordingly. We only add material, never remove it). This should be fixed.