diff --git a/README.md b/README.md index ec13a1f4c4720405d05e46a7bf2913a7198217a9..3631c274627df621e22d12754e63c3ce7a779be2 100644 --- a/README.md +++ b/README.md @@ -384,6 +384,9 @@ - Draw lines directly in `pcbnew` by using line information in `dxf` - Create a python script serving as Python API by drawing everything on `pcbnew` +- Dependencies: + - ezdxf + - pykicad - Successfully import `dxf` as outlines from script -  @@ -399,4 +402,43 @@ - Potential Solutions: - 1. Explore existing supported export API, and see if modification can be made based on existing API structure - - 2. Learn `dsn` file specification and python library to generate `dsn` file based on design information \ No newline at end of file + - 2. Learn `dsn` file specification and python library to generate `dsn` file based on design information + +### 07/24/2019 + +- Pipeline change: (skipping `KiCAD`) + - Use (`dxf`+ `pretty` (footprint library) + `net` information ) to generate `dsn` file + - Send `dsn` file to auto-router, save as new `dsn` file + - Read `dsn` file `wiring` information and draw it back on `dxf` + +- Analysis on `dsn` file format: +~~~ + |--pcb + | |--parser + | |--resolution + | |--unit + | |--structure + | | |--layer 1 + | | |-- ... + | | |--boundary + | | |--keepout 1 + | | |-- ... + | | |--via + | | |--rule + | |--placement + | | |--component 1 + | | |-- ... + | |--library + | | |--image [ref**] 1 + | | | |--outline + | | | |--pin + | | |-- ... + | | |--padstack + | | |--... + | |--network + | | |--net [name] 1 + | | | |--pins + | | |-- ... + | |--wiring + | | |--wire +~~~ \ No newline at end of file diff --git a/dsn_python/__pycache__/dsn_module.cpython-36.pyc b/dsn_python/__pycache__/dsn_module.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..765aff856af9170e04400c4ecb60a3633bba594c Binary files /dev/null and b/dsn_python/__pycache__/dsn_module.cpython-36.pyc differ diff --git a/dsn_python/__pycache__/dsn_rule.cpython-36.pyc b/dsn_python/__pycache__/dsn_rule.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2f388616b908083da37a765322a2ff98fef510cd Binary files /dev/null and b/dsn_python/__pycache__/dsn_rule.cpython-36.pyc differ diff --git a/dsn_python/__pycache__/dsnwritier.cpython-36.pyc b/dsn_python/__pycache__/dsnwritier.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e0f4d92ed1c145a9a3eba0cd9019a8b1c13527ff Binary files /dev/null and b/dsn_python/__pycache__/dsnwritier.cpython-36.pyc differ diff --git a/dsn_python/dsn_module.py b/dsn_python/dsn_module.py new file mode 100644 index 0000000000000000000000000000000000000000..a4bfd5af8e7334856fafb77d4d4340526ac589d8 --- /dev/null +++ b/dsn_python/dsn_module.py @@ -0,0 +1,109 @@ +#!/usr/bin/env python3 +from pykicad.sexpr import * + +class Component(AST): + tag='component' + schema={ + '0':{ + '_parser':text, + '_attr':'ref1', + # '_multiple':True + }, + 'place':{ + '0':{ + '_parser':text, + '_attr':'ref2', + }, + '1':{ + '_parser':number + number, + '_attr':'at' + }, + '2':{ + '_parser':text, + '_attr':'flip' + }, + '3':{ + '_parser':integer, + '_attr':'orientation' + }, + 'PN':{ + '_parser':text, + '_attr':'name' + } + } + } + def __init__(self,ref1,at,ref2=None,flip='front',orientation=0,name=None): + at[1]=-at[1] #flip y for dsn + ref2=ref1 + super(Component,self).__init__(ref1=ref1,ref2=ref2,at=at,flip=flip,orientation=orientation,name=name) + +class Outline(AST): + tag='outline' + schema={ + '0':{ + 'path signal':{ + '0':{ + '_parser':integer, + '_attr':'width' + }, + '1':{ + '_parser':number, + '_attr':'outline_start' + }, + '2':{ + '_parser':number, + '_attr':'outline_end' + } + } + + } + } + def __init__(self,width=None,outline_start=None,outline_end=None): + super(Outline,self).__init__(width=width,outline_start=outline_start,outline_end=outline_end) + +class Pin(AST): + tag='pin' + schema={ + '0':{ + '_parser':text, + '_attr':'pin_type', + }, + '1':{ + '_parser':integer, + '_attr':'pin_index', + }, + '2':{ + '_parser':number+number, + '_attr':'pin_at', + } + } + def __init__(self,pin_index=None,pin_at=None,pin_type='Round[A]Pad_1524_um'): + super(Pin,self).__init__(pin_type=pin_type,pin_index=pin_index,pin_at=pin_at) + + +class Footprint(AST): + tag='image' + schema={ + '0':{ + '_parser':text, + '_attr':'ref', + }, + 'outline':{ + '_parser':Outline, + '_multiple':True + }, + 'pin':{ + '_parser':Pin, + '_multiple':True + + } + + } + def __init__(self,ref=None,outline=None,pin=None): + outline=self.init_list(outline,[]) + pin=self.init_list(pin,[]) + super(Footprint,self).__init__(ref=ref,outline=outline,pin=pin) + + + +# def load_module(file) \ No newline at end of file diff --git a/dsn_python/dsn_rule.py b/dsn_python/dsn_rule.py new file mode 100644 index 0000000000000000000000000000000000000000..8af63ef664b635d7f52007ec1f56a0c0cbfa0466 --- /dev/null +++ b/dsn_python/dsn_rule.py @@ -0,0 +1,42 @@ + + +from pykicad.sexpr import * +class Clearance(AST): + tag='clearance' + schema={ + '0':{ + '_parser':number, + '_attr':'number' + }, + '1':{ + 'type':{ + '_parser':text, + '_attr':'typex' + }, + '_optional':True + }, + } + def __init__(self,number=200.1,typex=None): + super(Clearance,self).__init__(number=number,typex=typex) + +class Rule(AST): + tag='rule' + schema={ + '0':{ + 'width':{ + '_parser': number + }, + }, + '1':{ + 'clearance':{ + '_parser':Clearance, + '_multiple':True + }, + + }, + } + + def __init__(self,width=250,clearance=None): + clearance=self.init_list(clearance,[]) + + super(Rule,self).__init__(width=width,clearance=clearance) \ No newline at end of file diff --git a/dsn_python/dsnwritier.py b/dsn_python/dsnwritier.py new file mode 100644 index 0000000000000000000000000000000000000000..8a7b15395f5bde1cb172e4f041653a1e57148cc5 --- /dev/null +++ b/dsn_python/dsnwritier.py @@ -0,0 +1,243 @@ +#!/usr/bin/env python3 +from pykicad.sexpr import * +from dsn_rule import * +from dsn_module import Component,Footprint +import dsn_module as module + +class Parser(AST): + tag = 'parser' + schema = { + 'string_quote' : { + '_parser' : text, + '_attr' : 'quote_char' + }, + 'space_in_quoted_tokens' : { + '_parser': yes_no, + '_attr' : 'tokens_on_off' + }, + 'host_cad':{ + '_parser': text + }, + 'host_version':{ + '_parser':text + } + } + def __init__(self, + quote_char='\"', + tokens_on_off='on', + host_cad= "KiCad's Pcbnew", + host_version="5.1.3-ffb9f22~84~ubuntu18.04.1"): + + super(Parser,self).__init__(quote_char=quote_char, + tokens_on_off=tokens_on_off, + host_cad=host_cad, + host_version=host_version) + + +class Layer(AST): + tag='layer' + schema={ + '0':{ + '_parser': text, + '_attr': 'name' + }, + 'type':{ + '_parser': Literal('signal') | 'power' | 'mixed' | 'jumper' | 'user', + '_attr': 'typex' + }, + 'property':{ + 'index':{ + '_parser':text, + '_attr':'index' + }, + }, + } + index_ctr=0 + + def __init__(self,name,typex='signal',index=None): + index=Layer.index_ctr + Layer.index_ctr+=1 + super(Layer,self).__init__(name=name,typex=typex,index=index) + + +class Boundary(AST): + tag='boundary' + schema={ + 'path pcb':{ + '0':{ + '_parser':integer, + '_attr':'brd_index' + }, + '1':{ + '_parser': number, + '_attr': 'path' + }, + + } + } + + index_ctr=0 + def __init__(self,path,brd_index=None): + brd_index=Boundary.index_ctr + Boundary.index_ctr+=1 + + super(Boundary,self).__init__(path=path,brd_index=brd_index) + +class Keepout(AST): + tag='keepout' + schema={ + '0':{ + '0':{ + '_parser':text, + '_attr':'name' + }, + + ' ':{ + '0': { + '_parser':text, + '_attr':'shape' + }, + '1':{ + '_parser':text, + '_attr':'typex' + }, + '2':{ + '_parser':integer, + '_attr':'brd_index' + }, + '3':{ + '_parser': number, + '_attr':'path' + }, + }, + }, + } + def __init__(self,path,name='\"\"',brd_index=0,shape='polygon',typex='signal'): + + super(Keepout,self).__init__(path=path,name=name,brd_index=brd_index,shape=shape,typex=typex) + + + +class Dsn(AST): + tag = 'PCB "kicad_board"' + schema = { + '0':{ + 'parser' : { + '_parser': Parser + }, + }, + '1':{ + 'resolution':{ + '_parser': text + integer + }, + }, + '2':{ + 'unit':{ + '_parser': text + }, + }, + '3':{ + 'structure':{ + '0':{ + 'layers':{ + '_parser':Layer, + '_multiple':True + }, + }, + '1':{ + 'boundary':{ + '_parser':Boundary, + '_multiple':True + }, + }, + '2':{ + 'keepout':{ + '_parser': Keepout, + '_multiple': True + }, + }, + '3':{ + 'via':{ + '_parser': text, + '_attr': 'via_txt' + }, + }, + '4':{ + 'rule':{ + '_parser': Rule + } + } + }, + '_optional':True + }, + '4':{ + 'placement':{ + '0':{ + 'component':{ + '_parser':Component, + '_multiple':True + }, + }, + }, + }, + '5':{ + 'library':{ + '0':{ + 'image':{ + '_parser': Footprint, + '_multiple': True + }, + } + + # 'padstack':{ + # '_parser':Padstack, + # '_multiple': True + # } + + } + } + + + + } + + def __init__(self, + resolution=['um',10], + unit='um', + parser=None, + layers=None, + boundary=None, + keepout=None, + via_txt='"Via[0-1]_800:400_um"', + rule=None, + component=None, + image=None + ): + + layers=self.init_list(layers,[]) + parser=self.init_list(parser,[]) + boundary=self.init_list(boundary,[]) + keepout=self.init_list(keepout,[]) + component=self.init_list(component,[]) + image=self.init_list(image,[]) + + + super(Dsn,self).__init__( + resolution=resolution, + unit=unit, + parser=parser, + layers=layers, + boundary=boundary, + keepout=keepout, + via_txt=via_txt, + rule=rule, + component=component, + image=image + ) + + def to_file(self, path): + if not path.endswith('.dsn'): + path += '.dsn' + with open(path, 'w', encoding='utf-8') as f: + f.write(self.to_string()) + diff --git a/dsn_python/dsnwritier.pyc b/dsn_python/dsnwritier.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b54d2f136e0a7eed1bceb4c152ea8ba6585e81cf Binary files /dev/null and b/dsn_python/dsnwritier.pyc differ diff --git a/dsn_python/test_dsn_python.py b/dsn_python/test_dsn_python.py new file mode 100644 index 0000000000000000000000000000000000000000..86f6e431478fac39ead12aa1262c9275cd0c95e8 --- /dev/null +++ b/dsn_python/test_dsn_python.py @@ -0,0 +1,75 @@ +#!/usr/bin/env python3 +import dsnwritier +from pykicad import pcb + +test=dsnwritier.Dsn() + +############################################################################### +layers=[ + dsnwritier.Layer('F.Cu'), + dsnwritier.Layer('B.Cu') +] + + +bdata=[137735, -31864.8, 165736, -31864.8, 165736, -113335, 137735, -113335, + 137735, -113864, 160735, -113864, 160735, -151336, 150736, -151336, + 150736, -151865, 160735, -151865, 160735, -211335, 150736, -211335, + 150736, -211865, 169735, -211865, 169735, -249335, 96264.4,-249335, + 96264.4, -211865, 138264, -211865, 138264, -211335, 37264.4, -211335, + 37264.4, -151865, 138264, -151865, 138264, -151336, 87264.4, -151336, + 87264.4, -113864, 119265, -113864, 119265, -113335, 264.583, -113335, + 264.583, -31864.8, 78264.5, -31864.8, 78264.5, -264.632, 137735, -264.632, + 137735, -31864.8] + +kdata1=[138725, -221865, 138725, -244336, 150275, -244336, 150275, -221865, + 138725, -221865] +kdata2=[98235.3, -224531, 98764.5, -224531, 98764.5, -219905, 103236, -224376, + 103236, -236824, 98764.5, -241294, 98764.5, -236669, 98235.3, -236669, + 98235.3, -242572, 103610, -237198, 103765, -237198, 103765, -237043, + 103874, -236933, 103765, -236824, 103765, -224376, 103874, -224266, + 103765, -224157, 103765, -224002, 103610, -224002, 98235.3, -218628, + 98235.3, -224531] + +####################################################################################### +parsers= dsnwritier.Parser() + +boundary=dsnwritier.Boundary(bdata) + +keepout=[ + dsnwritier.Keepout(kdata1), + dsnwritier.Keepout(kdata2)] + +rule=dsnwritier.Rule() +clearance=[ + dsnwritier.Clearance(200.1), + dsnwritier.Clearance(200.1,'default_smd'), + dsnwritier.Clearance(50,'smd_smd')] +rule.clearance=clearance + +component=[dsnwritier.Component('U1',[103000,48000],name='"DEV"'), + dsnwritier.Component('J1',[103000,48000],name='"DEV"')] + + +image1_outline=[ + dsnwritier.module.Outline(width=120,outline_start=[-7620, 11430],outline_end=[7540, 11430]), + dsnwritier.module.Outline(width=120,outline_start=[-7620, 11430],outline_end=[7540, -13570]), + dsnwritier.module.Outline(width=120,outline_start=[-7620, -13570],outline_end=[-7620, -13570]), + dsnwritier.module.Outline(width=120,outline_start=[-7620, -13570],outline_end=[-7620, 11430])] +# image1_outline=[dsnwritier.module.Outline(120)] +image1_pin=[ + dsnwritier.module.Pin(1,[-6350, 10160]), + dsnwritier.module.Pin(2,[-6350, 7620])] + +image1=dsnwritier.Footprint('U1',image1_outline,image1_pin) +image=[image1] + +######################################################################################## +test.parser=parsers +test.layers=layers +test.boundary=boundary +test.keepout=keepout +test.rule=rule +test.component=component +test.image=image + +test.to_file('testdsn.dsn') diff --git a/dsn_python/testdsn.dsn b/dsn_python/testdsn.dsn new file mode 100644 index 0000000000000000000000000000000000000000..14da9ab6b506d80a9a8993b163bfe01890d10c11 --- /dev/null +++ b/dsn_python/testdsn.dsn @@ -0,0 +1,52 @@ + +(PCB "kicad_board" +(parser + (string_quote ") + (space_in_quoted_tokens on) + (host_cad "KiCad's Pcbnew") + (host_version 5.1.3-ffb9f22~84~ubuntu18.04.1)) + (resolution um 10) + (unit um) + (structure +(layer F.Cu + (type signal) + (property + (index 0))) +(layer B.Cu + (type signal) + (property + (index 1))) +(boundary + (path pcb 0 137735 -31864.8000000000 165736 -31864.8000000000 165736 -113335 137735 -113335 137735 -113864 160735 -113864 160735 -151336 150736 -151336 150736 -151865 160735 -151865 160735 -211335 150736 -211335 150736 -211865 169735 -211865 169735 -249335 96264.4000000000 -249335 96264.4000000000 -211865 138264 -211865 138264 -211335 37264.4000000000 -211335 37264.4000000000 -151865 138264 -151865 138264 -151336 87264.4000000000 -151336 87264.4000000000 -113864 119265 -113864 119265 -113335 264.5830000000 -113335 264.5830000000 -31864.8000000000 78264.5000000000 -31864.8000000000 78264.5000000000 -264.6320000000 137735 -264.6320000000 137735 -31864.8000000000)) +(keepout "" + ( polygon signal 0 138725 -221865 138725 -244336 150275 -244336 150275 -221865 138725 -221865)) +(keepout "" + ( polygon signal 0 98235.3000000000 -224531 98764.5000000000 -224531 98764.5000000000 -219905 103236 -224376 103236 -236824 98764.5000000000 -241294 98764.5000000000 -236669 98235.3000000000 -236669 98235.3000000000 -242572 103610 -237198 103765 -237198 103765 -237043 103874 -236933 103765 -236824 103765 -224376 103874 -224266 103765 -224157 103765 -224002 103610 -224002 98235.3000000000 -218628 98235.3000000000 -224531)) + (via "Via[0-1]_800:400_um") +(rule + (width 250) +(clearance 200.1000000000) +(clearance 200.1000000000 + (type default_smd)) +(clearance 50 + (type smd_smd)))) + (placement +(component U1 + (place U1 103000 -48000 front 0 + (PN "DEV"))) +(component J1 + (place J1 103000 -48000 front 0 + (PN "DEV")))) + (library +(image U1 +(outline + (path signal 120 -7620 11430 7540 11430)) +(outline + (path signal 120 -7620 11430 7540 -13570)) +(outline + (path signal 120 -7620 -13570 -7620 -13570)) +(outline + (path signal 120 -7620 -13570 -7620 11430)) +(pin Round[A]Pad_1524_um 1 -6350 10160) +(pin Round[A]Pad_1524_um 2 -6350 7620)) +)) \ No newline at end of file diff --git a/kicad_board.dsn b/kicad_board.dsn index bf4e54d0ef852f78c40625f484795c6a10b6639c..aa33aa96fea71b247d1c4eca49b355e562bf5003 100644 --- a/kicad_board.dsn +++ b/kicad_board.dsn @@ -1,1208 +1,249 @@ - -(PCB "kicad_board" +(pcb /home/jingyan/Documents/summer_intern_lemur/roco_electrical/kicad_board.dsn (parser (string_quote ") (space_in_quoted_tokens on) (host_cad "KiCad's Pcbnew") (host_version "5.1.3-ffb9f22~84~ubuntu18.04.1") - (generated_by_freeroute) ) (resolution um 10) + (unit um) (structure - (boundary - (rect pcb 164.6 -249435.0 169835.0 -164.6) - ) - (boundary - (polygon signal 0 - 96264.4 -249335.0 - 169735.0 -249335.0 - 169735.0 -211865.0 - 150736.0 -211865.0 - 150736.0 -211335.0 - 160735.0 -211335.0 - 160735.0 -151865.0 - 150736.0 -151865.0 - 150736.0 -151336.0 - 160735.0 -151336.0 - 160735.0 -113864.0 - 137735.0 -113864.0 - 137735.0 -113335.0 - 165736.0 -113335.0 - 165736.0 -31864.8 - 137735.0 -31864.8 - 137735.0 -264.6 - 78264.5 -264.6 - 78264.5 -31864.8 - 264.6 -31864.8 - 264.6 -113335.0 - 119265.0 -113335.0 - 119265.0 -113864.0 - 87264.4 -113864.0 - 87264.4 -151336.0 - 138264.0 -151336.0 - 138264.0 -151865.0 - 37264.4 -151865.0 - 37264.4 -211335.0 - 138264.0 -211335.0 - 138264.0 -211865.0 - 96264.4 -211865.0 - ) - ) - (snap_angle - fortyfive_degree - ) - (via "Via[0-1]_800:400_um") - (control - (via_at_smd off) - ) - (rule - (width 1000.0) - (clear 200.2) - (clear 125.0 (type smd_to_turn_gap)) - (clear 50.0 (type smd_smd)) - ) (layer F.Cu (type signal) + (property + (index 0) + ) ) (layer B.Cu (type signal) - ) - (autoroute_settings - (fanout off) - (autoroute on) - (postroute on) - (vias on) - (via_costs 50) - (plane_via_costs 5) - (start_ripup_costs 100) - (start_pass_no 4) - (layer_rule F.Cu - (active on) - (preferred_direction vertical) - (preferred_direction_trace_costs 1.0) - (against_preferred_direction_trace_costs 2.5) - ) - (layer_rule B.Cu - (active on) - (preferred_direction horizontal) - (preferred_direction_trace_costs 1.0) - (against_preferred_direction_trace_costs 1.7) - ) - ) - (keepout - (polygon B.Cu 0 - 101735.0 -31764.5 - 114264.0 -31764.5 - 114264.0 -13235.4 - 113735.0 -13235.4 - 113735.0 -31235.4 - 102265.0 -31235.4 - 102265.0 -13235.4 - 101735.0 -13235.4 - ) - (clearance_class default) - ) - (keepout - (polygon F.Cu 0 - 101735.0 -31764.5 - 114264.0 -31764.5 - 114264.0 -13235.4 - 113735.0 -13235.4 - 113735.0 -31235.4 - 102265.0 -31235.4 - 102265.0 -13235.4 - 101735.0 -13235.4 - ) - (clearance_class default) - ) - (keepout - (polygon B.Cu 0 - 31485.4 -45614.8 - 32514.8 -45614.8 - 32514.8 -35585.5 - 31485.4 -35585.5 - ) - (clearance_class default) - ) - (keepout - (polygon F.Cu 0 - 31485.4 -45614.8 - 32514.8 -45614.8 - 32514.8 -35585.5 - 31485.4 -35585.5 - ) - (clearance_class default) - ) - (keepout - (polygon B.Cu 0 - 150265.0 -50835.2 - 153735.0 -50835.2 - 153735.0 -42364.4 - 150265.0 -42364.4 - ) - (clearance_class default) - ) - (keepout - (polygon F.Cu 0 - 150265.0 -50835.2 - 153735.0 -50835.2 - 153735.0 -42364.4 - 150265.0 -42364.4 - ) - (clearance_class default) - ) - (keepout - (polygon B.Cu 0 - 6985.6 -61932.7 - 8014.5 -61932.7 - 8014.5 -45994.6 - 6985.6 -45994.6 - ) - (clearance_class default) - ) - (keepout - (polygon F.Cu 0 - 6985.6 -61932.7 - 8014.5 -61932.7 - 8014.5 -45994.6 - 6985.6 -45994.6 - ) - (clearance_class default) - ) - (keepout - (polygon B.Cu 0 - 163500.0 -66792.3 - 163610.0 -66682.8 - 163765.0 -66682.8 - 163765.0 -66527.8 - 163874.0 -66418.2 - 163765.0 -66308.7 - 163765.0 -61153.4 - 163236.0 -61153.4 - 163236.0 -65779.5 - 158764.0 -61308.4 - 158764.0 -46618.9 - 163236.0 -42147.9 - 163236.0 -46773.9 - 163765.0 -46773.9 - 163765.0 -41618.7 - 163874.0 -41509.1 - 163765.0 -41399.6 - 163765.0 -41244.6 - 163610.0 -41244.6 - 163500.0 -41135.0 - 163391.0 -41244.6 - 163236.0 -41244.6 - 163236.0 -41399.6 - 158390.0 -46244.8 - 158235.0 -46244.8 - 158235.0 -46399.3 - 158126.0 -46509.3 - 158235.0 -46618.9 - 158235.0 -61308.4 - 158126.0 -61418.0 - 158235.0 -61527.6 - 158235.0 -61682.6 - 158390.0 -61682.6 - 163236.0 -66527.8 - 163236.0 -66682.8 - 163391.0 -66682.8 - ) - (clearance_class default) - ) - (keepout - (polygon F.Cu 0 - 163500.0 -66792.3 - 163610.0 -66682.8 - 163765.0 -66682.8 - 163765.0 -66527.8 - 163874.0 -66418.2 - 163765.0 -66308.7 - 163765.0 -61153.4 - 163236.0 -61153.4 - 163236.0 -65779.5 - 158764.0 -61308.4 - 158764.0 -46618.9 - 163236.0 -42147.9 - 163236.0 -46773.9 - 163765.0 -46773.9 - 163765.0 -41618.7 - 163874.0 -41509.1 - 163765.0 -41399.6 - 163765.0 -41244.6 - 163610.0 -41244.6 - 163500.0 -41135.0 - 163391.0 -41244.6 - 163236.0 -41244.6 - 163236.0 -41399.6 - 158390.0 -46244.8 - 158235.0 -46244.8 - 158235.0 -46399.3 - 158126.0 -46509.3 - 158235.0 -46618.9 - 158235.0 -61308.4 - 158126.0 -61418.0 - 158235.0 -61527.6 - 158235.0 -61682.6 - 158390.0 -61682.6 - 163236.0 -66527.8 - 163236.0 -66682.8 - 163391.0 -66682.8 + (property + (index 1) ) - (clearance_class default) ) - (keepout - (polygon B.Cu 0 - 81014.7 -74585.7 - 107485.0 -74585.7 - 107485.0 -67114.8 - 81014.7 -67114.8 - ) - (clearance_class default) - ) - (keepout - (polygon F.Cu 0 - 81014.7 -74585.7 - 107485.0 -74585.7 - 107485.0 -67114.8 - 81014.7 -67114.8 - ) - (clearance_class default) - ) - (keepout - (polygon B.Cu 0 - 6985.6 -99205.4 - 8014.5 -99205.4 - 8014.5 -83267.3 - 6985.6 -83267.3 - ) - (clearance_class default) - ) - (keepout - (polygon F.Cu 0 - 6985.6 -99205.4 - 8014.5 -99205.4 - 8014.5 -83267.3 - 6985.6 -83267.3 - ) - (clearance_class default) - ) - (keepout - (polygon B.Cu 0 - 163500.0 -104065.0 - 163610.0 -103955.0 - 163765.0 -103955.0 - 163765.0 -103800.0 - 163874.0 -103691.0 - 163765.0 -103581.0 - 163765.0 -98426.1 - 163236.0 -98426.1 - 163236.0 -103052.0 - 158764.0 -98581.1 - 158764.0 -83891.6 - 163236.0 -79420.5 - 163236.0 -84046.6 - 163765.0 -84046.6 - 163765.0 -78891.3 - 163874.0 -78781.8 - 163765.0 -78672.2 - 163765.0 -78517.2 - 163610.0 -78517.2 - 163500.0 -78407.7 - 163391.0 -78517.2 - 163236.0 -78517.2 - 163236.0 -78672.2 - 158390.0 -83517.4 - 158235.0 -83517.4 - 158235.0 -83672.5 - 158126.0 -83782.0 - 158235.0 -83891.6 - 158235.0 -98581.1 - 158126.0 -98690.7 - 158235.0 -98800.7 - 158235.0 -98955.2 - 158390.0 -98955.2 - 163236.0 -103800.0 - 163236.0 -103955.0 - 163391.0 -103955.0 - ) - (clearance_class default) - ) - (keepout - (polygon F.Cu 0 - 163500.0 -104065.0 - 163610.0 -103955.0 - 163765.0 -103955.0 - 163765.0 -103800.0 - 163874.0 -103691.0 - 163765.0 -103581.0 - 163765.0 -98426.1 - 163236.0 -98426.1 - 163236.0 -103052.0 - 158764.0 -98581.1 - 158764.0 -83891.6 - 163236.0 -79420.5 - 163236.0 -84046.6 - 163765.0 -84046.6 - 163765.0 -78891.3 - 163874.0 -78781.8 - 163765.0 -78672.2 - 163765.0 -78517.2 - 163610.0 -78517.2 - 163500.0 -78407.7 - 163391.0 -78517.2 - 163236.0 -78517.2 - 163236.0 -78672.2 - 158390.0 -83517.4 - 158235.0 -83517.4 - 158235.0 -83672.5 - 158126.0 -83782.0 - 158235.0 -83891.6 - 158235.0 -98581.1 - 158126.0 -98690.7 - 158235.0 -98800.7 - 158235.0 -98955.2 - 158390.0 -98955.2 - 163236.0 -103800.0 - 163236.0 -103955.0 - 163391.0 -103955.0 - ) - (clearance_class default) - ) - (keepout - (polygon B.Cu 0 - 138725.0 -108336.0 - 150275.0 -108336.0 - 150275.0 -85864.6 - 138725.0 -85864.6 - ) - (clearance_class default) - ) - (keepout - (polygon F.Cu 0 - 138725.0 -108336.0 - 150275.0 -108336.0 - 150275.0 -85864.6 - 138725.0 -85864.6 - ) - (clearance_class default) - ) - (keepout - (polygon B.Cu 0 - 65725.7 -108336.0 - 77274.4 -108336.0 - 77274.4 -85864.6 - 65725.7 -85864.6 - ) - (clearance_class default) - ) - (keepout - (polygon F.Cu 0 - 65725.7 -108336.0 - 77274.4 -108336.0 - 77274.4 -85864.6 - 65725.7 -85864.6 - ) - (clearance_class default) - ) - (keepout - (polygon B.Cu 0 - 93985.5 -139448.0 - 95014.4 -139448.0 - 95014.4 -125752.0 - 93985.5 -125752.0 - ) - (clearance_class default) - ) - (keepout - (polygon F.Cu 0 - 93985.5 -139448.0 - 95014.4 -139448.0 - 95014.4 -125752.0 - 93985.5 -125752.0 - ) - (clearance_class default) - ) - (keepout - (polygon B.Cu 0 - 138725.0 -141336.0 - 150275.0 -141336.0 - 150275.0 -118865.0 - 138725.0 -118865.0 - ) - (clearance_class default) - ) - (keepout - (polygon F.Cu 0 - 138725.0 -141336.0 - 150275.0 -141336.0 - 150275.0 -118865.0 - 138725.0 -118865.0 - ) - (clearance_class default) - ) - (keepout - (polygon B.Cu 0 - 158500.0 -144308.0 - 158609.0 -144198.0 - 158764.0 -144198.0 - 158764.0 -144043.0 - 158874.0 -143933.0 - 158764.0 -143824.0 - 158764.0 -138669.0 - 158235.0 -138669.0 - 158235.0 -143295.0 - 153765.0 -138824.0 - 153765.0 -126376.0 - 158235.0 -121905.0 - 158235.0 -126531.0 - 158764.0 -126531.0 - 158764.0 -121376.0 - 158874.0 -121267.0 - 158764.0 -121157.0 - 158764.0 -121002.0 - 158609.0 -121002.0 - 158500.0 -120892.0 - 158390.0 -121002.0 - 158235.0 -121002.0 - 158235.0 -121157.0 - 153391.0 -126002.0 - 153236.0 -126002.0 - 153236.0 -126157.0 - 153126.0 -126267.0 - 153236.0 -126376.0 - 153236.0 -138824.0 - 153126.0 -138933.0 - 153236.0 -139043.0 - 153236.0 -139198.0 - 153391.0 -139198.0 - 158235.0 -144043.0 - 158235.0 -144198.0 - 158390.0 -144198.0 - ) - (clearance_class default) - ) - (keepout - (polygon F.Cu 0 - 158500.0 -144308.0 - 158609.0 -144198.0 - 158764.0 -144198.0 - 158764.0 -144043.0 - 158874.0 -143933.0 - 158764.0 -143824.0 - 158764.0 -138669.0 - 158235.0 -138669.0 - 158235.0 -143295.0 - 153765.0 -138824.0 - 153765.0 -126376.0 - 158235.0 -121905.0 - 158235.0 -126531.0 - 158764.0 -126531.0 - 158764.0 -121376.0 - 158874.0 -121267.0 - 158764.0 -121157.0 - 158764.0 -121002.0 - 158609.0 -121002.0 - 158500.0 -120892.0 - 158390.0 -121002.0 - 158235.0 -121002.0 - 158235.0 -121157.0 - 153391.0 -126002.0 - 153236.0 -126002.0 - 153236.0 -126157.0 - 153126.0 -126267.0 - 153236.0 -126376.0 - 153236.0 -138824.0 - 153126.0 -138933.0 - 153236.0 -139043.0 - 153236.0 -139198.0 - 153391.0 -139198.0 - 158235.0 -144043.0 - 158235.0 -144198.0 - 158390.0 -144198.0 - ) - (clearance_class default) - ) - (keepout - (polygon B.Cu 0 - 43985.4 -192114.0 - 45014.8 -192114.0 - 45014.8 -171085.0 - 43985.4 -171085.0 - ) - (clearance_class default) - ) - (keepout - (polygon F.Cu 0 - 43985.4 -192114.0 - 45014.8 -192114.0 - 45014.8 -171085.0 - 43985.4 -171085.0 - ) - (clearance_class default) - ) - (keepout - (polygon B.Cu 0 - 158500.0 -196974.0 - 158609.0 -196865.0 - 158764.0 -196865.0 - 158764.0 -196709.0 - 158874.0 -196600.0 - 158764.0 -196490.0 - 158764.0 -191336.0 - 158235.0 -191336.0 - 158235.0 -195961.0 - 153765.0 -191490.0 - 153765.0 -171709.0 - 158235.0 -167239.0 - 158235.0 -171864.0 - 158764.0 -171864.0 - 158764.0 -165961.0 - 153391.0 -171335.0 - 153236.0 -171335.0 - 153236.0 -171490.0 - 153126.0 -171600.0 - 153236.0 -171709.0 - 153236.0 -191710.0 - 158235.0 -196709.0 - 158235.0 -196865.0 - 158390.0 -196865.0 - ) - (clearance_class default) - ) - (keepout - (polygon F.Cu 0 - 158500.0 -196974.0 - 158609.0 -196865.0 - 158764.0 -196865.0 - 158764.0 -196709.0 - 158874.0 -196600.0 - 158764.0 -196490.0 - 158764.0 -191336.0 - 158235.0 -191336.0 - 158235.0 -195961.0 - 153765.0 -191490.0 - 153765.0 -171709.0 - 158235.0 -167239.0 - 158235.0 -171864.0 - 158764.0 -171864.0 - 158764.0 -165961.0 - 153391.0 -171335.0 - 153236.0 -171335.0 - 153236.0 -171490.0 - 153126.0 -171600.0 - 153236.0 -171709.0 - 153236.0 -191710.0 - 158235.0 -196709.0 - 158235.0 -196865.0 - 158390.0 -196865.0 - ) - (clearance_class default) - ) - (keepout - (polygon B.Cu 0 - 129515.0 -208585.0 - 136985.0 -208585.0 - 136985.0 -182115.0 - 129515.0 -182115.0 - ) - (clearance_class default) - ) - (keepout - (polygon F.Cu 0 - 129515.0 -208585.0 - 136985.0 -208585.0 - 136985.0 -182115.0 - 129515.0 -182115.0 - ) - (clearance_class default) - ) - (keepout - (polygon B.Cu 0 - 161985.0 -237448.0 - 163014.0 -237448.0 - 163014.0 -223752.0 - 161985.0 -223752.0 - ) - (clearance_class default) - ) - (keepout - (polygon F.Cu 0 - 161985.0 -237448.0 - 163014.0 -237448.0 - 163014.0 -223752.0 - 161985.0 -223752.0 - ) - (clearance_class default) - ) - (keepout - (polygon B.Cu 0 - 98235.3 -242572.0 - 103610.0 -237198.0 - 103765.0 -237198.0 - 103765.0 -237043.0 - 103874.0 -236933.0 - 103765.0 -236824.0 - 103765.0 -224376.0 - 103874.0 -224266.0 - 103765.0 -224157.0 - 103765.0 -224002.0 - 103610.0 -224002.0 - 98235.3 -218628.0 - 98235.3 -224531.0 - 98764.5 -224531.0 - 98764.5 -219905.0 - 103236.0 -224376.0 - 103236.0 -236824.0 - 98764.5 -241294.0 - 98764.5 -236669.0 - 98235.3 -236669.0 - ) - (clearance_class default) - ) - (keepout - (polygon F.Cu 0 - 98235.3 -242572.0 - 103610.0 -237198.0 - 103765.0 -237198.0 - 103765.0 -237043.0 - 103874.0 -236933.0 - 103765.0 -236824.0 - 103765.0 -224376.0 - 103874.0 -224266.0 - 103765.0 -224157.0 - 103765.0 -224002.0 - 103610.0 -224002.0 - 98235.3 -218628.0 - 98235.3 -224531.0 - 98764.5 -224531.0 - 98764.5 -219905.0 - 103236.0 -224376.0 - 103236.0 -236824.0 - 98764.5 -241294.0 - 98764.5 -236669.0 - 98235.3 -236669.0 - ) - (clearance_class default) - ) - (keepout - (polygon B.Cu 0 - 138725.0 -244336.0 - 150275.0 -244336.0 - 150275.0 -221865.0 - 138725.0 -221865.0 - ) - (clearance_class default) - ) - (keepout - (polygon F.Cu 0 - 138725.0 -244336.0 - 150275.0 -244336.0 - 150275.0 -221865.0 - 138725.0 -221865.0 - ) - (clearance_class default) + (boundary + (path pcb 0 137735 -31864.8 165736 -31864.8 165736 -113335 137735 -113335 + 137735 -113864 160735 -113864 160735 -151336 150736 -151336 + 150736 -151865 160735 -151865 160735 -211335 150736 -211335 + 150736 -211865 169735 -211865 169735 -249335 96264.4 -249335 + 96264.4 -211865 138264 -211865 138264 -211335 37264.4 -211335 + 37264.4 -151865 138264 -151865 138264 -151336 87264.4 -151336 + 87264.4 -113864 119265 -113864 119265 -113335 264.583 -113335 + 264.583 -31864.8 78264.5 -31864.8 78264.5 -264.632 137735 -264.632 + 137735 -31864.8) + ) + (keepout "" (polygon signal 0 138725 -221865 138725 -244336 150275 -244336 150275 -221865 + 138725 -221865)) + (keepout "" (polygon signal 0 98235.3 -224531 98764.5 -224531 98764.5 -219905 103236 -224376 + 103236 -236824 98764.5 -241294 98764.5 -236669 98235.3 -236669 + 98235.3 -242572 103610 -237198 103765 -237198 103765 -237043 + 103874 -236933 103765 -236824 103765 -224376 103874 -224266 + 103765 -224157 103765 -224002 103610 -224002 98235.3 -218628 + 98235.3 -224531)) + (keepout "" (polygon signal 0 161985 -223752 161985 -237448 163014 -237448 163014 -223752 + 161985 -223752)) + (keepout "" (polygon signal 0 129515 -182115 129515 -208585 136985 -208585 136985 -182115 + 129515 -182115)) + (keepout "" (polygon signal 0 153391 -171335 153236 -171335 153236 -171490 153126 -171600 + 153236 -171709 153236 -191710 158235 -196709 158235 -196865 + 158390 -196865 158500 -196974 158609 -196865 158764 -196865 + 158764 -196709 158874 -196600 158764 -196490 158764 -191336 + 158235 -191336 158235 -195961 153765 -191490 153765 -171709 + 158235 -167239 158235 -171864 158764 -171864 158764 -165961 + 153391 -171335)) + (keepout "" (polygon signal 0 43985.4 -171085 43985.4 -192114 45014.8 -192114 45014.8 -171085 + 43985.4 -171085)) + (keepout "" (polygon signal 0 158390 -121002 158235 -121002 158235 -121157 153391 -126002 + 153236 -126002 153236 -126157 153126 -126267 153236 -126376 + 153236 -138824 153126 -138933 153236 -139043 153236 -139198 + 153391 -139198 158235 -144043 158235 -144198 158390 -144198 + 158500 -144308 158609 -144198 158764 -144198 158764 -144043 + 158874 -143933 158764 -143824 158764 -138669 158235 -138669 + 158235 -143295 153765 -138824 153765 -126376 158235 -121905 + 158235 -126531 158764 -126531 158764 -121376 158874 -121267 + 158764 -121157 158764 -121002 158609 -121002 158500 -120892 + 158390 -121002)) + (keepout "" (polygon signal 0 138725 -118865 138725 -141336 150275 -141336 150275 -118865 + 138725 -118865)) + (keepout "" (polygon signal 0 93985.5 -125752 93985.5 -139448 95014.4 -139448 95014.4 -125752 + 93985.5 -125752)) + (keepout "" (polygon signal 0 65725.7 -85864.6 65725.7 -108336 77274.4 -108336 77274.4 -85864.6 + 65725.7 -85864.6)) + (keepout "" (polygon signal 0 138725 -85864.6 138725 -108336 150275 -108336 150275 -85864.6 + 138725 -85864.6)) + (keepout "" (polygon signal 0 163391 -78517.2 163236 -78517.2 163236 -78672.2 158390 -83517.4 + 158235 -83517.4 158235 -83672.5 158126 -83782 158235 -83891.6 + 158235 -98581.1 158126 -98690.7 158235 -98800.7 158235 -98955.2 + 158390 -98955.2 163236 -103800 163236 -103955 163391 -103955 + 163500 -104065 163610 -103955 163765 -103955 163765 -103800 + 163874 -103691 163765 -103581 163765 -98426.1 163236 -98426.1 + 163236 -103052 158764 -98581.1 158764 -83891.6 163236 -79420.5 + 163236 -84046.6 163765 -84046.6 163765 -78891.3 163874 -78781.8 + 163765 -78672.2 163765 -78517.2 163610 -78517.2 163500 -78407.7 + 163391 -78517.2)) + (keepout "" (polygon signal 0 6985.62 -83267.3 6985.62 -99205.4 8014.5 -99205.4 8014.5 -83267.3 + 6985.62 -83267.3)) + (keepout "" (polygon signal 0 81014.7 -67114.8 81014.7 -74585.7 107485 -74585.7 107485 -67114.8 + 81014.7 -67114.8)) + (keepout "" (polygon signal 0 163391 -41244.6 163236 -41244.6 163236 -41399.6 158390 -46244.8 + 158235 -46244.8 158235 -46399.3 158126 -46509.3 158235 -46618.9 + 158235 -61308.4 158126 -61418 158235 -61527.6 158235 -61682.6 + 158390 -61682.6 163236 -66527.8 163236 -66682.8 163391 -66682.8 + 163500 -66792.3 163610 -66682.8 163765 -66682.8 163765 -66527.8 + 163874 -66418.2 163765 -66308.7 163765 -61153.4 163236 -61153.4 + 163236 -65779.5 158764 -61308.4 158764 -46618.9 163236 -42147.9 + 163236 -46773.9 163765 -46773.9 163765 -41618.7 163874 -41509.1 + 163765 -41399.6 163765 -41244.6 163610 -41244.6 163500 -41135 + 163391 -41244.6)) + (keepout "" (polygon signal 0 6985.62 -45994.6 6985.62 -61932.7 8014.5 -61932.7 8014.5 -45994.6 + 6985.62 -45994.6)) + (keepout "" (polygon signal 0 150265 -42364.4 150265 -50835.2 153735 -50835.2 153735 -42364.4 + 150265 -42364.4)) + (keepout "" (polygon signal 0 31485.4 -35585.5 31485.4 -45614.8 32514.8 -45614.8 + 32514.8 -35585.5 31485.4 -35585.5)) + (keepout "" (polygon signal 0 101735 -13235.4 101735 -31764.5 114264 -31764.5 114264 -13235.4 + 113735 -13235.4 113735 -31235.4 102265 -31235.4 102265 -13235.4 + 101735 -13235.4)) + (keepout "" (polygon signal 0 105736 -17735.4 105736 -27264.5 110265 -27264.5 110265 -26735.3 + 106265 -26735.3 106265 -18264.6 110265 -18264.6 110265 -17735.4 + 105736 -17735.4)) + (via "Via[0-1]_800:400_um") + (rule + (width 250) + (clearance 200.1) + (clearance 200.1 (type default_smd)) + (clearance 50 (type smd_smd)) ) ) - (placement +50 (placement (component U1 - (place - U1 103000.0 -48000.0 front 90 - (pin 1 (clearance_class default)) - (pin 2 (clearance_class default)) - (pin 3 (clearance_class default)) - (pin 4 (clearance_class default)) - (pin 5 (clearance_class default)) - (pin 6 (clearance_class default)) - (pin 7 (clearance_class default)) - (pin 8 (clearance_class default)) - (pin 9 (clearance_class default)) - (pin 10 (clearance_class default)) - (pin 11 (clearance_class default)) - (pin 12 (clearance_class default)) - (pin 13 (clearance_class default)) - (pin 14 (clearance_class default)) - (pin 15 (clearance_class default)) - (pin 16 (clearance_class default)) - (pin 17 (clearance_class default)) - (pin 18 (clearance_class default)) - (pin 19 (clearance_class default)) - (pin 20 (clearance_class default)) - (pin 21 (clearance_class default)) - (pin 22 (clearance_class default)) - (pin 23 (clearance_class default)) - (pin 24 (clearance_class default)) - (pin 25 (clearance_class default)) - (pin 26 (clearance_class default)) - (pin 27 (clearance_class default)) - (pin 28 (clearance_class default)) - (pin 29 (clearance_class default)) - (pin 30 (clearance_class default)) - ) + (place U1 103000 -48000 front 90 (PN "ESP12F-Devkit-V3")) ) (component J1 - (place - J1 100000.0 -87000.0 front 270 - (pin 1 (clearance_class default)) - (pin 2 (clearance_class default)) - (pin 3 (clearance_class default)) - (pin 4 (clearance_class default)) - (pin 5 (clearance_class default)) - (pin 6 (clearance_class default)) - (pin 7 (clearance_class default)) - (pin 8 (clearance_class default)) - (pin 9 (clearance_class default)) - (pin 10 (clearance_class default)) - ) + (place J1 100000 -87000 front 270 (PN "mpu-9250")) ) ) (library (image U1 - (side front) - (pin "Round[A]Pad_1524_um" 1 -12065.0 19050.0) - (pin "Round[A]Pad_1524_um" 2 -12065.0 16510.0) - (pin "Round[A]Pad_1524_um" 3 -12065.0 13970.0) - (pin "Round[A]Pad_1524_um" 4 -12065.0 11430.0) - (pin "Round[A]Pad_1524_um" 5 -12065.0 8890.0) - (pin "Round[A]Pad_1524_um" 6 -12065.0 6350.0) - (pin "Round[A]Pad_1524_um" 7 -12065.0 3810.0) - (pin "Round[A]Pad_1524_um" 8 -12065.0 1270.0) - (pin "Round[A]Pad_1524_um" 9 -12065.0 -1270.0) - (pin "Round[A]Pad_1524_um" 10 -12065.0 -3810.0) - (pin "Round[A]Pad_1524_um" 11 -12065.0 -6350.0) - (pin "Round[A]Pad_1524_um" 12 -12065.0 -8890.0) - (pin "Round[A]Pad_1524_um" 13 -12065.0 -11430.0) - (pin "Round[A]Pad_1524_um" 14 -12065.0 -13970.0) - (pin "Round[A]Pad_1524_um" 15 -12065.0 -16510.0) - (pin "Round[A]Pad_1524_um" 16 11430.0 -16510.0) - (pin "Round[A]Pad_1524_um" 17 11430.0 -13970.0) - (pin "Round[A]Pad_1524_um" 18 11430.0 -11430.0) - (pin "Round[A]Pad_1524_um" 19 11430.0 -8890.0) - (pin "Round[A]Pad_1524_um" 20 11430.0 -6350.0) - (pin "Round[A]Pad_1524_um" 21 11430.0 -3810.0) - (pin "Round[A]Pad_1524_um" 22 11430.0 -1270.0) - (pin "Round[A]Pad_1524_um" 23 11430.0 1270.0) - (pin "Round[A]Pad_1524_um" 24 11430.0 3810.0) - (pin "Round[A]Pad_1524_um" 25 11430.0 6350.0) - (pin "Round[A]Pad_1524_um" 26 11430.0 8890.0) - (pin "Round[A]Pad_1524_um" 27 11430.0 11430.0) - (pin "Round[A]Pad_1524_um" 28 11430.0 13970.0) - (pin "Round[A]Pad_1524_um" 29 11430.0 16510.0) - (pin "Round[A]Pad_1524_um" 30 11430.0 19050.0) - (outline - (polygon signal 0 - 3778.9 -22935.0 - 11461.1 -22935.0 - 11505.0 -22891.1 - 11505.0 -22828.9 - 11461.1 -22785.0 - 3778.9 -22785.0 - 3735.0 -22828.9 - 3735.0 -22891.1 - ) - ) - (outline - (polygon signal 0 - -5531.1 18195.0 - 5531.1 18195.0 - 5575.0 18238.9 - 5575.0 18301.1 - 5531.1 18345.0 - -5531.1 18345.0 - -5575.0 18301.1 - -5575.0 18238.9 - ) - ) - (outline - (polygon signal 0 - 5468.9 18195.0 - 5531.1 18195.0 - 5575.0 18238.9 - 5575.0 25431.1 - 5531.1 25475.0 - 5468.9 25475.0 - 5425.0 25431.1 - 5425.0 18238.9 - ) - ) - (outline - (polygon signal 0 - -5531.1 18195.0 - -5468.9 18195.0 - -5425.0 18238.9 - -5425.0 25431.1 - -5468.9 25475.0 - -5531.1 25475.0 - -5575.0 25431.1 - -5575.0 18238.9 - ) - ) - (outline - (polygon signal 0 - -3831.1 -23935.0 - -3768.9 -23935.0 - -3725.0 -23891.1 - -3725.0 -18098.9 - -3768.9 -18055.0 - -3831.1 -18055.0 - -3875.0 -18098.9 - -3875.0 -23891.1 - ) - ) - (outline - (polygon signal 0 - -3831.1 -18205.0 - 3831.1 -18205.0 - 3875.0 -18161.1 - 3875.0 -18098.9 - 3831.1 -18055.0 - -3831.1 -18055.0 - -3875.0 -18098.9 - -3875.0 -18161.1 - ) - ) - (outline - (polygon signal 0 - 3768.9 -23935.0 - 3831.1 -23935.0 - 3875.0 -23891.1 - 3875.0 -18098.9 - 3831.1 -18055.0 - 3768.9 -18055.0 - 3725.0 -18098.9 - 3725.0 -23891.1 - ) - ) - (outline - (polygon signal 0 - -3831.1 -23935.0 - 3831.1 -23935.0 - 3875.0 -23891.1 - 3875.0 -23828.9 - 3831.1 -23785.0 - -3831.1 -23785.0 - -3875.0 -23828.9 - -3875.0 -23891.1 - ) - ) - (outline - (polygon signal 0 - 12668.9 -21665.0 - 12731.1 -21665.0 - 12775.0 -21621.1 - 12775.0 24161.1 - 12731.1 24205.0 - 12668.9 24205.0 - 12625.0 24161.1 - 12625.0 -21621.1 - ) - ) - (outline - (polygon signal 0 - -13366.1 -21665.0 - -13303.9 -21665.0 - -13260.0 -21621.1 - -13260.0 24161.1 - -13303.9 24205.0 - -13366.1 24205.0 - -13410.0 24161.1 - -13410.0 -21621.1 - ) - ) - (outline - (polygon signal 0 - -12096.1 -22935.0 - -3778.9 -22935.0 - -3735.0 -22891.1 - -3735.0 -22828.9 - -3778.9 -22785.0 - -12096.1 -22785.0 - -12140.0 -22828.9 - -12140.0 -22891.1 - ) - ) - (outline - (polygon signal 0 - -12731.1 25325.0 - 11461.1 25325.0 - 11505.0 25368.9 - 11505.0 25431.1 - 11461.1 25475.0 - -12731.1 25475.0 - -12775.0 25431.1 - -12775.0 25368.9 - ) - ) - (outline - (polygon signal 0 - 10291.530499999999 -22186.0 - 10302.527455919397 -22186.0 - 10843.97169166293 -22062.463585293 - 11325.947013782543 -21784.152986217458 - 11333.023404255318 -21777.07659574468 - 11706.60450939226 -21374.569111791534 - 11948.7281602337 -20871.76907233432 - 12031.1 -20325.30726817043 - 12031.1 -20314.69273182957 - 11948.7281602337 -19768.23092766568 - 11706.60450939226 -19265.430888208466 - 11333.023404255318 -18862.92340425532 - 11325.947013782543 -18855.847013782542 - 10843.97169166293 -18577.536414707 - 10302.527455919397 -18454.0 - 10291.530499999999 -18454.0 - 9743.298242366403 -18495.073778432932 - 9224.211525157132 -18698.833284525917 - 8793.049528301886 -19042.650471698114 - 8785.39658848614 -19050.303411513858 - 8473.459064925266 -19507.763513208072 - 8309.0 -20040.952724968312 - 8309.0 -20599.047275031688 - 8473.459064925266 -21132.236486791928 - 8785.39658848614 -21589.696588486142 - 8793.049528301886 -21597.349528301886 - 9224.211525157132 -21941.166715474083 - 9743.298242366403 -22144.926221567068 - ) - ) - (outline - (polygon signal 0 - -10663.469500000001 -22186.0 - -10652.472544080603 -22186.0 - -10111.02830833707 -22062.463585293 - -9629.052986217457 -21784.152986217458 - -9621.976595744682 -21777.07659574468 - -9248.39549060774 -21374.569111791534 - -9006.2718397663 -20871.76907233432 - -8923.9 -20325.30726817043 - -8923.9 -20314.69273182957 - -9006.2718397663 -19768.23092766568 - -9248.39549060774 -19265.430888208466 - -9621.976595744682 -18862.92340425532 - -9629.052986217457 -18855.847013782542 - -10111.02830833707 -18577.536414707 - -10652.472544080603 -18454.0 - -10663.469500000001 -18454.0 - -11211.701757633597 -18495.073778432932 - -11730.788474842868 -18698.833284525917 - -12161.950471698114 -19042.650471698114 - -12169.60341151386 -19050.303411513858 - -12481.540935074734 -19507.763513208072 - -12646.0 -20040.952724968312 - -12646.0 -20599.047275031688 - -12481.540935074734 -21132.236486791928 - -12169.60341151386 -21589.696588486142 - -12161.950471698114 -21597.349528301886 - -11730.788474842868 -21941.166715474083 - -11211.701757633597 -22144.926221567068 - ) - ) - (outline - (polygon signal 0 - -10663.469500000001 20994.0 - -10652.472544080603 20994.0 - -10111.02830833707 21117.536414707 - -9629.052986217457 21395.847013782542 - -9621.976595744682 21402.92340425532 - -9248.39549060774 21805.430888208466 - -9006.2718397663 22308.23092766568 - -8923.9 22854.69273182957 - -8923.9 22865.30726817043 - -9006.2718397663 23411.76907233432 - -9248.39549060774 23914.569111791534 - -9621.976595744682 24317.07659574468 - -9629.052986217457 24324.152986217458 - -10111.02830833707 24602.463585293 - -10652.472544080603 24726.0 - -10663.469500000001 24726.0 - -11211.701757633597 24684.926221567068 - -11730.788474842868 24481.166715474083 - -12161.950471698114 24137.349528301886 - -12169.60341151386 24129.696588486142 - -12481.540935074734 23672.236486791928 - -12646.0 23139.047275031688 - -12646.0 22580.952724968312 - -12481.540935074734 22047.763513208072 - -12169.60341151386 21590.303411513858 - -12161.950471698114 21582.650471698114 - -11730.788474842868 21238.833284525917 - -11211.701757633597 21035.073778432932 - ) - ) - (outline - (polygon signal 0 - 10291.530499999999 20994.0 - 10302.527455919397 20994.0 - 10843.97169166293 21117.536414707 - 11325.947013782543 21395.847013782542 - 11333.023404255318 21402.92340425532 - 11706.60450939226 21805.430888208466 - 11948.7281602337 22308.23092766568 - 12031.1 22854.69273182957 - 12031.1 22865.30726817043 - 11948.7281602337 23411.76907233432 - 11706.60450939226 23914.569111791534 - 11333.023404255318 24317.07659574468 - 11325.947013782543 24324.152986217458 - 10843.97169166293 24602.463585293 - 10302.527455919397 24726.0 - 10291.530499999999 24726.0 - 9743.298242366403 24684.926221567068 - 9224.211525157132 24481.166715474083 - 8793.049528301886 24137.349528301886 - 8785.39658848614 24129.696588486142 - 8473.459064925266 23672.236486791928 - 8309.0 23139.047275031688 - 8309.0 22580.952724968312 - 8473.459064925266 22047.763513208072 - 8785.39658848614 21590.303411513858 - 8793.049528301886 21582.650471698114 - 9224.211525157132 21238.833284525917 - 9743.298242366403 21035.073778432932 - ) - ) + (outline (path signal 150 11430 -22860 3810 -22860)) + (outline (path signal 150 5500 18270 -5500 18270)) + (outline (path signal 150 5500 25400 5500 18270)) + (outline (path signal 150 -5500 18270 -5500 25400)) + (outline (path signal 150 -3800 -23860 -3800 -18130)) + (outline (path signal 150 -3800 -18130 3800 -18130)) + (outline (path signal 150 3800 -18130 3800 -23860)) + (outline (path signal 150 3800 -23860 -3800 -23860)) + (outline (path signal 150 12700 24130 12700 -21590)) + (outline (path signal 150 -13335 24130 -13335 -21590)) + (outline (path signal 150 -3810 -22860 -12065 -22860)) + (outline (path signal 150 11430 25400 -12700 25400)) + (outline (path signal 150 11956.1 -20320 11876.3 -20849.4 11644 -21331.8 11279.8 -21724.2 + 10816.2 -21991.9 10294.2 -22111 9760.34 -22071 9261.97 -21875.4 + 8843.4 -21541.6 8541.81 -21099.3 8384.01 -20587.7 8384.01 -20052.3 + 8541.81 -19540.7 8843.4 -19098.4 9261.97 -18764.6 9760.34 -18569 + 10294.2 -18529 10816.2 -18648.1 11279.8 -18915.8 11644 -19308.2 + 11876.3 -19790.6 11956.1 -20320)) + (outline (path signal 150 -8998.95 -20320 -9078.74 -20849.4 -9311.03 -21331.8 + -9675.18 -21724.2 -10138.8 -21991.9 -10660.8 -22111 -11194.7 -22071 + -11693 -21875.4 -12111.6 -21541.6 -12413.2 -21099.3 -12571 -20587.7 + -12571 -20052.3 -12413.2 -19540.7 -12111.6 -19098.4 -11693 -18764.6 + -11194.7 -18569 -10660.8 -18529 -10138.8 -18648.1 -9675.18 -18915.8 + -9311.03 -19308.2 -9078.74 -19790.6 -8998.95 -20320)) + (outline (path signal 150 -8998.95 22860 -9078.74 22330.6 -9311.03 21848.2 -9675.18 21455.8 + -10138.8 21188.1 -10660.8 21069 -11194.7 21109 -11693 21304.6 + -12111.6 21638.4 -12413.2 22080.7 -12571 22592.3 -12571 23127.7 + -12413.2 23639.3 -12111.6 24081.6 -11693 24415.4 -11194.7 24611 + -10660.8 24651 -10138.8 24531.9 -9675.18 24264.2 -9311.03 23871.8 + -9078.74 23389.4 -8998.95 22860)) + (outline (path signal 150 11956.1 22860 11876.3 22330.6 11644 21848.2 11279.8 21455.8 + 10816.2 21188.1 10294.2 21069 9760.34 21109 9261.97 21304.6 + 8843.4 21638.4 8541.81 22080.7 8384.01 22592.3 8384.01 23127.7 + 8541.81 23639.3 8843.4 24081.6 9261.97 24415.4 9760.34 24611 + 10294.2 24651 10816.2 24531.9 11279.8 24264.2 11644 23871.8 + 11876.3 23389.4 11956.1 22860)) + (pin Round[A]Pad_1524_um 1 -12065 19050) + (pin Round[A]Pad_1524_um 2 -12065 16510) + (pin Round[A]Pad_1524_um 3 -12065 13970) + (pin Round[A]Pad_1524_um 4 -12065 11430) + (pin Round[A]Pad_1524_um 5 -12065 8890) + (pin Round[A]Pad_1524_um 6 -12065 6350) + (pin Round[A]Pad_1524_um 7 -12065 3810) + (pin Round[A]Pad_1524_um 8 -12065 1270) + (pin Round[A]Pad_1524_um 9 -12065 -1270) + (pin Round[A]Pad_1524_um 10 -12065 -3810) + (pin Round[A]Pad_1524_um 11 -12065 -6350) + (pin Round[A]Pad_1524_um 12 -12065 -8890) + (pin Round[A]Pad_1524_um 13 -12065 -11430) + (pin Round[A]Pad_1524_um 14 -12065 -13970) + (pin Round[A]Pad_1524_um 15 -12065 -16510) + (pin Round[A]Pad_1524_um 16 11430 -16510) + (pin Round[A]Pad_1524_um 17 11430 -13970) + (pin Round[A]Pad_1524_um 18 11430 -11430) + (pin Round[A]Pad_1524_um 19 11430 -8890) + (pin Round[A]Pad_1524_um 20 11430 -6350) + (pin Round[A]Pad_1524_um 21 11430 -3810) + (pin Round[A]Pad_1524_um 22 11430 -1270) + (pin Round[A]Pad_1524_um 23 11430 1270) + (pin Round[A]Pad_1524_um 24 11430 3810) + (pin Round[A]Pad_1524_um 25 11430 6350) + (pin Round[A]Pad_1524_um 26 11430 8890) + (pin Round[A]Pad_1524_um 27 11430 11430) + (pin Round[A]Pad_1524_um 28 11430 13970) + (pin Round[A]Pad_1524_um 29 11430 16510) + (pin Round[A]Pad_1524_um 30 11430 19050) ) (image J1 - (side front) - (pin "Round[A]Pad_1524_um" 1 -6350.0 10160.0) - (pin "Round[A]Pad_1524_um" 2 -6350.0 7620.0) - (pin "Round[A]Pad_1524_um" 3 -6350.0 5080.0) - (pin "Round[A]Pad_1524_um" 4 -6350.0 2540.0) - (pin "Round[A]Pad_1524_um" 5 -6350.0 0.0) - (pin "Round[A]Pad_1524_um" 6 -6350.0 -2540.0) - (pin "Round[A]Pad_1524_um" 7 -6350.0 -5080.0) - (pin "Round[A]Pad_1524_um" 8 -6350.0 -7620.0) - (pin "Round[A]Pad_1524_um" 9 -6350.0 -10160.0) - (pin "Round[A]Pad_1524_um" 10 -6350.0 -12700.0) - (outline - (polygon signal 0 - -7644.9 11370.0 - 7564.9 11370.0 - 7600.0 11405.1 - 7600.0 11454.9 - 7564.9 11490.0 - -7644.9 11490.0 - -7680.0 11454.9 - -7680.0 11405.1 - ) - ) - (outline - (polygon signal 0 - 7595.1 -13630.0 - 7644.9 -13630.0 - 7680.0 -13594.9 - 7680.0 11454.9 - 7644.9 11490.0 - 7595.1 11490.0 - 7560.0 11454.9 - 7560.0 -13594.9 - ) - ) - (outline - (polygon signal 0 - -7644.9 -13630.0 - 7644.9 -13630.0 - 7680.0 -13594.9 - 7680.0 -13545.1 - 7644.9 -13510.0 - -7644.9 -13510.0 - -7680.0 -13545.1 - -7680.0 -13594.9 - ) - ) - (outline - (polygon signal 0 - -7644.9 -13630.0 - -7595.1 -13630.0 - -7560.0 -13594.9 - -7560.0 11454.9 - -7595.1 11490.0 - -7644.9 11490.0 - -7680.0 11454.9 - -7680.0 -13594.9 - ) - ) - ) - (padstack "Round[A]Pad_1524_um" - (shape - (circle F.Cu 1524.0 0.0 0.0) - ) - (shape - (circle B.Cu 1524.0 0.0 0.0) - ) + (outline (path signal 120 -7620 11430 7540 11430)) + (outline (path signal 120 7620 11430 7620 -13570)) + (outline (path signal 120 7620 -13570 -7620 -13570)) + (outline (path signal 120 -7620 -13570 -7620 11430)) + (pin Round[A]Pad_1524_um 1 -6350 10160) + (pin Round[A]Pad_1524_um 2 -6350 7620) + (pin Round[A]Pad_1524_um 3 -6350 5080) + (pin Round[A]Pad_1524_um 4 -6350 2540) + (pin Round[A]Pad_1524_um 5 -6350 0) + (pin Round[A]Pad_1524_um 6 -6350 -2540) + (pin Round[A]Pad_1524_um 7 -6350 -5080) + (pin Round[A]Pad_1524_um 8 -6350 -7620) + (pin Round[A]Pad_1524_um 9 -6350 -10160) + (pin Round[A]Pad_1524_um 10 -6350 -12700) + ) + (padstack Round[A]Pad_1524_um + (shape (circle F.Cu 1524)) + (shape (circle B.Cu 1524)) (attach off) ) (padstack "Via[0-1]_800:400_um" - (shape - (circle F.Cu 800.0 0.0 0.0) - ) - (shape - (circle B.Cu 800.0 0.0 0.0) - ) + (shape (circle F.Cu 800)) + (shape (circle B.Cu 800)) (attach off) ) ) (network - (net 3v3 1 - (pins - J1-1 - U1-3 - ) - ) - (net VIN 1 - (pins - U1-1 - ) - ) - (via - "Via[0-1]_800:400_um" "Via[0-1]_800:400_um" default - ) - (via - "Via[0-1]_800:400_um-kicad_default" "Via[0-1]_800:400_um" "kicad_default" + (net 3v3 + (pins U1-3 J1-1) ) - (via_rule - default "Via[0-1]_800:400_um" + (net VIN + (pins U1-1) ) - (via_rule - "kicad_default" "Via[0-1]_800:400_um-kicad_default" - ) - (via_rule - default "Via[0-1]_800:400_um" - ) - (class default - 3v3 VIN - (clearance_class default) - (via_rule default) - (rule - (width 1000.0) + (class kicad_default "" + (circuit + (use_via Via[0-1]_800:400_um) ) - (circuit - (use_layer F.Cu B.Cu) + (rule + (width 250) + (clearance 200.1) ) ) - (class "kicad_default" - (clearance_class "kicad_default") - (via_rule kicad_default) - (rule - (width 250.0) + (class default 3v3 GND VIN + (circuit + (use_via Via[0-1]_800:400_um) ) - (circuit - (use_layer F.Cu B.Cu) + (rule + (width 1000) + (clearance 200.1) ) ) ) (wiring - (wire - (polyline_path B.Cu 1000.0 - 110160.0 -80650.0 110159.9 -80650.0 - 110160.0 -80650.0 110160.0 -68737.2 - 110160.0 -68737.2 104063.6 -62640.8 - 104063.6 -62640.8 89030.0 -62640.8 - 89030.0 -60065.0 89029.9 -60064.9 - 89030.0 -60065.0 89030.1 -60065.0 - ) - (net 3v3 1) - (clearance_class default) - ) ) -) \ No newline at end of file +) diff --git a/kicad_board.rules b/kicad_board.rules deleted file mode 100644 index 35b82c18c777a264f610496af453db96aba066ef..0000000000000000000000000000000000000000 --- a/kicad_board.rules +++ /dev/null @@ -1,76 +0,0 @@ - -(rules PCB kicad_board - (snap_angle - fortyfive_degree - ) - (autoroute_settings - (fanout off) - (autoroute on) - (postroute on) - (vias on) - (via_costs 50) - (plane_via_costs 5) - (start_ripup_costs 100) - (start_pass_no 4) - (layer_rule F.Cu - (active on) - (preferred_direction vertical) - (preferred_direction_trace_costs 1.0) - (against_preferred_direction_trace_costs 2.5) - ) - (layer_rule B.Cu - (active on) - (preferred_direction horizontal) - (preferred_direction_trace_costs 1.0) - (against_preferred_direction_trace_costs 1.7) - ) - ) - (rule - (width 1000.0) - (clear 200.2) - (clear 125.0 (type smd_to_turn_gap)) - (clear 50.0 (type smd_smd)) - ) - (padstack "Via[0-1]_800:400_um" - (shape - (circle F.Cu 800.0 0.0 0.0) - ) - (shape - (circle B.Cu 800.0 0.0 0.0) - ) - (attach off) - ) - (via - "Via[0-1]_800:400_um" "Via[0-1]_800:400_um" default - ) - (via - "Via[0-1]_800:400_um-kicad_default" "Via[0-1]_800:400_um" default - ) - (via_rule - "kicad_default" "Via[0-1]_800:400_um-kicad_default" - ) - (via_rule - default "Via[0-1]_800:400_um" - ) - (class default - 3v3 VIN - (clearance_class default) - (via_rule default) - (rule - (width 1000.0) - ) - (circuit - (use_layer F.Cu B.Cu) - ) - ) - (class "kicad_default" - (clearance_class default) - (via_rule kicad_default) - (rule - (width 250.0) - ) - (circuit - (use_layer F.Cu B.Cu) - ) - ) -) \ No newline at end of file diff --git a/kicad_board_routed.dsn b/kicad_board_routed.dsn new file mode 100644 index 0000000000000000000000000000000000000000..654197b912caa41efea2c3b3e4814c1a5f1b6458 --- /dev/null +++ b/kicad_board_routed.dsn @@ -0,0 +1,1234 @@ + +(PCB "kicad_board" + (parser + (string_quote ") + (space_in_quoted_tokens on) + (host_cad "KiCad's Pcbnew") + (host_version "5.1.3-ffb9f22~84~ubuntu18.04.1") + (generated_by_freeroute) + ) + (resolution um 10) + (structure + (boundary + (rect pcb 164.6 -249435.0 169835.0 -164.6) + ) + (boundary + (polygon signal 0 + 96264.4 -249335.0 + 169735.0 -249335.0 + 169735.0 -211865.0 + 150736.0 -211865.0 + 150736.0 -211335.0 + 160735.0 -211335.0 + 160735.0 -151865.0 + 150736.0 -151865.0 + 150736.0 -151336.0 + 160735.0 -151336.0 + 160735.0 -113864.0 + 137735.0 -113864.0 + 137735.0 -113335.0 + 165736.0 -113335.0 + 165736.0 -31864.8 + 137735.0 -31864.8 + 137735.0 -264.6 + 78264.5 -264.6 + 78264.5 -31864.8 + 264.6 -31864.8 + 264.6 -113335.0 + 119265.0 -113335.0 + 119265.0 -113864.0 + 87264.4 -113864.0 + 87264.4 -151336.0 + 138264.0 -151336.0 + 138264.0 -151865.0 + 37264.4 -151865.0 + 37264.4 -211335.0 + 138264.0 -211335.0 + 138264.0 -211865.0 + 96264.4 -211865.0 + ) + ) + (snap_angle + fortyfive_degree + ) + (via "Via[0-1]_800:400_um") + (control + (via_at_smd off) + ) + (rule + (width 1000.0) + (clear 200.2) + (clear 125.0 (type smd_to_turn_gap)) + (clear 50.0 (type smd_smd)) + ) + (layer F.Cu + (type signal) + ) + (layer B.Cu + (type signal) + ) + (autoroute_settings + (fanout off) + (autoroute on) + (postroute on) + (vias on) + (via_costs 50) + (plane_via_costs 5) + (start_ripup_costs 100) + (start_pass_no 7) + (layer_rule F.Cu + (active on) + (preferred_direction vertical) + (preferred_direction_trace_costs 1.0) + (against_preferred_direction_trace_costs 2.5) + ) + (layer_rule B.Cu + (active on) + (preferred_direction horizontal) + (preferred_direction_trace_costs 1.0) + (against_preferred_direction_trace_costs 1.7) + ) + ) + (keepout + (polygon B.Cu 0 + 105736.0 -27264.5 + 110265.0 -27264.5 + 110265.0 -26735.3 + 106265.0 -26735.3 + 106265.0 -18264.6 + 110265.0 -18264.6 + 110265.0 -17735.4 + 105736.0 -17735.4 + ) + (clearance_class default) + ) + (keepout + (polygon F.Cu 0 + 105736.0 -27264.5 + 110265.0 -27264.5 + 110265.0 -26735.3 + 106265.0 -26735.3 + 106265.0 -18264.6 + 110265.0 -18264.6 + 110265.0 -17735.4 + 105736.0 -17735.4 + ) + (clearance_class default) + ) + (keepout + (polygon B.Cu 0 + 101735.0 -31764.5 + 114264.0 -31764.5 + 114264.0 -13235.4 + 113735.0 -13235.4 + 113735.0 -31235.4 + 102265.0 -31235.4 + 102265.0 -13235.4 + 101735.0 -13235.4 + ) + (clearance_class default) + ) + (keepout + (polygon F.Cu 0 + 101735.0 -31764.5 + 114264.0 -31764.5 + 114264.0 -13235.4 + 113735.0 -13235.4 + 113735.0 -31235.4 + 102265.0 -31235.4 + 102265.0 -13235.4 + 101735.0 -13235.4 + ) + (clearance_class default) + ) + (keepout + (polygon B.Cu 0 + 31485.4 -45614.8 + 32514.8 -45614.8 + 32514.8 -35585.5 + 31485.4 -35585.5 + ) + (clearance_class default) + ) + (keepout + (polygon F.Cu 0 + 31485.4 -45614.8 + 32514.8 -45614.8 + 32514.8 -35585.5 + 31485.4 -35585.5 + ) + (clearance_class default) + ) + (keepout + (polygon B.Cu 0 + 150265.0 -50835.2 + 153735.0 -50835.2 + 153735.0 -42364.4 + 150265.0 -42364.4 + ) + (clearance_class default) + ) + (keepout + (polygon F.Cu 0 + 150265.0 -50835.2 + 153735.0 -50835.2 + 153735.0 -42364.4 + 150265.0 -42364.4 + ) + (clearance_class default) + ) + (keepout + (polygon B.Cu 0 + 6985.6 -61932.7 + 8014.5 -61932.7 + 8014.5 -45994.6 + 6985.6 -45994.6 + ) + (clearance_class default) + ) + (keepout + (polygon F.Cu 0 + 6985.6 -61932.7 + 8014.5 -61932.7 + 8014.5 -45994.6 + 6985.6 -45994.6 + ) + (clearance_class default) + ) + (keepout + (polygon B.Cu 0 + 163500.0 -66792.3 + 163610.0 -66682.8 + 163765.0 -66682.8 + 163765.0 -66527.8 + 163874.0 -66418.2 + 163765.0 -66308.7 + 163765.0 -61153.4 + 163236.0 -61153.4 + 163236.0 -65779.5 + 158764.0 -61308.4 + 158764.0 -46618.9 + 163236.0 -42147.9 + 163236.0 -46773.9 + 163765.0 -46773.9 + 163765.0 -41618.7 + 163874.0 -41509.1 + 163765.0 -41399.6 + 163765.0 -41244.6 + 163610.0 -41244.6 + 163500.0 -41135.0 + 163391.0 -41244.6 + 163236.0 -41244.6 + 163236.0 -41399.6 + 158390.0 -46244.8 + 158235.0 -46244.8 + 158235.0 -46399.3 + 158126.0 -46509.3 + 158235.0 -46618.9 + 158235.0 -61308.4 + 158126.0 -61418.0 + 158235.0 -61527.6 + 158235.0 -61682.6 + 158390.0 -61682.6 + 163236.0 -66527.8 + 163236.0 -66682.8 + 163391.0 -66682.8 + ) + (clearance_class default) + ) + (keepout + (polygon F.Cu 0 + 163500.0 -66792.3 + 163610.0 -66682.8 + 163765.0 -66682.8 + 163765.0 -66527.8 + 163874.0 -66418.2 + 163765.0 -66308.7 + 163765.0 -61153.4 + 163236.0 -61153.4 + 163236.0 -65779.5 + 158764.0 -61308.4 + 158764.0 -46618.9 + 163236.0 -42147.9 + 163236.0 -46773.9 + 163765.0 -46773.9 + 163765.0 -41618.7 + 163874.0 -41509.1 + 163765.0 -41399.6 + 163765.0 -41244.6 + 163610.0 -41244.6 + 163500.0 -41135.0 + 163391.0 -41244.6 + 163236.0 -41244.6 + 163236.0 -41399.6 + 158390.0 -46244.8 + 158235.0 -46244.8 + 158235.0 -46399.3 + 158126.0 -46509.3 + 158235.0 -46618.9 + 158235.0 -61308.4 + 158126.0 -61418.0 + 158235.0 -61527.6 + 158235.0 -61682.6 + 158390.0 -61682.6 + 163236.0 -66527.8 + 163236.0 -66682.8 + 163391.0 -66682.8 + ) + (clearance_class default) + ) + (keepout + (polygon B.Cu 0 + 81014.7 -74585.7 + 107485.0 -74585.7 + 107485.0 -67114.8 + 81014.7 -67114.8 + ) + (clearance_class default) + ) + (keepout + (polygon F.Cu 0 + 81014.7 -74585.7 + 107485.0 -74585.7 + 107485.0 -67114.8 + 81014.7 -67114.8 + ) + (clearance_class default) + ) + (keepout + (polygon B.Cu 0 + 6985.6 -99205.4 + 8014.5 -99205.4 + 8014.5 -83267.3 + 6985.6 -83267.3 + ) + (clearance_class default) + ) + (keepout + (polygon F.Cu 0 + 6985.6 -99205.4 + 8014.5 -99205.4 + 8014.5 -83267.3 + 6985.6 -83267.3 + ) + (clearance_class default) + ) + (keepout + (polygon B.Cu 0 + 163500.0 -104065.0 + 163610.0 -103955.0 + 163765.0 -103955.0 + 163765.0 -103800.0 + 163874.0 -103691.0 + 163765.0 -103581.0 + 163765.0 -98426.1 + 163236.0 -98426.1 + 163236.0 -103052.0 + 158764.0 -98581.1 + 158764.0 -83891.6 + 163236.0 -79420.5 + 163236.0 -84046.6 + 163765.0 -84046.6 + 163765.0 -78891.3 + 163874.0 -78781.8 + 163765.0 -78672.2 + 163765.0 -78517.2 + 163610.0 -78517.2 + 163500.0 -78407.7 + 163391.0 -78517.2 + 163236.0 -78517.2 + 163236.0 -78672.2 + 158390.0 -83517.4 + 158235.0 -83517.4 + 158235.0 -83672.5 + 158126.0 -83782.0 + 158235.0 -83891.6 + 158235.0 -98581.1 + 158126.0 -98690.7 + 158235.0 -98800.7 + 158235.0 -98955.2 + 158390.0 -98955.2 + 163236.0 -103800.0 + 163236.0 -103955.0 + 163391.0 -103955.0 + ) + (clearance_class default) + ) + (keepout + (polygon F.Cu 0 + 163500.0 -104065.0 + 163610.0 -103955.0 + 163765.0 -103955.0 + 163765.0 -103800.0 + 163874.0 -103691.0 + 163765.0 -103581.0 + 163765.0 -98426.1 + 163236.0 -98426.1 + 163236.0 -103052.0 + 158764.0 -98581.1 + 158764.0 -83891.6 + 163236.0 -79420.5 + 163236.0 -84046.6 + 163765.0 -84046.6 + 163765.0 -78891.3 + 163874.0 -78781.8 + 163765.0 -78672.2 + 163765.0 -78517.2 + 163610.0 -78517.2 + 163500.0 -78407.7 + 163391.0 -78517.2 + 163236.0 -78517.2 + 163236.0 -78672.2 + 158390.0 -83517.4 + 158235.0 -83517.4 + 158235.0 -83672.5 + 158126.0 -83782.0 + 158235.0 -83891.6 + 158235.0 -98581.1 + 158126.0 -98690.7 + 158235.0 -98800.7 + 158235.0 -98955.2 + 158390.0 -98955.2 + 163236.0 -103800.0 + 163236.0 -103955.0 + 163391.0 -103955.0 + ) + (clearance_class default) + ) + (keepout + (polygon B.Cu 0 + 138725.0 -108336.0 + 150275.0 -108336.0 + 150275.0 -85864.6 + 138725.0 -85864.6 + ) + (clearance_class default) + ) + (keepout + (polygon F.Cu 0 + 138725.0 -108336.0 + 150275.0 -108336.0 + 150275.0 -85864.6 + 138725.0 -85864.6 + ) + (clearance_class default) + ) + (keepout + (polygon B.Cu 0 + 65725.7 -108336.0 + 77274.4 -108336.0 + 77274.4 -85864.6 + 65725.7 -85864.6 + ) + (clearance_class default) + ) + (keepout + (polygon F.Cu 0 + 65725.7 -108336.0 + 77274.4 -108336.0 + 77274.4 -85864.6 + 65725.7 -85864.6 + ) + (clearance_class default) + ) + (keepout + (polygon B.Cu 0 + 93985.5 -139448.0 + 95014.4 -139448.0 + 95014.4 -125752.0 + 93985.5 -125752.0 + ) + (clearance_class default) + ) + (keepout + (polygon F.Cu 0 + 93985.5 -139448.0 + 95014.4 -139448.0 + 95014.4 -125752.0 + 93985.5 -125752.0 + ) + (clearance_class default) + ) + (keepout + (polygon B.Cu 0 + 138725.0 -141336.0 + 150275.0 -141336.0 + 150275.0 -118865.0 + 138725.0 -118865.0 + ) + (clearance_class default) + ) + (keepout + (polygon F.Cu 0 + 138725.0 -141336.0 + 150275.0 -141336.0 + 150275.0 -118865.0 + 138725.0 -118865.0 + ) + (clearance_class default) + ) + (keepout + (polygon B.Cu 0 + 158500.0 -144308.0 + 158609.0 -144198.0 + 158764.0 -144198.0 + 158764.0 -144043.0 + 158874.0 -143933.0 + 158764.0 -143824.0 + 158764.0 -138669.0 + 158235.0 -138669.0 + 158235.0 -143295.0 + 153765.0 -138824.0 + 153765.0 -126376.0 + 158235.0 -121905.0 + 158235.0 -126531.0 + 158764.0 -126531.0 + 158764.0 -121376.0 + 158874.0 -121267.0 + 158764.0 -121157.0 + 158764.0 -121002.0 + 158609.0 -121002.0 + 158500.0 -120892.0 + 158390.0 -121002.0 + 158235.0 -121002.0 + 158235.0 -121157.0 + 153391.0 -126002.0 + 153236.0 -126002.0 + 153236.0 -126157.0 + 153126.0 -126267.0 + 153236.0 -126376.0 + 153236.0 -138824.0 + 153126.0 -138933.0 + 153236.0 -139043.0 + 153236.0 -139198.0 + 153391.0 -139198.0 + 158235.0 -144043.0 + 158235.0 -144198.0 + 158390.0 -144198.0 + ) + (clearance_class default) + ) + (keepout + (polygon F.Cu 0 + 158500.0 -144308.0 + 158609.0 -144198.0 + 158764.0 -144198.0 + 158764.0 -144043.0 + 158874.0 -143933.0 + 158764.0 -143824.0 + 158764.0 -138669.0 + 158235.0 -138669.0 + 158235.0 -143295.0 + 153765.0 -138824.0 + 153765.0 -126376.0 + 158235.0 -121905.0 + 158235.0 -126531.0 + 158764.0 -126531.0 + 158764.0 -121376.0 + 158874.0 -121267.0 + 158764.0 -121157.0 + 158764.0 -121002.0 + 158609.0 -121002.0 + 158500.0 -120892.0 + 158390.0 -121002.0 + 158235.0 -121002.0 + 158235.0 -121157.0 + 153391.0 -126002.0 + 153236.0 -126002.0 + 153236.0 -126157.0 + 153126.0 -126267.0 + 153236.0 -126376.0 + 153236.0 -138824.0 + 153126.0 -138933.0 + 153236.0 -139043.0 + 153236.0 -139198.0 + 153391.0 -139198.0 + 158235.0 -144043.0 + 158235.0 -144198.0 + 158390.0 -144198.0 + ) + (clearance_class default) + ) + (keepout + (polygon B.Cu 0 + 43985.4 -192114.0 + 45014.8 -192114.0 + 45014.8 -171085.0 + 43985.4 -171085.0 + ) + (clearance_class default) + ) + (keepout + (polygon F.Cu 0 + 43985.4 -192114.0 + 45014.8 -192114.0 + 45014.8 -171085.0 + 43985.4 -171085.0 + ) + (clearance_class default) + ) + (keepout + (polygon B.Cu 0 + 158500.0 -196974.0 + 158609.0 -196865.0 + 158764.0 -196865.0 + 158764.0 -196709.0 + 158874.0 -196600.0 + 158764.0 -196490.0 + 158764.0 -191336.0 + 158235.0 -191336.0 + 158235.0 -195961.0 + 153765.0 -191490.0 + 153765.0 -171709.0 + 158235.0 -167239.0 + 158235.0 -171864.0 + 158764.0 -171864.0 + 158764.0 -165961.0 + 153391.0 -171335.0 + 153236.0 -171335.0 + 153236.0 -171490.0 + 153126.0 -171600.0 + 153236.0 -171709.0 + 153236.0 -191710.0 + 158235.0 -196709.0 + 158235.0 -196865.0 + 158390.0 -196865.0 + ) + (clearance_class default) + ) + (keepout + (polygon F.Cu 0 + 158500.0 -196974.0 + 158609.0 -196865.0 + 158764.0 -196865.0 + 158764.0 -196709.0 + 158874.0 -196600.0 + 158764.0 -196490.0 + 158764.0 -191336.0 + 158235.0 -191336.0 + 158235.0 -195961.0 + 153765.0 -191490.0 + 153765.0 -171709.0 + 158235.0 -167239.0 + 158235.0 -171864.0 + 158764.0 -171864.0 + 158764.0 -165961.0 + 153391.0 -171335.0 + 153236.0 -171335.0 + 153236.0 -171490.0 + 153126.0 -171600.0 + 153236.0 -171709.0 + 153236.0 -191710.0 + 158235.0 -196709.0 + 158235.0 -196865.0 + 158390.0 -196865.0 + ) + (clearance_class default) + ) + (keepout + (polygon B.Cu 0 + 129515.0 -208585.0 + 136985.0 -208585.0 + 136985.0 -182115.0 + 129515.0 -182115.0 + ) + (clearance_class default) + ) + (keepout + (polygon F.Cu 0 + 129515.0 -208585.0 + 136985.0 -208585.0 + 136985.0 -182115.0 + 129515.0 -182115.0 + ) + (clearance_class default) + ) + (keepout + (polygon B.Cu 0 + 161985.0 -237448.0 + 163014.0 -237448.0 + 163014.0 -223752.0 + 161985.0 -223752.0 + ) + (clearance_class default) + ) + (keepout + (polygon F.Cu 0 + 161985.0 -237448.0 + 163014.0 -237448.0 + 163014.0 -223752.0 + 161985.0 -223752.0 + ) + (clearance_class default) + ) + (keepout + (polygon B.Cu 0 + 98235.3 -242572.0 + 103610.0 -237198.0 + 103765.0 -237198.0 + 103765.0 -237043.0 + 103874.0 -236933.0 + 103765.0 -236824.0 + 103765.0 -224376.0 + 103874.0 -224266.0 + 103765.0 -224157.0 + 103765.0 -224002.0 + 103610.0 -224002.0 + 98235.3 -218628.0 + 98235.3 -224531.0 + 98764.5 -224531.0 + 98764.5 -219905.0 + 103236.0 -224376.0 + 103236.0 -236824.0 + 98764.5 -241294.0 + 98764.5 -236669.0 + 98235.3 -236669.0 + ) + (clearance_class default) + ) + (keepout + (polygon F.Cu 0 + 98235.3 -242572.0 + 103610.0 -237198.0 + 103765.0 -237198.0 + 103765.0 -237043.0 + 103874.0 -236933.0 + 103765.0 -236824.0 + 103765.0 -224376.0 + 103874.0 -224266.0 + 103765.0 -224157.0 + 103765.0 -224002.0 + 103610.0 -224002.0 + 98235.3 -218628.0 + 98235.3 -224531.0 + 98764.5 -224531.0 + 98764.5 -219905.0 + 103236.0 -224376.0 + 103236.0 -236824.0 + 98764.5 -241294.0 + 98764.5 -236669.0 + 98235.3 -236669.0 + ) + (clearance_class default) + ) + (keepout + (polygon B.Cu 0 + 138725.0 -244336.0 + 150275.0 -244336.0 + 150275.0 -221865.0 + 138725.0 -221865.0 + ) + (clearance_class default) + ) + (keepout + (polygon F.Cu 0 + 138725.0 -244336.0 + 150275.0 -244336.0 + 150275.0 -221865.0 + 138725.0 -221865.0 + ) + (clearance_class default) + ) + ) + (placement + (component U1 + (place + U1 103000.0 -48000.0 front 90 + (pin 1 (clearance_class default)) + (pin 2 (clearance_class default)) + (pin 3 (clearance_class default)) + (pin 4 (clearance_class default)) + (pin 5 (clearance_class default)) + (pin 6 (clearance_class default)) + (pin 7 (clearance_class default)) + (pin 8 (clearance_class default)) + (pin 9 (clearance_class default)) + (pin 10 (clearance_class default)) + (pin 11 (clearance_class default)) + (pin 12 (clearance_class default)) + (pin 13 (clearance_class default)) + (pin 14 (clearance_class default)) + (pin 15 (clearance_class default)) + (pin 16 (clearance_class default)) + (pin 17 (clearance_class default)) + (pin 18 (clearance_class default)) + (pin 19 (clearance_class default)) + (pin 20 (clearance_class default)) + (pin 21 (clearance_class default)) + (pin 22 (clearance_class default)) + (pin 23 (clearance_class default)) + (pin 24 (clearance_class default)) + (pin 25 (clearance_class default)) + (pin 26 (clearance_class default)) + (pin 27 (clearance_class default)) + (pin 28 (clearance_class default)) + (pin 29 (clearance_class default)) + (pin 30 (clearance_class default)) + ) + ) + (component J1 + (place + J1 100000.0 -87000.0 front 270 + (pin 1 (clearance_class default)) + (pin 2 (clearance_class default)) + (pin 3 (clearance_class default)) + (pin 4 (clearance_class default)) + (pin 5 (clearance_class default)) + (pin 6 (clearance_class default)) + (pin 7 (clearance_class default)) + (pin 8 (clearance_class default)) + (pin 9 (clearance_class default)) + (pin 10 (clearance_class default)) + ) + ) + ) + (library + (image U1 + (side front) + (pin "Round[A]Pad_1524_um" 1 -12065.0 19050.0) + (pin "Round[A]Pad_1524_um" 2 -12065.0 16510.0) + (pin "Round[A]Pad_1524_um" 3 -12065.0 13970.0) + (pin "Round[A]Pad_1524_um" 4 -12065.0 11430.0) + (pin "Round[A]Pad_1524_um" 5 -12065.0 8890.0) + (pin "Round[A]Pad_1524_um" 6 -12065.0 6350.0) + (pin "Round[A]Pad_1524_um" 7 -12065.0 3810.0) + (pin "Round[A]Pad_1524_um" 8 -12065.0 1270.0) + (pin "Round[A]Pad_1524_um" 9 -12065.0 -1270.0) + (pin "Round[A]Pad_1524_um" 10 -12065.0 -3810.0) + (pin "Round[A]Pad_1524_um" 11 -12065.0 -6350.0) + (pin "Round[A]Pad_1524_um" 12 -12065.0 -8890.0) + (pin "Round[A]Pad_1524_um" 13 -12065.0 -11430.0) + (pin "Round[A]Pad_1524_um" 14 -12065.0 -13970.0) + (pin "Round[A]Pad_1524_um" 15 -12065.0 -16510.0) + (pin "Round[A]Pad_1524_um" 16 11430.0 -16510.0) + (pin "Round[A]Pad_1524_um" 17 11430.0 -13970.0) + (pin "Round[A]Pad_1524_um" 18 11430.0 -11430.0) + (pin "Round[A]Pad_1524_um" 19 11430.0 -8890.0) + (pin "Round[A]Pad_1524_um" 20 11430.0 -6350.0) + (pin "Round[A]Pad_1524_um" 21 11430.0 -3810.0) + (pin "Round[A]Pad_1524_um" 22 11430.0 -1270.0) + (pin "Round[A]Pad_1524_um" 23 11430.0 1270.0) + (pin "Round[A]Pad_1524_um" 24 11430.0 3810.0) + (pin "Round[A]Pad_1524_um" 25 11430.0 6350.0) + (pin "Round[A]Pad_1524_um" 26 11430.0 8890.0) + (pin "Round[A]Pad_1524_um" 27 11430.0 11430.0) + (pin "Round[A]Pad_1524_um" 28 11430.0 13970.0) + (pin "Round[A]Pad_1524_um" 29 11430.0 16510.0) + (pin "Round[A]Pad_1524_um" 30 11430.0 19050.0) + (outline + (polygon signal 0 + 3778.9 -22935.0 + 11461.1 -22935.0 + 11505.0 -22891.1 + 11505.0 -22828.9 + 11461.1 -22785.0 + 3778.9 -22785.0 + 3735.0 -22828.9 + 3735.0 -22891.1 + ) + ) + (outline + (polygon signal 0 + -5531.1 18195.0 + 5531.1 18195.0 + 5575.0 18238.9 + 5575.0 18301.1 + 5531.1 18345.0 + -5531.1 18345.0 + -5575.0 18301.1 + -5575.0 18238.9 + ) + ) + (outline + (polygon signal 0 + 5468.9 18195.0 + 5531.1 18195.0 + 5575.0 18238.9 + 5575.0 25431.1 + 5531.1 25475.0 + 5468.9 25475.0 + 5425.0 25431.1 + 5425.0 18238.9 + ) + ) + (outline + (polygon signal 0 + -5531.1 18195.0 + -5468.9 18195.0 + -5425.0 18238.9 + -5425.0 25431.1 + -5468.9 25475.0 + -5531.1 25475.0 + -5575.0 25431.1 + -5575.0 18238.9 + ) + ) + (outline + (polygon signal 0 + -3831.1 -23935.0 + -3768.9 -23935.0 + -3725.0 -23891.1 + -3725.0 -18098.9 + -3768.9 -18055.0 + -3831.1 -18055.0 + -3875.0 -18098.9 + -3875.0 -23891.1 + ) + ) + (outline + (polygon signal 0 + -3831.1 -18205.0 + 3831.1 -18205.0 + 3875.0 -18161.1 + 3875.0 -18098.9 + 3831.1 -18055.0 + -3831.1 -18055.0 + -3875.0 -18098.9 + -3875.0 -18161.1 + ) + ) + (outline + (polygon signal 0 + 3768.9 -23935.0 + 3831.1 -23935.0 + 3875.0 -23891.1 + 3875.0 -18098.9 + 3831.1 -18055.0 + 3768.9 -18055.0 + 3725.0 -18098.9 + 3725.0 -23891.1 + ) + ) + (outline + (polygon signal 0 + -3831.1 -23935.0 + 3831.1 -23935.0 + 3875.0 -23891.1 + 3875.0 -23828.9 + 3831.1 -23785.0 + -3831.1 -23785.0 + -3875.0 -23828.9 + -3875.0 -23891.1 + ) + ) + (outline + (polygon signal 0 + 12668.9 -21665.0 + 12731.1 -21665.0 + 12775.0 -21621.1 + 12775.0 24161.1 + 12731.1 24205.0 + 12668.9 24205.0 + 12625.0 24161.1 + 12625.0 -21621.1 + ) + ) + (outline + (polygon signal 0 + -13366.1 -21665.0 + -13303.9 -21665.0 + -13260.0 -21621.1 + -13260.0 24161.1 + -13303.9 24205.0 + -13366.1 24205.0 + -13410.0 24161.1 + -13410.0 -21621.1 + ) + ) + (outline + (polygon signal 0 + -12096.1 -22935.0 + -3778.9 -22935.0 + -3735.0 -22891.1 + -3735.0 -22828.9 + -3778.9 -22785.0 + -12096.1 -22785.0 + -12140.0 -22828.9 + -12140.0 -22891.1 + ) + ) + (outline + (polygon signal 0 + -12731.1 25325.0 + 11461.1 25325.0 + 11505.0 25368.9 + 11505.0 25431.1 + 11461.1 25475.0 + -12731.1 25475.0 + -12775.0 25431.1 + -12775.0 25368.9 + ) + ) + (outline + (polygon signal 0 + 10291.530499999999 -22186.0 + 10302.527455919397 -22186.0 + 10843.97169166293 -22062.463585293 + 11325.947013782543 -21784.152986217458 + 11333.023404255318 -21777.07659574468 + 11706.60450939226 -21374.569111791534 + 11948.7281602337 -20871.76907233432 + 12031.1 -20325.30726817043 + 12031.1 -20314.69273182957 + 11948.7281602337 -19768.23092766568 + 11706.60450939226 -19265.430888208466 + 11333.023404255318 -18862.92340425532 + 11325.947013782543 -18855.847013782542 + 10843.97169166293 -18577.536414707 + 10302.527455919397 -18454.0 + 10291.530499999999 -18454.0 + 9743.298242366403 -18495.073778432932 + 9224.211525157132 -18698.833284525917 + 8793.049528301886 -19042.650471698114 + 8785.39658848614 -19050.303411513858 + 8473.459064925266 -19507.763513208072 + 8309.0 -20040.952724968312 + 8309.0 -20599.047275031688 + 8473.459064925266 -21132.236486791928 + 8785.39658848614 -21589.696588486142 + 8793.049528301886 -21597.349528301886 + 9224.211525157132 -21941.166715474083 + 9743.298242366403 -22144.926221567068 + ) + ) + (outline + (polygon signal 0 + -10663.469500000001 -22186.0 + -10652.472544080603 -22186.0 + -10111.02830833707 -22062.463585293 + -9629.052986217457 -21784.152986217458 + -9621.976595744682 -21777.07659574468 + -9248.39549060774 -21374.569111791534 + -9006.2718397663 -20871.76907233432 + -8923.9 -20325.30726817043 + -8923.9 -20314.69273182957 + -9006.2718397663 -19768.23092766568 + -9248.39549060774 -19265.430888208466 + -9621.976595744682 -18862.92340425532 + -9629.052986217457 -18855.847013782542 + -10111.02830833707 -18577.536414707 + -10652.472544080603 -18454.0 + -10663.469500000001 -18454.0 + -11211.701757633597 -18495.073778432932 + -11730.788474842868 -18698.833284525917 + -12161.950471698114 -19042.650471698114 + -12169.60341151386 -19050.303411513858 + -12481.540935074734 -19507.763513208072 + -12646.0 -20040.952724968312 + -12646.0 -20599.047275031688 + -12481.540935074734 -21132.236486791928 + -12169.60341151386 -21589.696588486142 + -12161.950471698114 -21597.349528301886 + -11730.788474842868 -21941.166715474083 + -11211.701757633597 -22144.926221567068 + ) + ) + (outline + (polygon signal 0 + -10663.469500000001 20994.0 + -10652.472544080603 20994.0 + -10111.02830833707 21117.536414707 + -9629.052986217457 21395.847013782542 + -9621.976595744682 21402.92340425532 + -9248.39549060774 21805.430888208466 + -9006.2718397663 22308.23092766568 + -8923.9 22854.69273182957 + -8923.9 22865.30726817043 + -9006.2718397663 23411.76907233432 + -9248.39549060774 23914.569111791534 + -9621.976595744682 24317.07659574468 + -9629.052986217457 24324.152986217458 + -10111.02830833707 24602.463585293 + -10652.472544080603 24726.0 + -10663.469500000001 24726.0 + -11211.701757633597 24684.926221567068 + -11730.788474842868 24481.166715474083 + -12161.950471698114 24137.349528301886 + -12169.60341151386 24129.696588486142 + -12481.540935074734 23672.236486791928 + -12646.0 23139.047275031688 + -12646.0 22580.952724968312 + -12481.540935074734 22047.763513208072 + -12169.60341151386 21590.303411513858 + -12161.950471698114 21582.650471698114 + -11730.788474842868 21238.833284525917 + -11211.701757633597 21035.073778432932 + ) + ) + (outline + (polygon signal 0 + 10291.530499999999 20994.0 + 10302.527455919397 20994.0 + 10843.97169166293 21117.536414707 + 11325.947013782543 21395.847013782542 + 11333.023404255318 21402.92340425532 + 11706.60450939226 21805.430888208466 + 11948.7281602337 22308.23092766568 + 12031.1 22854.69273182957 + 12031.1 22865.30726817043 + 11948.7281602337 23411.76907233432 + 11706.60450939226 23914.569111791534 + 11333.023404255318 24317.07659574468 + 11325.947013782543 24324.152986217458 + 10843.97169166293 24602.463585293 + 10302.527455919397 24726.0 + 10291.530499999999 24726.0 + 9743.298242366403 24684.926221567068 + 9224.211525157132 24481.166715474083 + 8793.049528301886 24137.349528301886 + 8785.39658848614 24129.696588486142 + 8473.459064925266 23672.236486791928 + 8309.0 23139.047275031688 + 8309.0 22580.952724968312 + 8473.459064925266 22047.763513208072 + 8785.39658848614 21590.303411513858 + 8793.049528301886 21582.650471698114 + 9224.211525157132 21238.833284525917 + 9743.298242366403 21035.073778432932 + ) + ) + ) + (image J1 + (side front) + (pin "Round[A]Pad_1524_um" 1 -6350.0 10160.0) + (pin "Round[A]Pad_1524_um" 2 -6350.0 7620.0) + (pin "Round[A]Pad_1524_um" 3 -6350.0 5080.0) + (pin "Round[A]Pad_1524_um" 4 -6350.0 2540.0) + (pin "Round[A]Pad_1524_um" 5 -6350.0 0.0) + (pin "Round[A]Pad_1524_um" 6 -6350.0 -2540.0) + (pin "Round[A]Pad_1524_um" 7 -6350.0 -5080.0) + (pin "Round[A]Pad_1524_um" 8 -6350.0 -7620.0) + (pin "Round[A]Pad_1524_um" 9 -6350.0 -10160.0) + (pin "Round[A]Pad_1524_um" 10 -6350.0 -12700.0) + (outline + (polygon signal 0 + -7644.9 11370.0 + 7564.9 11370.0 + 7600.0 11405.1 + 7600.0 11454.9 + 7564.9 11490.0 + -7644.9 11490.0 + -7680.0 11454.9 + -7680.0 11405.1 + ) + ) + (outline + (polygon signal 0 + 7595.1 -13630.0 + 7644.9 -13630.0 + 7680.0 -13594.9 + 7680.0 11454.9 + 7644.9 11490.0 + 7595.1 11490.0 + 7560.0 11454.9 + 7560.0 -13594.9 + ) + ) + (outline + (polygon signal 0 + -7644.9 -13630.0 + 7644.9 -13630.0 + 7680.0 -13594.9 + 7680.0 -13545.1 + 7644.9 -13510.0 + -7644.9 -13510.0 + -7680.0 -13545.1 + -7680.0 -13594.9 + ) + ) + (outline + (polygon signal 0 + -7644.9 -13630.0 + -7595.1 -13630.0 + -7560.0 -13594.9 + -7560.0 11454.9 + -7595.1 11490.0 + -7644.9 11490.0 + -7680.0 11454.9 + -7680.0 -13594.9 + ) + ) + ) + (padstack "Round[A]Pad_1524_um" + (shape + (circle F.Cu 1524.0 0.0 0.0) + ) + (shape + (circle B.Cu 1524.0 0.0 0.0) + ) + (attach off) + ) + (padstack "Via[0-1]_800:400_um" + (shape + (circle F.Cu 800.0 0.0 0.0) + ) + (shape + (circle B.Cu 800.0 0.0 0.0) + ) + (attach off) + ) + ) + (network + (net 3v3 1 + (pins + J1-1 + U1-3 + ) + ) + (net VIN 1 + (pins + U1-1 + ) + ) + (via + "Via[0-1]_800:400_um" "Via[0-1]_800:400_um" default + ) + (via + "Via[0-1]_800:400_um-kicad_default" "Via[0-1]_800:400_um" default + ) + (via_rule + default "Via[0-1]_800:400_um" + ) + (via_rule + "kicad_default" "Via[0-1]_800:400_um-kicad_default" + ) + (via_rule + default "Via[0-1]_800:400_um" + ) + (class default + 3v3 VIN + (clearance_class default) + (via_rule default) + (rule + (width 1000.0) + ) + (circuit + (use_layer F.Cu B.Cu) + ) + ) + (class "kicad_default" + (clearance_class default) + (via_rule kicad_default) + (rule + (width 250.0) + ) + (circuit + (use_layer F.Cu B.Cu) + ) + ) + ) + (wiring + (wire + (polyline_path B.Cu 1000.0 + 110160.0 -80650.0 110159.9 -80650.0 + 110160.0 -80650.0 110160.0 -68737.2 + 110160.0 -68737.2 104063.6 -62640.8 + 104063.6 -62640.8 89030.0 -62640.8 + 89030.0 -60065.0 89029.9 -60064.9 + 89030.0 -60065.0 89030.1 -60065.0 + ) + (net 3v3 1) + (clearance_class default) + ) + ) +) \ No newline at end of file