#kicad_mod.addText('user', '%R', {'x':0, 'y':-3}, 'F.Fab')
    kicad_mod.addText('value', footprint_name, {'x': 0, 'y': 7}, 'F.Fab')

    #pin pad size
    pad_w = 0.8
    pad_h = 1.9

    #component values
    A = (pincount - 1) * pitch
    B = A + 6.4

    kicad_mod.setCenterPos({'x': 0, 'y': 1.49})

    # create pads
    createNumberedPadsSMD(kicad_mod, pincount, pitch, {
        'x': pad_w,
        'y': pad_h
    }, -1.9 / 2)

    #add mounting pads (no number)
    mpad_w = 1.3
    mpad_h = 3.35
    mpad_x = A / 2 + 2.2 + 1.3 / 2
    mpad_y = 2.25 + 3.35 / 2 + 0.005

    kicad_mod.addPad('""', 'smd', 'rect', {
        'x': mpad_x,
        'y': mpad_y
    }, {
        'x': mpad_w,
        'y': mpad_h
    }, 0, ['F.Cu', 'F.Paste', 'F.Mask'])
    # set general values
    kicad_mod.addText('reference', 'REF**', {'x':0, 'y':-3.1}, 'F.SilkS')
    kicad_mod.addText('value', footprint_name, {'x':0, 'y':4.9}, 'F.Fab')
    
    #pin pad size
    pad_w = 0.7
    pad_h = 1.8
    
    kicad_mod.setCenterPos({'x':0,'y':0.4})
    
    #component values
    A = (pincount - 1) * pitch
    B = A + 2.9
    
    # create pads
    createNumberedPadsSMD(kicad_mod, pincount, pitch, {'x':pad_w,'y':pad_h},-1)
    
    #add mounting pads (no number)
    mpad_w = 1.6
    mpad_h = 2.2
    mpad_x = (B/2) + (mpad_w/2)
    mpad_y = 1.8

    kicad_mod.addPad('""', 'smd', 'rect', {'x':mpad_x, 'y':mpad_y}, {'x':mpad_w, 'y':mpad_h}, 0, ['F.Cu', 'F.Paste', 'F.Mask'])
    kicad_mod.addPad('""', 'smd', 'rect', {'x':-mpad_x, 'y':mpad_y}, {'x':mpad_w, 'y':mpad_h}, 0, ['F.Cu', 'F.Paste', 'F.Mask'])

    
    A = (pincount - 1) * pitch
    B = A + 2.9 + 1.5
    
    x1 = -B/2
示例#3
0
    kicad_mod.setTags(
        'connector jst SHL SMT side horizontal entry 1.0mm pitch')

    kicad_mod.setCenterPos({'x': 0, 'y': -3.1125})

    # set general values
    kicad_mod.addText('reference', 'REF**', {'x': 0, 'y': -6.5}, 'F.SilkS')
    kicad_mod.addText('value', footprint_name, {'x': 0, 'y': 2}, 'F.Fab')

    #create outline
    # create Courtyard
    # output kicad model

    #create pads
    createNumberedPadsSMD(kicad_mod, pincount, pad_spacing, {
        'x': pad_w,
        'y': pad_h
    }, -4.675)

    #add mounting pads (no number)
    mpad_w = 1.0
    mpad_h = 2.0
    mpad_x = (B / 2) - (mpad_w / 2)
    mpad_y = -0.7 - 1.7 / 2

    kicad_mod.addPad('""', 'smd', 'rect', {
        'x': mpad_x,
        'y': mpad_y
    }, {
        'x': mpad_w,
        'y': mpad_h
    }, 0, ['F.Cu', 'F.Paste', 'F.Mask'])
    'y': 0
}, 'F.SilkS', 0.15)

# create Courtyard
kicad_mod.addRectLine(
    {
        'x': start_pos_x - 1.6 - 1.6 - 0.5,
        'y': 5.6 + 0.275 + 0.25
    }, {
        'x': end_pos_x + 1.6 + 1.6 + 0.5,
        'y': -1.9 - 0.275 - 0.25
    }, 'F.CrtYd', 0.05)

