diff --git a/hardware/lib/footprints/connector_battery_motorola_SNN5749A.fp b/hardware/lib/footprints/connector_battery_motorola_SNN5749A.fp new file mode 100644 index 0000000..b90f36d --- /dev/null +++ b/hardware/lib/footprints/connector_battery_motorola_SNN5749A.fp @@ -0,0 +1,25 @@ +# footprint as motorola SNN5749A battery +# manufacturer: Motorola +# part number: SNN5749A +Element["" "Motorola SNN5749A" "" "battery" 0 0 0 0 0 100 ""] +( +ElementLine[-18.0mm 28.0mm -15.0mm 28.0mm 0.2mm] +ElementLine[-15.0mm 28.0mm -15.0mm 29.0mm 0.2mm] +ElementLine[-15.0mm 29.0mm -12.0mm 29.0mm 0.2mm] +ElementLine[-12.0mm 29.0mm -12.0mm 28.0mm 0.2mm] +ElementLine[-12.0mm 28.0mm 12.0mm 28.0mm 0.2mm] +ElementLine[12.0mm 28.0mm 12.0mm 29.0mm 0.2mm] +ElementLine[12.0mm 29.0mm 15.0mm 29.0mm 0.2mm] +ElementLine[15.0mm 29.0mm 15.0mm 28.0mm 0.2mm] +ElementLine[15.0mm 28.0mm 18.0mm 28.0mm 0.2mm] +ElementLine[18.0mm 28.0mm 18.0mm -28.0mm 0.2mm] +ElementLine[18.0mm -28.0mm 3.415mm -28.0mm 0.2mm] +ElementLine[3.415mm -28.0mm 3.415mm -28.7mm 0.2mm] +ElementLine[3.415mm -28.7mm -3.435mm -28.7mm 0.2mm] +ElementLine[-3.435mm -28.7mm -3.435mm -28.0mm 0.2mm] +ElementLine[-3.435mm -28.0mm -18.02mm -28.0mm 0.2mm] +ElementLine[-18.02mm -28.0mm -18.02mm 28.0mm 0.2mm] +Pad[-14.9mm -27.2mm -14.9mm -24.3mm 1.6mm 0.4mm 1.75mm "" "-" "square"] +Pad[-12.4mm -27.2mm -12.4mm -24.3mm 1.6mm 0.4mm 1.75mm "" "" "square"] +Pad[-9.9mm -27.2mm -9.9mm -24.3mm 1.6mm 0.4mm 1.75mm "" "+" "square"] +) diff --git a/hardware/lib/footprints/connector_battery_motorola_SNN5749A.rb b/hardware/lib/footprints/connector_battery_motorola_SNN5749A.rb new file mode 100755 index 0000000..34add49 --- /dev/null +++ b/hardware/lib/footprints/connector_battery_motorola_SNN5749A.rb @@ -0,0 +1,71 @@ +#!/usr/bin/env ruby +# encoding: utf-8 +# written for ruby 2.1.0 +# generate a footprint (see script for more information) +require_relative 'element' + +# global dimensions +UNIT = "mm" +SILKSCREEN = 0.2 +SOLDERMASK = 0.075 +CLEARANCE = 0.4 + +name = File.basename(__FILE__,".rb")+".fp" +File.open(name,"w") do |fp| + # put some information + fp.puts "# footprint as motorola SNN5749A battery" + fp.puts "# manufacturer: Motorola" + fp.puts "# part number: SNN5749A" + + # define element + # center is center of device + fp.puts element("Element",["","Motorola SNN5749A","","battery",:"0",:"0",:"0",:"0",:"0",:"100",""]) + fp.puts "(" + + # outline + x1 = -36.0/2 + x2 = x1+3 + y1 = 56/2 + y2 = y1 + fp.puts element("ElementLine",[x1,y1,x1=x2,y1=y2,SILKSCREEN]) + y2 += 1 + fp.puts element("ElementLine",[x1,y1,x1=x2,y1=y2,SILKSCREEN]) + x2 += 3 + fp.puts element("ElementLine",[x1,y1,x1=x2,y1=y2,SILKSCREEN]) + y2 -= 1 + fp.puts element("ElementLine",[x1,y1,x1=x2,y1=y2,SILKSCREEN]) + x2 += 36.0-4*3.0 + fp.puts element("ElementLine",[x1,y1,x1=x2,y1=y2,SILKSCREEN]) + y2 += 1 + fp.puts element("ElementLine",[x1,y1,x1=x2,y1=y2,SILKSCREEN]) + x2 += 3 + fp.puts element("ElementLine",[x1,y1,x1=x2,y1=y2,SILKSCREEN]) + y2 -= 1 + fp.puts element("ElementLine",[x1,y1,x1=x2,y1=y2,SILKSCREEN]) + x2 += 3 + fp.puts element("ElementLine",[x1,y1,x1=x2,y1=y2,SILKSCREEN]) + y2 -= 56 + fp.puts element("ElementLine",[x1,y1,x1=x2,y1=y2,SILKSCREEN]) + x2 -= 36.0/2-6.83/2 + fp.puts element("ElementLine",[x1,y1,x1=x2,y1=y2,SILKSCREEN]) + y2 -= 0.7 + fp.puts element("ElementLine",[x1,y1,x1=x2,y1=y2,SILKSCREEN]) + x2 -= 6.85 + fp.puts element("ElementLine",[x1,y1,x1=x2,y1=y2,SILKSCREEN]) + y2 += 0.7 + fp.puts element("ElementLine",[x1,y1,x1=x2,y1=y2,SILKSCREEN]) + x2 -= 36.0/2-6.83/2 + fp.puts element("ElementLine",[x1,y1,x1=x2,y1=y2,SILKSCREEN]) + y2 += 56 + fp.puts element("ElementLine",[x1,y1,x1=x2,y1=y2,SILKSCREEN]) + + # pads + width = 1.6 + fp.puts element("Pad",[-36.0/2+2.3+width/2,-56.0/2+width/2,-36.0/2+2.3+width/2,-56.0/2+4.5-width/2,width,CLEARANCE,width+2*SOLDERMASK,"","-","square"]) + fp.puts element("Pad",[-36.0/2+4.8+width/2,-56.0/2+width/2,-36.0/2+4.8+width/2,-56.0/2+4.5-width/2,width,CLEARANCE,width+2*SOLDERMASK,"","","square"]) + fp.puts element("Pad",[-36.0/2+7.3+width/2,-56.0/2+width/2,-36.0/2+7.3+width/2,-56.0/2+4.5-width/2,width,CLEARANCE,width+2*SOLDERMASK,"","+","square"]) + + # end of element + fp.puts ")" +end +