TousstNicolas / JLC2KiCad_lib

JLC2KICAD_lib is a python script that generate a component library (schematic, footprint and 3D model ) for KiCad from the JLCPCB/easyEDA library.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Cannot connect symbol pins

dzid26 opened this issue · comments

Describe the bug
Wire doesn't connect to symbol pins

To Reproduce
Steps to reproduce the behavior:

  1. LCSC part # that caused the issue C2919500

Screenshots
If applicable, add screenshots to help explain your problem.
image
image

Additional context
I tried "aligning the schematic and also the symbol drawing in the editor. Didn't help.
image

I see precision errors for the affected pins:

(kicad_symbol_lib (version 20210201) (generator TousstNicolas/JLC2KiCad_lib)
  (symbol "0_5K-HX-26PWB"   (in_bom yes) (on_board yes)
    (property "Reference" "U" (id 0) (at 0 1.27 0)
      (effects (font (size 1.27 1.27)))
    )
    (property "Value" "0_5K-HX-26PWB" (id 1) (at 0 -2.54 0)
      (effects (font (size 1.27 1.27)))
    )
    (property "Footprint" "jlc:FPC-SMD_26P-P0.50_HDGC_0.5K-HX-26PWB" (id 2) (at 0 -10.16 0)
      (effects (font (size 1.27 1.27) italic) hide)
    )
    (property "Datasheet" "https://atta.szlcsc.com/upload/public/pdf/source/20211115/2CE54BFA88E8212E4957B08411109FCD.pdf" (id 3) (at -2.286 0.127 0)
      (effects (font (size 1.27 1.27)) (justify left) hide)
    )
    (property "ki_keywords" "C2919500" (id 4) (at 0 0 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "LCSC" "C2919500" (id 5) (at 0 0 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    
    (symbol "0_5K-HX-26PWB_0_1"
      (rectangle
        (start -3.81000762001524 34.29006858013716)
        (end 6.350012700025401 -34.29006858013716)
        (stroke (width 0) (type default) (color 0 0 0 0))
        (fill (type background))
      )
      (circle
        (center -2.54000508001016 33.02006604013208)
        (radius 0.381000762001524)
        (stroke (width 0) (type default) (color 0 0 0 0))
        (fill (type background))
      )
      (pin unspecified line
        (at -6.350012700025401 31.750063500127002 0)
        (length 2.54000508001016)
        (name "1" (effects (font (size 1 1))))
        (number "1" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 29.21005842011684 0)
        (length 2.54000508001016)
        (name "2" (effects (font (size 1 1))))
        (number "2" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 26.67005334010668 0)
        (length 2.54000508001016)
        (name "3" (effects (font (size 1 1))))
        (number "3" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 24.130048260096522 0)
        (length 2.54000508001016)
        (name "4" (effects (font (size 1 1))))
        (number "4" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 21.59004318008636 0)
        (length 2.54000508001016)
        (name "5" (effects (font (size 1 1))))
        (number "5" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 19.0500381000762 0)
        (length 2.54000508001016)
        (name "6" (effects (font (size 1 1))))
        (number "6" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 16.51003302006604 0)
        (length 2.54000508001016)
        (name "7" (effects (font (size 1 1))))
        (number "7" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 13.97002794005588 0)
        (length 2.54000508001016)
        (name "8" (effects (font (size 1 1))))
        (number "8" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 11.430022860045721 0)
        (length 2.54000508001016)
        (name "9" (effects (font (size 1 1))))
        (number "9" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 8.89001778003556 0)
        (length 2.54000508001016)
        (name "10" (effects (font (size 1 1))))
        (number "10" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 6.350012700025401 0)
        (length 2.54000508001016)
        (name "11" (effects (font (size 1 1))))
        (number "11" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 3.81000762001524 0)
        (length 2.54000508001016)
        (name "12" (effects (font (size 1 1))))
        (number "12" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 1.27000254000508 0)
        (length 2.54000508001016)
        (name "13" (effects (font (size 1 1))))
        (number "13" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 -1.27000254000508 0)
        (length 2.54000508001016)
        (name "14" (effects (font (size 1 1))))
        (number "14" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 -3.81000762001524 0)
        (length 2.54000508001016)
        (name "15" (effects (font (size 1 1))))
        (number "15" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 -6.350012700025401 0)
        (length 2.54000508001016)
        (name "16" (effects (font (size 1 1))))
        (number "16" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 -8.89001778003556 0)
        (length 2.54000508001016)
        (name "17" (effects (font (size 1 1))))
        (number "17" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 -11.430022860045721 0)
        (length 2.54000508001016)
        (name "18" (effects (font (size 1 1))))
        (number "18" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 -13.97002794005588 0)
        (length 2.54000508001016)
        (name "19" (effects (font (size 1 1))))
        (number "19" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 -16.51003302006604 0)
        (length 2.54000508001016)
        (name "20" (effects (font (size 1 1))))
        (number "20" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 -19.0500381000762 0)
        (length 2.54000508001016)
        (name "21" (effects (font (size 1 1))))
        (number "21" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 -21.59004318008636 0)
        (length 2.54000508001016)
        (name "22" (effects (font (size 1 1))))
        (number "22" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 -24.130048260096522 0)
        (length 2.54000508001016)
        (name "23" (effects (font (size 1 1))))
        (number "23" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 -26.67005334010668 0)
        (length 2.54000508001016)
        (name "24" (effects (font (size 1 1))))
        (number "24" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 -29.21005842011684 0)
        (length 2.54000508001016)
        (name "25" (effects (font (size 1 1))))
        (number "25" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at -6.350012700025401 -31.750063500127002 0)
        (length 2.54000508001016)
        (name "26" (effects (font (size 1 1))))
        (number "26" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at 3.81000762001524 -36.83007366014732 90)
        (length 2.54000508001016)
        (name "27" (effects (font (size 1 1))))
        (number "27" (effects (font (size 1 1))))
      )
      (pin unspecified line
        (at 3.81000762001524 36.83007366014732 270)
        (length 2.54000508001016)
        (name "28" (effects (font (size 1 1))))
        (number "28" (effects (font (size 1 1))))
      )
    )
  )
)

After "aligning positions", values get rounded but the problem remains.


(kicad_symbol_lib (version 20230620) (generator kicad_symbol_editor)
  (symbol "0_5K-HX-26PWB" (exclude_from_sim no) (in_bom yes) (on_board yes)
    (property "Reference" "U" (at 0 1.27 0)
      (effects (font (size 1.27 1.27)))
    )
    (property "Value" "0_5K-HX-26PWB" (at 0 -2.54 0)
      (effects (font (size 1.27 1.27)))
    )
    (property "Footprint" "jlc:FPC-SMD_26P-P0.50_HDGC_0.5K-HX-26PWB" (at 0 -10.16 0)
      (effects (font (size 1.27 1.27) italic) hide)
    )
    (property "Datasheet" "https://atta.szlcsc.com/upload/public/pdf/source/20211115/2CE54BFA88E8212E4957B08411109FCD.pdf" (at -2.54 0.254 0)
      (effects (font (size 1.27 1.27)) (justify left) hide)
    )
    (property "Description" "" (at 0 0 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "LCSC" "C2919500" (at 0 0 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "ki_keywords" "C2919500" (at 0 0 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (symbol "0_5K-HX-26PWB_0_1"
      (rectangle (start -3.81 34.29) (end 6.35 -34.29)
        (stroke (width 0) (type default))
        (fill (type background))
      )
      (circle (center -2.54 33.0202) (radius 0.381)
        (stroke (width 0) (type default))
        (fill (type background))
      )
      (pin unspecified line (at -6.35 31.7502 0) (length 2.54)
        (name "1" (effects (font (size 1 1))))
        (number "1" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 8.89 0) (length 2.54)
        (name "10" (effects (font (size 1 1))))
        (number "10" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 6.35 0) (length 2.54)
        (name "11" (effects (font (size 1 1))))
        (number "11" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 3.81 0) (length 2.54)
        (name "12" (effects (font (size 1 1))))
        (number "12" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 1.27 0) (length 2.54)
        (name "13" (effects (font (size 1 1))))
        (number "13" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -1.27 0) (length 2.54)
        (name "14" (effects (font (size 1 1))))
        (number "14" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -3.81 0) (length 2.54)
        (name "15" (effects (font (size 1 1))))
        (number "15" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -6.35 0) (length 2.54)
        (name "16" (effects (font (size 1 1))))
        (number "16" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -8.89 0) (length 2.54)
        (name "17" (effects (font (size 1 1))))
        (number "17" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -11.43 0) (length 2.54)
        (name "18" (effects (font (size 1 1))))
        (number "18" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -13.97 0) (length 2.54)
        (name "19" (effects (font (size 1 1))))
        (number "19" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 29.2102 0) (length 2.54)
        (name "2" (effects (font (size 1 1))))
        (number "2" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -16.51 0) (length 2.54)
        (name "20" (effects (font (size 1 1))))
        (number "20" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -19.05 0) (length 2.54)
        (name "21" (effects (font (size 1 1))))
        (number "21" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -21.59 0) (length 2.54)
        (name "22" (effects (font (size 1 1))))
        (number "22" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -24.13 0) (length 2.54)
        (name "23" (effects (font (size 1 1))))
        (number "23" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -26.6702 0) (length 2.54)
        (name "24" (effects (font (size 1 1))))
        (number "24" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -29.2102 0) (length 2.54)
        (name "25" (effects (font (size 1 1))))
        (number "25" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -31.7502 0) (length 2.54)
        (name "26" (effects (font (size 1 1))))
        (number "26" (effects (font (size 1 1))))
      )
      (pin unspecified line (at 3.81 -36.8302 90) (length 2.54)
        (name "27" (effects (font (size 1 1))))
        (number "27" (effects (font (size 1 1))))
      )
      (pin unspecified line (at 3.81 36.8302 270) (length 2.54)
        (name "28" (effects (font (size 1 1))))
        (number "28" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 26.6702 0) (length 2.54)
        (name "3" (effects (font (size 1 1))))
        (number "3" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 24.13 0) (length 2.54)
        (name "4" (effects (font (size 1 1))))
        (number "4" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 21.59 0) (length 2.54)
        (name "5" (effects (font (size 1 1))))
        (number "5" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 19.05 0) (length 2.54)
        (name "6" (effects (font (size 1 1))))
        (number "6" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 16.51 0) (length 2.54)
        (name "7" (effects (font (size 1 1))))
        (number "7" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 13.97 0) (length 2.54)
        (name "8" (effects (font (size 1 1))))
        (number "8" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 11.43 0) (length 2.54)
        (name "9" (effects (font (size 1 1))))
        (number "9" (effects (font (size 1 1))))
      )
    )
  )
)

It's only after moving the pin a bit and then back the problem gets fixed.
image

Here is complete, fixed footprint:

(kicad_symbol_lib (version 20230620) (generator kicad_symbol_editor)
  (symbol "0_5K-HX-26PWB" (exclude_from_sim no) (in_bom yes) (on_board yes)
    (property "Reference" "U" (at 0 1.27 0)
      (effects (font (size 1.27 1.27)))
    )
    (property "Value" "0_5K-HX-26PWB" (at 0 -2.54 0)
      (effects (font (size 1.27 1.27)))
    )
    (property "Footprint" "jlc:FPC-SMD_26P-P0.50_HDGC_0.5K-HX-26PWB" (at 0 -10.16 0)
      (effects (font (size 1.27 1.27) italic) hide)
    )
    (property "Datasheet" "https://atta.szlcsc.com/upload/public/pdf/source/20211115/2CE54BFA88E8212E4957B08411109FCD.pdf" (at -2.54 0.254 0)
      (effects (font (size 1.27 1.27)) (justify left) hide)
    )
    (property "Description" "" (at 0 0 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "LCSC" "C2919500" (at 0 0 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "ki_keywords" "C2919500" (at 0 0 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (symbol "0_5K-HX-26PWB_0_1"
      (rectangle (start -3.81 34.29) (end 6.35 -34.29)
        (stroke (width 0) (type default))
        (fill (type background))
      )
      (circle (center -2.54 33.0202) (radius 0.381)
        (stroke (width 0) (type default))
        (fill (type background))
      )
      (pin unspecified line (at -6.35 31.75 0) (length 2.54)
        (name "1" (effects (font (size 1 1))))
        (number "1" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 8.89 0) (length 2.54)
        (name "10" (effects (font (size 1 1))))
        (number "10" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 6.35 0) (length 2.54)
        (name "11" (effects (font (size 1 1))))
        (number "11" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 3.81 0) (length 2.54)
        (name "12" (effects (font (size 1 1))))
        (number "12" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 1.27 0) (length 2.54)
        (name "13" (effects (font (size 1 1))))
        (number "13" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -1.27 0) (length 2.54)
        (name "14" (effects (font (size 1 1))))
        (number "14" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -3.81 0) (length 2.54)
        (name "15" (effects (font (size 1 1))))
        (number "15" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -6.35 0) (length 2.54)
        (name "16" (effects (font (size 1 1))))
        (number "16" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -8.89 0) (length 2.54)
        (name "17" (effects (font (size 1 1))))
        (number "17" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -11.43 0) (length 2.54)
        (name "18" (effects (font (size 1 1))))
        (number "18" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -13.97 0) (length 2.54)
        (name "19" (effects (font (size 1 1))))
        (number "19" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 29.21 0) (length 2.54)
        (name "2" (effects (font (size 1 1))))
        (number "2" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -16.51 0) (length 2.54)
        (name "20" (effects (font (size 1 1))))
        (number "20" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -19.05 0) (length 2.54)
        (name "21" (effects (font (size 1 1))))
        (number "21" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -21.59 0) (length 2.54)
        (name "22" (effects (font (size 1 1))))
        (number "22" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -24.13 0) (length 2.54)
        (name "23" (effects (font (size 1 1))))
        (number "23" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -26.67 0) (length 2.54)
        (name "24" (effects (font (size 1 1))))
        (number "24" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -29.21 0) (length 2.54)
        (name "25" (effects (font (size 1 1))))
        (number "25" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 -31.75 0) (length 2.54)
        (name "26" (effects (font (size 1 1))))
        (number "26" (effects (font (size 1 1))))
      )
      (pin unspecified line (at 3.81 -36.83 90) (length 2.54)
        (name "27" (effects (font (size 1 1))))
        (number "27" (effects (font (size 1 1))))
      )
      (pin unspecified line (at 3.81 36.83 270) (length 2.54)
        (name "28" (effects (font (size 1 1))))
        (number "28" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 26.67 0) (length 2.54)
        (name "3" (effects (font (size 1 1))))
        (number "3" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 24.13 0) (length 2.54)
        (name "4" (effects (font (size 1 1))))
        (number "4" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 21.59 0) (length 2.54)
        (name "5" (effects (font (size 1 1))))
        (number "5" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 19.05 0) (length 2.54)
        (name "6" (effects (font (size 1 1))))
        (number "6" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 16.51 0) (length 2.54)
        (name "7" (effects (font (size 1 1))))
        (number "7" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 13.97 0) (length 2.54)
        (name "8" (effects (font (size 1 1))))
        (number "8" (effects (font (size 1 1))))
      )
      (pin unspecified line (at -6.35 11.43 0) (length 2.54)
        (name "9" (effects (font (size 1 1))))
        (number "9" (effects (font (size 1 1))))
      )
    )
  )
)
image

I have a hunch that some iterative error accumulation is happening when pins are populated and only far top and far bottom pins are affected.

I rounded the position and length of the pins to the third digit, it should solve those imprecision errors.

It works on C2919500.

I updated the Pip package, you can test the update with pip3 install JLC2KiCadLib==1.0.28

I will let you close the issue if it works on your side.

Perfect, thank you