gEDA PCB footprints for potted transformers.

Nov 22, 2019 1 Replies

I looked at that gedafootprints site but they only had one(1) transformer of the wrong size.



So here's my .inc file for those. Beware. dimensions were hand transcribed from a pdf.


# single output safety transformer # # $1: canonical name # $2: nameonpcb # $3: value # $4: A (mechanical dimensions in um) # $5: B # $6: C # $7: D # $8: E # $9: F # $10: pin size define(`PKG_BLOCK1', `define(`X1', `eval(-`$8' /2)`um'') define(`X2', `eval(`$8' /2)`um'') define(`Y1', `eval(-`$7' /2)`um'') define(`Y2', `eval(`$7' /2)`um'') define(`Y3', `eval(-`$9' /2)`um'') define(`Y4', `eval(`$9' /2)`um'') define(`X11', `eval(-`$5' /2)`um'') define(`X12', `eval(`$5' /2)`um'') define(`Y11', `eval(-`$4' /2)`um'') define(`Y12', `eval(`$4' /2)`um'') define(`PINSIZE', ifelse(eval($10>600),1,`60mil',`50mil')) define(`DRILLSIZE', ifelse(eval($10>600),1,`28mil',`24mil')) Element(0x00 "$1" "$2" "$3" X11 eval(-`$4' /2 -2540)`um' 0 100 0x00) ( PIN(X1, Y1, PINSIZE, DRILLSIZE, 1) PIN(X1, Y2, PINSIZE, DRILLSIZE, 2) PIN(X2, Y3, PINSIZE, DRILLSIZE, 3) PIN(X2, Y4, PINSIZE, DRILLSIZE, 4) ElementLine(X11 Y11 X11 Y12 10) ElementLine(X11 Y12 X12 Y12 10) ElementLine(X12 Y12 X12 Y11 10) ElementLine(X12 Y11 X11 Y11 10) Mark (X1 Y1) )')


# dual output safety transformer # # $1: canonical name # $2: nameonpcb # $3: value # $4: A (mechanical dimensions in um) # $5: B # $6: C # $7: D # $8: E # $9: F # $10: G # $11: pin size define(`PKG_BLOCK2', `define(`X1', `eval(-`$8' /2)`um'') define(`X2', `eval(`$8' /2)`um'') define(`Y1', `eval(-`$7' /2)`um'') define(`Y2', `eval(`$7' /2)`um'') define(`Y3', `eval((-`$9'/2)-`$10')`um'') define(`Y4', `eval(-`$9' /2)`um'') define(`Y5', `eval(`$9' /2)`um'') define(`Y6', `eval((`$9' /2)+`$10')`um'') define(`X11', `eval(-`$5' /2)`um'') define(`X12', `eval(`$5' /2)`um'') define(`Y11', `eval(-`$4' /2)`um'') define(`Y12', `eval(`$4' /2)`um'') define(`PINSIZE', ifelse(eval($11>600),1,`60mil',`50mil')) define(`DRILLSIZE', ifelse(eval($11>600),1,`28mil',`24mil'))