# create pads
createNumberedPadsSMD(kicad_mod, pincount, 2, {
    'x': 1,
    'y': 5.5
}, 4.75 - 1.9)  #TODO y
kicad_mod.addPad('""', 'smd', 'rect', {
    'x': start_pos_x - 1.6 - 1.6 / 2,
    'y': 0.6
}, {
    'x': 1.6,
    'y': 3
}, 0, ['F.Cu', 'F.Paste', 'F.Mask'])
kicad_mod.addPad('""', 'smd', 'rect', {
    'x': end_pos_x + 1.6 + 1.6 / 2,
    'y': 0.6
}, {
    'x': 1.6,
    'y': 3
}, 0, ['F.Cu', 'F.Paste', 'F.Mask'])
示例#5
0
    }, 'F.Fab', 0.10)

    # set general values
    kicad_mod.addText('reference', 'REF**', {'x': 0, 'y': -1.5}, 'F.SilkS')
    kicad_mod.addText('user', '%R', {'x': 0, 'y': 1.25}, 'F.Fab')
    kicad_mod.addText('value', footprint_name, {'x': 0, 'y': 6.75}, 'F.Fab')

    #create outline
    # create Courtyard
    # output kicad model

    #create pads
    createNumberedPadsSMD(kicad_mod,
                          pincount,
                          pad_spacing, {
                              'x': pad_w,
                              'y': pad_h
                          },
                          4.75,
                          pad_number_offset=1)

    #add mounting pads (no number)
    mpad_w = 1.0
    mpad_h = 2.8
    mpad_x = (B / 2) - (mpad_w / 2)
    mpad_y = 1.4

    kicad_mod.addPad('""', 'smd', 'rect', {
        'x': mpad_x,
        'y': mpad_y
    }, {
        'x': mpad_w,
示例#6
0
        'y': y2
    }, 'F.Fab', 0.15)

    #expand the outline a little bit
    out = 0.2
    x1 -= out
    x2 += out
    y1 -= out
    y2 += out

    #pad size
    pw = 0.9
    ph = 2.5

    #create dem pads
    createNumberedPadsSMD(kicad_mod, pincount, -pitch, {'x': pw, 'y': ph}, py)

    #create some sweet, sweet mechanical pads
    kicad_mod.addMountingPad({'x': mx, 'y': my}, {'x': mw, 'y': mh})

    kicad_mod.addMountingPad({'x': -mx, 'y': my}, {'x': mw, 'y': mh})

    #add pin-1 designation

    xm = A / 2 + pw / 2 + 0.5
    ym = py - 0.5

    m = 0.3

    poly = [{
        'x': xm,
    kicad_mod.setDescription("JST GH series connector, " + jst_name + ", top entry type") 
    kicad_mod.setAttribute('smd')
    kicad_mod.setTags('connector jst GH SMT top vertical entry 1.25mm pitch')

    kicad_mod.setCenterPos({'x':0, 'y':-3.075})

    # set general values
    kicad_mod.addText('reference', 'REF**', {'x':0, 'y':-7.5}, 'F.SilkS')
    kicad_mod.addText('value', footprint_name, {'x':0, 'y':1.5}, 'F.Fab')

    #create outline
    # create Courtyard
    # output kicad model

    #create pads
    createNumberedPadsSMD(kicad_mod, pincount, pad_spacing, {'x':pad_w,'y':pad_h},-4.75)

    #add mounting pads (no number)
    mpad_w = 1.0
    mpad_h = 2.8
    mpad_x = (B/2) - (mpad_w/2)
    mpad_y = -1.4

    kicad_mod.addPad('""', 'smd', 'rect', {'x':mpad_x, 'y':mpad_y}, {'x':mpad_w, 'y':mpad_h}, 0, ['F.Cu', 'F.Paste', 'F.Mask'])
    kicad_mod.addPad('""', 'smd', 'rect', {'x':-mpad_x, 'y':mpad_y}, {'x':mpad_w, 'y':mpad_h}, 0, ['F.Cu', 'F.Paste', 'F.Mask'])

    #side-wall thickness
    T = 0.5
    
    #add bottom line
    kicad_mod.addPolygoneLine([{'x':-B/2+mpad_w+0.6,'y':-0.1},
示例#8
0
                          ,{'x':end_pos_x+2.95-0.8, 'y':-0.6}
                          ,{'x':end_pos_x+2.95, 'y':-0.6}
                          ,{'x':end_pos_x+2.95, 'y':3.5}]
                          ,'F.SilkS', 0.15)

kicad_mod.addLine({'x':end_pos_x+2.95-0.8, 'y':1}, {'x':end_pos_x+2.95, 'y':1}, 'F.SilkS', 0.15)

kicad_mod.addLine({'x':start_pos_x-1.2, 'y':7}, {'x':end_pos_x+1.2, 'y':7}, 'F.SilkS', 0.15)

kicad_mod.addRectLine({'x':start_pos_x-1.2, 'y':2.1}, {'x':start_pos_x-0.2, 'y':5.5}, 'F.SilkS', 0.15)
kicad_mod.addRectLine({'x':end_pos_x+1.2, 'y':2.1}, {'x':end_pos_x+0.2, 'y':5.5}, 'F.SilkS', 0.15)

for i in range(0, pincount-1):
    middle_x = start_pos_x+1+i*2
    start_x = middle_x-0.1
    end_x = middle_x+0.1
    kicad_mod.addLine({'x':start_x, 'y':1}, {'x':end_x, 'y':1}, 'F.SilkS', 0.15)

kicad_mod.addCircle({'x':start_pos_x-2.95+0.8+0.75, 'y':0.25}, {'x':0.25, 'y':0}, 'F.SilkS', 0.15)

# create Courtyard
kicad_mod.addRectLine({'x':start_pos_x-1.6-1.6-0.5, 'y':7.25+0.275+0.25}, {'x':end_pos_x+1.6+1.6+0.5, 'y':-1.75-0.275-0.25}, 'F.CrtYd', 0.05)

# create pads
createNumberedPadsSMD(kicad_mod, pincount, 2, {'x':1, 'y':3.5}, 0)
kicad_mod.addPad('""', 'smd', 'rect', {'x':start_pos_x-1.6-1.6/2, 'y':5.55}, {'x':1.6, 'y':3.4}, 0, ['F.Cu', 'F.Paste', 'F.Mask'])
kicad_mod.addPad('""', 'smd', 'rect', {'x':end_pos_x+1.6+1.6/2, 'y':5.55}, {'x':1.6, 'y':3.4}, 0, ['F.Cu', 'F.Paste', 'F.Mask'])

# output kicad model
print(kicad_mod)
    # add outline to F.Fab
    kicad_mod.addRectLine({"x": x1, "y": y1}, {"x": x2, "y": y2}, "F.Fab", 0.15)

    # expand the outline a little bit
    out = 0.2
    x1 -= out
    x2 += out
    y1 -= out
    y2 += out

    # pad size
    pw = 0.9
    ph = 2.5

    # create dem pads
    createNumberedPadsSMD(kicad_mod, pincount, -pitch, {"x": pw, "y": ph}, py)

    # create some sweet, sweet mechanical pads
    kicad_mod.addMountingPad({"x": mx, "y": my}, {"x": mw, "y": mh})

    kicad_mod.addMountingPad({"x": -mx, "y": my}, {"x": mw, "y": mh})

    # add pin-1 designation

    xm = A / 2 + pw / 2 + 0.5
    ym = py - 0.5

    m = 0.3

    poly = [{"x": xm, "y": ym}, {"x": xm + 2 * m, "y": ym - m}, {"x": xm + 2 * m, "y": ym + m}, {"x": xm, "y": ym}]
    kicad_mod.addPolygoneLine(poly)
示例#10
0
    'y': 0
}, 'F.SilkS', 0.15)

