KiBot/experiments/EasyEDA
Salvador E. Tropea 20442e1f36 [Experiments][EasyEDA] Added the test files I used 2023-02-01 10:12:01 -03:00
..
a.3dshapes [Experiments][EasyEDA] Added the test files I used 2023-02-01 10:12:01 -03:00
README.md [Experiments][EasyEDA] Added coordinates analysis 2023-02-01 10:06:18 -03:00
easyeda_api.py [Experiments][EasyEDA] Modified the test to use the current code 2023-02-01 10:05:20 -03:00

README.md

LCSC 3D Models

This is part of the easyeda2kicad code. The whole code depends on pydantic and typing_extensions. The dependencies didn't even install using pip on Debian 11.6.

This is the portion of the code needed to download the 3D model for an LCSC component code. The generated WRL has colors, but not correct materials.

This is all related to the issue #380

Colors

diffuse - specular

Analyzed

SOT-23-3P_L2.9-W1.3-H1.0-LS2.4-P0.95.wrl (C181094)

  • LCEDA: 1.0 1.0 1.0 - 0.8784313725490196 0.8784313725490196 0.8784313725490196
  • Silver pins:0.7686274509803922 0.7686274509803922 0.7686274509803922 - 0.615686274509804 0.615686274509804 0.615686274509804
  • Plastic body: 0.25098039215686274 0.25098039215686274 0.25098039215686274 - 0.07450980392156863 0.07450980392156863 0.07450980392156863
  • Text legend: 0.45098039215686275 0.43137254901960786 0.4196078431372549 - 0.03137254901960784 0.03137254901960784 0.03137254901960784

CONN-TH_4P-P2.54_MOLEX_0705430004.wrl (C3020650)

This model is wrong, the pins should be gold

  • Silver pins:(also legend) 0.8313725490196079 0.8313725490196079 0.8196078431372549 - 0.6666666666666666 0.6666666666666666 0.6549019607843137
  • Plastic body: 0.20784313725490197 0.20784313725490197 0.20784313725490197 - 0.01568627450980392 0.01568627450980392 0.01568627450980392
  • Plastic body pin 1 arrow: 0.07058823529411765 0.07058823529411765 0.07058823529411765 - 0.00392156862745098 0.00392156862745098 0.00392156862745098
  • Error color used to fill the legend ... should be plastic body, an error: 0.792156862745098 0.8196078431372549 0.9333333333333333 - 0.396078431372549 0.4117647058823529 0.4666666666666667

HDR2.54-M-LI-1X1P.wrl (C213440)

  • Golden pins: 0.9490196078431372 0.7607843137254902 0.1803921568627451 - 0.7607843137254902 0.6078431372549019 0.1450980392156863
  • Plastic body: 0.17647058823529413 0.17647058823529413 0.17647058823529413 - 0.050980392156862744 0.050980392156862744 0.050980392156862744
  • LCEDA: 0.0 0.0 0.0 - 0.0 0.0 0.0

SMB_L4.6-W3.6-LS5.3-BI.wrl (C78395)

  • Plastic body: 0.25098039215686274 0.25098039215686274 0.25098039215686274 - 0.12549019607843137 0.12549019607843137 0.12549019607843137
  • Silver pins: 0.7803921568627451 0.7803921568627451 0.7803921568627451 - 0.38823529411764707 0.38823529411764707 0.38823529411764707
  • LCEDA: 1.0 1.0 1.0 - 0.8784313725490196 0.8784313725490196 0.8784313725490196

SMA_L4.3-W2.6-LS5.2-RD (C8678)

  • Plastic body: 0.25098039215686274 0.25098039215686274 0.25098039215686274 - 0.12549019607843137 0.12549019607843137 0.12549019607843137
  • Silver pins: 0.7803921568627451 0.7803921568627451 0.7803921568627451 - 0.38823529411764707 0.38823529411764707 0.38823529411764707
  • Text legend: 0.6666666666666666 0.6666666666666666 0.6666666666666666 - 0.3333333333333333 0.3333333333333333 0.3333333333333333
  • LCEDA 1.0 1.0 1.0 - 0.8784313725490196 0.8784313725490196 0.8784313725490196
  • Pin 1 bars 0.8509803921568627 0.8509803921568627 0.8509803921568627 - 0.4235294117647059 0.4235294117647059 0.4235294117647059

SOT-23-6_L2.9-W1.6-H1.5-LS2.8-P0.95.wrl (C202311)

  • Plastic body: 0.25098039215686274 0.25098039215686274 0.25098039215686274 - 0.07450980392156863 0.07450980392156863 0.07450980392156863
  • Text legend: 0.45098039215686275 0.43137254901960786 0.4196078431372549 - 0.03137254901960784 0.03137254901960784 0.03137254901960784
  • LCEDA 1.0 1.0 1.0 - 0.8784313725490196 0.8784313725490196 0.8784313725490196
  • Silver pins: 0.7686274509803922 0.7686274509803922 0.7686274509803922 - 0.615686274509804 0.615686274509804 0.615686274509804