Element(0x00 "$1" "$2" "$3" X11 eval(-`$4' /2 -2540)`um' 0 100 0x00) ( PIN(X1, Y1, PINSIZE, DRILLSIZE, 1) PIN(X1, Y2, PINSIZE, DRILLSIZE, 2) PIN(X2, Y3, PINSIZE, DRILLSIZE, 3) PIN(X2, Y4, PINSIZE, DRILLSIZE, 4) PIN(X2, Y5, PINSIZE, DRILLSIZE, 5) PIN(X2, Y6, PINSIZE, DRILLSIZE, 6) ElementLine(X11 Y11 X11 Y12 10) ElementLine(X11 Y12 X12 Y12 10) ElementLine(X12 Y12 X12 Y11 10) ElementLine(X12 Y11 X11 Y11 10) Mark (X1 Y1) )')



# EXTRACT_BEGIN



# ## Transformer #



define(`PKG_VB_035_1', `PKG_BLOCK1(`$1', `$2', `$3', 22000, 22700, 15000, 15000, 15000, 5000, 600)'); define(`PKG_VB_05_1', `PKG_BLOCK1(`$1', `$2', `$3', 22000, 22700, 19000, 15000, 15000, 5000, 600)'); define(`PKG_VB_10_1', `PKG_BLOCK1(`$1', `$2', `$3', 32300, 27300, 21800, 20000, 20000, 10000, 800)'); define(`PKG_VB_12_1', `PKG_BLOCK1(`$1', `$2', `$3', 32300, 27300, 23800, 20000, 20000, 10000, 800)'); define(`PKG_VB_15_1', `PKG_BLOCK1(`$1', `$2', `$3', 32300, 27300, 23800, 20000, 20000, 10000, 800)'); define(`PKG_VB_20_1', `PKG_BLOCK1(`$1', `$2', `$3', 32300, 27300, 26800, 20000, 20000, 10000, 800)'); define(`PKG_VB_23_1', `PKG_BLOCK1(`$1', `$2', `$3', 32300, 27300, 29000, 20000, 20000, 10000, 800)'); define(`PKG_VB_28_1', `PKG_BLOCK1(`$1', `$2', `$3', 32300, 27300, 34000, 20000, 20000, 10000, 800)'); define(`PKG_VB_32_1', `PKG_BLOCK1(`$1', `$2', `$3', 41000, 35000, 30800, 20000, 25000, 10000, 800)');



# ## Transformer #



define(`PKG_VB_035_2', `PKG_BLOCK2(`$1', `$2', `$3', 22000, 22700, 15000, 15000, 15000, 5000, 5000, 600)'); define(`PKG_VB_05_2', `PKG_BLOCK2(`$1', `$2', `$3', 22000, 22700, 19000, 15000, 15000, 5000, 5000, 600)'); define(`PKG_VB_10_2', `PKG_BLOCK2(`$1', `$2', `$3', 32300, 27300, 21800, 20000, 20000, 10000, 5000, 800)'); define(`PKG_VB_12_2', `PKG_BLOCK2(`$1', `$2', `$3', 32300, 27300, 23800, 20000, 20000, 10000, 5000, 800)'); define(`PKG_VB_15_2', `PKG_BLOCK2(`$1', `$2', `$3', 32300, 27300, 23800, 20000, 20000, 10000, 5000, 800)'); define(`PKG_VB_20_2', `PKG_BLOCK2(`$1', `$2', `$3', 32300, 27300, 26800, 20000, 20000, 10000, 5000, 800)'); define(`PKG_VB_23_2', `PKG_BLOCK2(`$1', `$2', `$3', 32300, 27300, 29000, 20000, 20000, 10000, 5000, 800)'); define(`PKG_VB_28_2', `PKG_BLOCK2(`$1', `$2', `$3', 32300, 27300, 34000, 20000, 20000, 10000, 5000, 800)'); define(`PKG_VB_32_2', `PKG_BLOCK2(`$1', `$2', `$3', 41000, 35000, 30800, 20000, 25000, 10000, 5000, 800)');



# EXTRACT_END


# single output safety transformer # # $1: canonical name # $2: nameonpcb # $3: value # $4: A (mechanical dimensions in um) # $5: B # $6: C # $7: D # $8: E # $9: F # $10: pin size define(`PKG_BLOCK1', `define(`X1', `eval(-`$8' /2)`um'') define(`X2', `eval(`$8' /2)`um'') define(`Y1', `eval(-`$7' /2)`um'') define(`Y2', `eval(`$7' /2)`um'') define(`Y3', `eval(-`$9' /2)`um'') define(`Y4', `eval(`$9' /2)`um'') define(`X11', `eval(-`$5' /2)`um'') define(`X12', `eval(`$5' /2)`um'') define(`Y11', `eval(-`$4' /2)`um'') define(`Y12', `eval(`$4' /2)`um'') define(`X21', `eval(-`$8' /2 + 3000)`um'') define(`X22', `eval(`$8' /2 - 3000)`um'') define(`PINSIZE', ifelse(eval($10>600),1,`60mil',`50mil')) define(`DRILLSIZE', ifelse(eval($10>600),1,`28mil',`24mil')) Element(0x00 "$1" "$2" "$3" X11 eval(-`$4' /2 -2540)`um' 0 100 0x00) ( PIN(X1, Y1, PINSIZE, DRILLSIZE, 1) PIN(X1, Y2, PINSIZE, DRILLSIZE, 2) PIN(X2, Y3, PINSIZE, DRILLSIZE, 3) PIN(X2, Y4, PINSIZE, DRILLSIZE, 4) ElementLine(X11 Y11 X11 Y12 10mil) ElementLine(X11 Y12 X12 Y12 10mil) ElementLine(X12 Y12 X12 Y11 10mil) ElementLine(X12 Y11 X11 Y11 10mil) ElementLine(X21 Y2 X21 Y2 20mil) ElementLine(X22 Y4 X22 Y4 20mil) Mark (X1 Y1) )')

# dual output safety transformer # # $1: canonical name # $2: nameonpcb # $3: value # $4: A (mechanical dimensions in um) # $5: B # $6: C # $7: D # $8: E # $9: F # $10: G # $11: pin size define(`PKG_BLOCK2', `define(`X1', `eval(-`$8' /2)`um'') define(`X2', `eval(`$8' /2)`um'') define(`Y1', `eval(-`$7' /2)`um'') define(`Y2', `eval(`$7' /2)`um'') define(`Y3', `eval((-`$9'/2)-`$10')`um'') define(`Y4', `eval(-`$9' /2)`um'') define(`Y5', `eval(`$9' /2)`um'') define(`Y6', `eval((`$9' /2)+`$10')`um'') define(`X11', `eval(-`$5' /2)`um'') define(`X12', `eval(`$5' /2)`um'') define(`Y11', `eval(-`$4' /2)`um'') define(`Y12', `eval(`$4' /2)`um'') define(`X21', `eval(-`$8' /2 + 3000)`um'') define(`X22', `eval(`$8' /2 - 3000)`um'') define(`PINSIZE', ifelse(eval($11>600),1,`60mil',`50mil')) define(`DRILLSIZE', ifelse(eval($11>600),1,`28mil',`24mil'))

Element(0x00 "$1" "$2" "$3" X11 eval(-`$4' /2 -2540)`um' 0 100 0x00) ( PIN(X1, Y1, PINSIZE, DRILLSIZE, 1) PIN(X1, Y2, PINSIZE, DRILLSIZE, 2) PIN(X2, Y3, PINSIZE, DRILLSIZE, 3) PIN(X2, Y4, PINSIZE, DRILLSIZE, 4) PIN(X2, Y5, PINSIZE, DRILLSIZE, 5) PIN(X2, Y6, PINSIZE, DRILLSIZE, 6) ElementLine(X11 Y11 X11 Y12 10) ElementLine(X11 Y12 X12 Y12 10) ElementLine(X12 Y12 X12 Y11 10) ElementLine(X12 Y11 X11 Y11 10) ElementLine(X21 Y2 X21 Y2 20mil) ElementLine(X22 Y4 X22 Y4 20mil) ElementLine(X22 Y6 X22 Y6 20mil) Mark (X1 Y1) )')

# EXTRACT_BEGIN

# ## Transformer #

define(`PKG_VB_035_1', `PKG_BLOCK1(`$1', `$2', `$3', 22000, 22700, 15000, 15000, 15000, 5000, 600)'); define(`PKG_VB_05_1', `PKG_BLOCK1(`$1', `$2', `$3', 22000, 22700, 19000, 15000, 15000, 5000, 600)'); define(`PKG_VB_10_1', `PKG_BLOCK1(`$1', `$2', `$3', 32300, 27300, 21800, 20000, 20000, 10000, 800)'); define(`PKG_VB_12_1', `PKG_BLOCK1(`$1', `$2', `$3', 32300, 27300, 23800, 20000, 20000, 10000, 800)'); define(`PKG_VB_15_1', `PKG_BLOCK1(`$1', `$2', `$3', 32300, 27300, 23800, 20000, 20000, 10000, 800)'); define(`PKG_VB_20_1', `PKG_BLOCK1(`$1', `$2', `$3', 32300, 27300, 26800, 20000, 20000, 10000, 800)'); define(`PKG_VB_23_1', `PKG_BLOCK1(`$1', `$2', `$3', 32300, 27300, 29000, 20000, 20000, 10000, 800)'); define(`PKG_VB_28_1', `PKG_BLOCK1(`$1', `$2', `$3', 32300, 27300, 34000, 20000, 20000, 10000, 800)'); define(`PKG_VB_32_1', `PKG_BLOCK1(`$1', `$2', `$3', 41000, 35000, 30800, 20000, 25000, 10000, 800)');

# ## Transformer #

define(`PKG_VB_035_2', `PKG_BLOCK2(`$1', `$2', `$3', 22000, 22700, 15000, 15000, 15000, 5000, 5000, 600)'); define(`PKG_VB_05_2', `PKG_BLOCK2(`$1', `$2', `$3', 22000, 22700, 19000, 15000, 15000, 5000, 5000, 600)'); define(`PKG_VB_10_2', `PKG_BLOCK2(`$1', `$2', `$3', 32300, 27300, 21800, 20000, 20000, 10000, 5000, 800)'); define(`PKG_VB_12_2', `PKG_BLOCK2(`$1', `$2', `$3', 32300, 27300, 23800, 20000, 20000, 10000, 5000, 800)'); define(`PKG_VB_15_2', `PKG_BLOCK2(`$1', `$2', `$3', 32300, 27300, 23800, 20000, 20000, 10000, 5000, 800)'); define(`PKG_VB_20_2', `PKG_BLOCK2(`$1', `$2', `$3', 32300, 27300, 26800, 20000, 20000, 10000, 5000, 800)'); define(`PKG_VB_23_2', `PKG_BLOCK2(`$1', `$2', `$3', 32300, 27300, 29000, 20000, 20000, 10000, 5000, 800)'); define(`PKG_VB_28_2', `PKG_BLOCK2(`$1', `$2', `$3', 32300, 27300, 34000, 20000, 20000, 10000, 5000, 800)'); define(`PKG_VB_32_2', `PKG_BLOCK2(`$1', `$2', `$3', 41000, 35000, 30800, 20000, 25000, 10000, 5000, 800)');

# EXTRACT_END

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required