# create Courtyard
kicad_mod.addRectLine(
    {
        'x': start_pos_x - 0.7 - 1.2 - 0.5,
        'y': 4.775 + 0.5 + 0.0125
    }, {
        'x': end_pos_x + 0.7 + 1.2 + 0.5,
        'y': -0.775 - 0.5 - 0.0375
    }, 'F.CrtYd', 0.05)

# create pads
createNumberedPadsSMD(kicad_mod, pincount, pad_spacing, {
    'x': 0.6,
    'y': 1.55
}, 0)
kicad_mod.addPad('""', 'smd', 'rect', {
    'x': start_pos_x - 0.7 - 1.2 / 2,
    'y': 3.875
}, {
    'x': 1.2,
    'y': 1.8
}, 0, ['F.Cu', 'F.Paste', 'F.Mask'])
kicad_mod.addPad('""', 'smd', 'rect', {
    'x': end_pos_x + 0.7 + 1.2 / 2,
    'y': 3.875
}, {
    'x': 1.2,
    'y': 1.8
}, 0, ['F.Cu', 'F.Paste', 'F.Mask'])
kicad_mod.addRectLine({'x':end_pos_x+1, 'y':1.6}, {'x':end_pos_x+1.5, 'y':1.6}, 'F.SilkS', 0.15)