SOIC-8_L4.9-W3.9-P1.27-LS6.0-BL-EP3.3-1.wrl (C2760005)

  • Plastic body: 0.20784313725490197 0.20784313725490197 0.20784313725490197 - 0.01568627450980392 0.01568627450980392 0.01568627450980392
  • Pin 1 circle: 0.34901960784313724 0.34901960784313724 0.34901960784313724 - 0.023529411764705882 0.023529411764705882 0.023529411764705882
  • Silver pins: 0.6666666666666666 0.6666666666666666 0.6666666666666666 - 0.4666666666666667 0.4666666666666667 0.4666666666666667
  • LCEDA: 1.0 1.0 1.0 - 0.5019607843137255 0.5019607843137255 0.5019607843137255

SW-SMD_4P-L5.2-W5.2-H1.5-LS6.4-P3.70 (C318884)

  • Metal body 0.8313725490196079 0.8392156862745098 0.8313725490196079 - 0.4980392156862745 0.5019607843137255 0.4980392156862745
  • Plastic inner body 0.07058823529411765 0.07058823529411765 0.07058823529411765 - 0.00392156862745098 0.00392156862745098 0.00392156862745098
  • Golden button 0.9490196078431372 0.7607843137254902 0.1803921568627451 - 0.7607843137254902 0.6078431372549019 0.1450980392156863
  • Plastic body 0.2980392156862745 0.2980392156862745 0.2980392156862745 - 0.09019607843137255 0.09019607843137255 0.09019607843137255
  • Silver pins: 0.7686274509803922 0.7686274509803922 0.7686274509803922 - 0.615686274509804 0.615686274509804 0.615686274509804
  • LCEDA 1.0 1.0 1.0 - 0.8784313725490196 0.8784313725490196 0.8784313725490196

SW-TH_SPEF110100 C115366

This model uses d = 1, but isn't transparent

  • Metal body and Silver pins 0.9686274509803922 0.9686274509803922 0.9686274509803922 - 0.7529411764705882 0.7529411764705882 0.7529411764705882
  • Plastic body 0.25882352941176473 0.25882352941176473 0.25882352941176473 - 0.7529411764705882 0.7529411764705882 0.7529411764705882

Groups

Silver Metal

  • 0.969 0.969 0.969 - 0.753 0.753 0.753
  • 0.831 0.831 0.820 - 0.667 0.667 0.655 (1,56% de error en B)
  • 0.780 0.780 0.780 - 0.388 0.388 0.388 (2x)
  • 0.769 0.769 0.769 - 0.616 0.616 0.616 (3x)
  • 0.667 0.667 0.667 - 0.467 0.467 0.467

Plastic body

  • 0.298 0.298 0.298 - 0.090 0.090 0.090
  • 0.259 0.259 0.259 - 0.753 0.753 0.753
  • 0.251 0.251 0.251 - 0.125 0.125 0.125 (2x)
  • 0.251 0.251 0.251 - 0.075 0.075 0.075 (2x)
  • 0.208 0.208 0.208 - 0.016 0.016 0.016 (2x)
  • 0.176 0.176 0.176 - 0.051 0.051 0.051

Golden Metal

  • 0.949 0.761 0.180 - 0.761 0.608 0.145 (2x)

Position

C181094

This is an analysis of the positions indicated by EasyEDA and KiCad. Is related to #380, the conclusion was that the 3D model adjust wasn't needed for the footprint once exported to KiCad.

Data from the EasyEDA API:

translation=Ee3dModelBase(x='608', y='-320', z='0'),
rotation=Ee3dModelBase(x='0', y='0', z='180'),

PAD 1 position according to EasyEDA footprint

PAD
 - RECT
 - 4003.937
 - 3003.74
 - 4.9213
 - 2.7559
 - 1
 -
 - 1
 - 0
 - 4001.4764

KiCad 3D model offset

      (offset (xyz -861.57 843.28 -0))
      (scale (xyz 1 1 1))
      (rotate (xyz 0 0 180))

KiCad PAD 1

    (pad "1" smd rect locked (at 1 0.95) (size 1.25 0.7) (layers "F.Cu" "F.Paste" "F.Mask")
      (net 2 "GND") (pinfunction "G") (pintype "input") (tstamp 12c57c2f-095b-44d0-b46b-b41b1ec9add0))

Some math:

4003.937 - 608 = 3395.937*0.254 = 862.57 (1 mm off == x position for KiCad pad 1)
3003.74 - (-320) = 3323.74*0.254 = 844.23 (0.95 mm off == y position for KiCad pad 1)

1 mil = 25.4/1000 = 0.0254

861.57/0.254 = 3392+608 = 4000 (rounded!)
843.28/0.254 = 3320-320 = 3000 (rounded!)

(EE_PAD.x - EE_3D_offset.x) * 25.4/100 - KI_PAD.x = (4003.937-608)*0.254-1 = 861.567998
(EE_PAD.y - EE_3D_offset.y) * 25.4/100 - KI_PAD.y = (3003.74-(-320))*0.254-0.95 = 843.27996

Rotated 180 degrees is x' = -x; y' = y
x=-861.57
y=843.28
z=0

The VRML is scaled x/2.54, coordinates are from the PCB, but Y axis is negative.