INTI-CMNB / KiBot

KiCad automation utility
GNU Affero General Public License v3.0
571 stars 67 forks source link

[WHY] kiri dies looking for component with UUID (xxx) #583

Closed vermut closed 8 months ago

vermut commented 8 months ago

Same setup as #578

> ghcr.io/inti-cmnb/kicad7_auto:dev kibot kiri
...

- Updating BoM in XML format
- 'Generates an interactive web page to browse the schematic and/or PCB differences between git commits.' (kiri) [kiri]
ERROR:While loading `/tmp/tmpbj5mcrmq/Hardware/OpenMowerMainboard/OpenMowerMainboard.kicad_sch` (kibot.gs - gs.py:812)
ERROR:Error looking for component with UUID `/00000000-0000-0000-0000-000061080954/d62697d1-c5d8-427b-abf9-e6b18eb25e79` (kibot.gs - gs.py:812)   
set-soft commented 8 months ago

Your schematic seems to be broken.

Take a look at the ecd51c4 commit, you'll see that OpenMowerMainboard.kicad_sch defines SW1 from RaspberryPi like this:

    (path "/00000000-0000-0000-0000-000061080954/d62697d1-c5d8-427b-abf9-e6b18eb25e79"
      (reference "SW1") (unit 1) (value "MK-11C04-G013") (footprint "lcsc:SW-SMD_MK-11C04-G013")
    )

Where 00000000-0000-0000-0000-000061080954 is the RaspberryPi sheet:

  (sheet (at 223.52 181.61) (size 42.545 22.86) (fields_autoplaced)
    (stroke (width 0) (type solid) (color 0 0 0 0))
    (fill (color 0 0 0 0.0000))
    (uuid 00000000-0000-0000-0000-000061080954)
    (property "Sheet name" "RaspberryPi" (id 0) (at 223.52 180.8984 0)
      (effects (font (size 1.27 1.27)) (justify left bottom))
    )
    (property "Sheet file" "RaspberryPi.kicad_sch" (id 1) (at 223.52 205.0546 0)
      (effects (font (size 1.27 1.27)) (justify left top))
    )

But the RaspberryPi sheet doesn't contain it. I guess this is a partial commit.

If you ignore this error and continue you get another error about a missing sub-sheet. So I guess your repo has more than one inconsistent commit.

I found imu.kicad_sch was missing in various commits:

And around 6673981 the project seems to be using a private submodule that can't be updated without a user/password.

I suggest limiting the KiRi run to just a few commits, not all of them.

I'll commit a patch to continue on errors, but this won't solve the errors ;-)