kicad_mod.addPolygoneLine([{'x':start_pos_x-0.4, 'y':0.2}
                          ,{'x':start_pos_x-0.4, 'y':-0.3}
                          ,{'x':end_pos_x+0.4, 'y':-0.3}
                          ,{'x':end_pos_x+0.4, 'y':0.2}] 
                          ,'F.SilkS', 0.15)
                          
kicad_mod.addPolygoneLine([{'x':start_pos_x-0.4, 'y':0.8}
                          ,{'x':start_pos_x-0.4, 'y':2.525-1.55/2-0.3}
                          ,{'x':end_pos_x+0.4, 'y':2.525-1.55/2-0.3}
                          ,{'x':end_pos_x+0.4, 'y':0.8}] 
                          ,'F.SilkS', 0.15)                     
                          
for i in range(0, pincount):
    middle_x = start_pos_x+i*pad_spacing
    kicad_mod.addLine({'x':middle_x, 'y':0.2}, {'x':middle_x, 'y':0.4}, 'F.SilkS', 0.15)

kicad_mod.addCircle({'x':start_pos_x-1, 'y':2.2+0.65}, {'x':0.25, 'y':0}, 'F.SilkS', 0.15)

# create Courtyard
kicad_mod.addRectLine({'x':start_pos_x-0.7-1.2-0.5, 'y':3.3+0.5+0.0125}, {'x':end_pos_x+0.7+1.2+0.5, 'y':-0.9-0.5-0.0375}, 'F.CrtYd', 0.05)

# create pads
createNumberedPadsSMD(kicad_mod, pincount, pad_spacing, {'x':0.6, 'y':1.55}, 2.525)
kicad_mod.addPad('""', 'smd', 'rect', {'x':start_pos_x-0.7-1.2/2, 'y':0}, {'x':1.2, 'y':1.8}, 0, ['F.Cu', 'F.Paste', 'F.Mask'])
kicad_mod.addPad('""', 'smd', 'rect', {'x':end_pos_x+0.7+1.2/2, 'y':0}, {'x':1.2, 'y':1.8}, 0, ['F.Cu', 'F.Paste', 'F.Mask'])

# output kicad model
print(kicad_mod)
    y2 = -0.4
    y1 = y2 - 5.8

    #expand the outline a little bit
    out = 0.2
    x1 -= out
    x2 += out
    y1 -= out
    y2 += out

    #pad size
    pw = 0.9
    ph = 2.5
    
    #create dem pads
    createNumberedPadsSMD(kicad_mod, pincount, -pitch, {'x': pw,'y': ph}, py)

    #create some sweet, sweet mechanical pads
    kicad_mod.addMountingPad(
    {'x': mx, 'y': my},
    {'x': mw, 'y': mh}
    )
    
    kicad_mod.addMountingPad(
    {'x': -mx, 'y': my},
    {'x': mw, 'y': mh}
    )
    
    #add pin-1 designation
    xm = A/2
    ym = py - ph/2 - 0.5
    kicad_mod.setDescription("JST GH series connector, " + jst_name + ", side entry type")
    kicad_mod.setAttribute("smd")
    kicad_mod.setTags("connector jst GH SMT side horizontal entry 1.25mm pitch")

    kicad_mod.setCenterPos({"x": 0, "y": -2.95})

    # set general values
    kicad_mod.addText("reference", "REF**", {"x": 0, "y": -7.5}, "F.SilkS")
    kicad_mod.addText("value", footprint_name, {"x": 0, "y": 1.5}, "F.Fab")

    # create outline
    # create Courtyard
    # output kicad model

    # create pads
    createNumberedPadsSMD(kicad_mod, pincount, pad_spacing, {"x": pad_w, "y": pad_h}, -4.55)

    # add mounting pads (no number)
    mpad_w = 1.0
    mpad_h = 2.8
    mpad_x = (B / 2) - (mpad_w / 2)
    mpad_y = -1.35

    kicad_mod.addPad(
        '""', "smd", "rect", {"x": mpad_x, "y": mpad_y}, {"x": mpad_w, "y": mpad_h}, 0, ["F.Cu", "F.Paste", "F.Mask"]
    )
    kicad_mod.addPad(
        '""', "smd", "rect", {"x": -mpad_x, "y": mpad_y}, {"x": mpad_w, "y": mpad_h}, 0, ["F.Cu", "F.Paste", "F.Mask"]
    )

    T = 0.5
                          ,{'x':end_pos_x-0.5, 'y':-1.2}
                          ,{'x':end_pos_x+1.2, 'y':-1.2} # +1.45
                          ,{'x':end_pos_x+1.2, 'y':2.3}
                          ,{'x':end_pos_x+0.9, 'y':2.3}] 
                          ,'F.SilkS', 0.15)

for i in range(0, pincount-1):
    middle_x = start_pos_x+1+i*2
    start_x = middle_x-0.1
    end_x = middle_x+0.1
    kicad_mod.addLine({'x':start_x, 'y':3.1}, {'x':end_x, 'y':3.1}, 'F.SilkS', 0.15)
    kicad_mod.addLine({'x':start_x, 'y':2.3}, {'x':end_x, 'y':2.3}, 'F.SilkS', 0.15)
    kicad_mod.addPolygoneLine([{'x':start_x, 'y':2.3}
                              ,{'x':start_x, 'y':1.8}
                              ,{'x':end_x, 'y':1.8}
                              ,{'x':end_x, 'y':2.3}], 'F.SilkS', 0.15)
    kicad_mod.addLine({'x':middle_x, 'y':2.3}, {'x':middle_x, 'y':1.8}, 'F.SilkS', 0.15)

kicad_mod.addCircle({'x':start_pos_x-2.95+0.8+0.75, 'y':3.1+0.75}, {'x':0.25, 'y':0}, 'F.SilkS', 0.15)

# create Courtyard
kicad_mod.addRectLine({'x':start_pos_x-1.6-1.6-0.5, 'y':5.6+0.275 + 0.25}, {'x':end_pos_x+1.6+1.6+0.5, 'y':-1.9-0.275-0.25}, 'F.CrtYd', 0.05)

# create pads
createNumberedPadsSMD(kicad_mod, pincount, 2, {'x':1, 'y':5.5}, 4.75-1.9) #TODO y
kicad_mod.addPad('""', 'smd', 'rect', {'x':start_pos_x-1.6-1.6/2, 'y':0.6}, {'x':1.6, 'y':3}, 0, ['F.Cu', 'F.Paste', 'F.Mask'])
kicad_mod.addPad('""', 'smd', 'rect', {'x':end_pos_x+1.6+1.6/2, 'y':0.6}, {'x':1.6, 'y':3}, 0, ['F.Cu', 'F.Paste', 'F.Mask'])

# output kicad model
print(kicad_mod)