text:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE eagle SYSTEM "eagle.dtd">
<eagle version="9.1.3">
<drawing>
<settings>
<setting alwaysvectorfont="no"/>
<setting keepoldvectorfont="yes"/>
<setting verticaltext="up"/>
</settings>
<grid distance="0.02" unitdist="inch" unit="inch" style="dots" multiple="1" display="yes" altdistance="0.01" altunitdist="inch" altunit="inch"/>
<layers>
<layer number="1" name="Top" color="4" fill="1" visible="yes" active="yes"/>
<layer number="2" name="GND" color="15" fill="1" visible="yes" active="yes"/>
<layer number="3" name="Route3" color="4" fill="3" visible="no" active="no"/>
<layer number="4" name="Route4" color="1" fill="4" visible="no" active="no"/>
<layer number="5" name="Route5" color="4" fill="4" visible="no" active="no"/>
<layer number="6" name="Route6" color="1" fill="8" visible="no" active="no"/>
<layer number="7" name="Route7" color="4" fill="8" visible="no" active="no"/>
<layer number="8" name="Route8" color="1" fill="2" visible="no" active="no"/>
<layer number="9" name="Route9" color="4" fill="2" visible="no" active="no"/>
<layer number="10" name="Route10" color="1" fill="7" visible="no" active="no"/>
<layer number="11" name="Route11" color="4" fill="7" visible="no" active="no"/>
<layer number="12" name="Route12" color="1" fill="5" visible="no" active="no"/>
<layer number="13" name="Route13" color="4" fill="5" visible="no" active="no"/>
<layer number="14" name="Route14" color="1" fill="6" visible="no" active="no"/>
<layer number="15" name="SUPPLY" color="11" fill="1" visible="yes" active="yes"/>
<layer number="16" name="Bottom" color="1" fill="1" visible="yes" active="yes"/>
<layer number="17" name="Pads" color="2" fill="1" visible="yes" active="yes"/>
<layer number="18" name="Vias" color="2" fill="1" visible="yes" active="yes"/>
<layer number="19" name="Unrouted" color="6" fill="1" visible="yes" active="yes"/>
<layer number="20" name="Dimension" color="15" fill="1" visible="yes" active="yes"/>
<layer number="21" name="tPlace" color="7" fill="1" visible="yes" active="yes"/>
<layer number="22" name="bPlace" color="7" fill="1" visible="yes" active="yes"/>
<layer number="23" name="tOrigins" color="15" fill="1" visible="yes" active="yes"/>
<layer number="24" name="bOrigins" color="15" fill="1" visible="yes" active="yes"/>
<layer number="25" name="tNames" color="7" fill="1" visible="yes" active="yes"/>
<layer number="26" name="bNames" color="7" fill="1" visible="yes" active="yes"/>
<layer number="27" name="tValues" color="7" fill="1" visible="yes" active="yes"/>
<layer number="28" name="bValues" color="7" fill="1" visible="yes" active="yes"/>
<layer number="29" name="tStop" color="7" fill="3" visible="yes" active="yes"/>
<layer number="30" name="bStop" color="7" fill="6" visible="yes" active="yes"/>
<layer number="31" name="tCream" color="7" fill="4" visible="yes" active="yes"/>
<layer number="32" name="bCream" color="7" fill="5" visible="yes" active="yes"/>
<layer number="33" name="tFinish" color="6" fill="3" visible="yes" active="yes"/>
<layer number="34" name="bFinish" color="6" fill="6" visible="yes" active="yes"/>
<layer number="35" name="tGlue" color="7" fill="4" visible="yes" active="yes"/>
<layer number="36" name="bGlue" color="7" fill="5" visible="yes" active="yes"/>
<layer number="37" name="tTest" color="7" fill="1" visible="yes" active="yes"/>
<layer number="38" name="bTest" color="7" fill="1" visible="yes" active="yes"/>
<layer number="39" name="tKeepout" color="4" fill="11" visible="yes" active="yes"/>
<layer number="40" name="bKeepout" color="1" fill="11" visible="yes" active="yes"/>
<layer number="41" name="tRestrict" color="4" fill="10" visible="yes" active="yes"/>
<layer number="42" name="bRestrict" color="1" fill="10" visible="yes" active="yes"/>
<layer number="43" name="vRestrict" color="2" fill="10" visible="yes" active="yes"/>
<layer number="44" name="Drills" color="7" fill="1" visible="yes" active="yes"/>
<layer number="45" name="Holes" color="7" fill="1" visible="yes" active="yes"/>
<layer number="46" name="Milling" color="3" fill="1" visible="yes" active="yes"/>
<layer number="47" name="Measures" color="7" fill="1" visible="yes" active="yes"/>
<layer number="48" name="Document" color="7" fill="1" visible="yes" active="yes"/>
<layer number="49" name="Reference" color="7" fill="1" visible="yes" active="yes"/>
<layer number="50" name="dxf" color="7" fill="1" visible="yes" active="yes"/>
<layer number="51" name="tDocu" color="13" fill="1" visible="yes" active="yes"/>
<layer number="52" name="bDocu" color="7" fill="1" visible="yes" active="yes"/>
<layer number="53" name="tGND_GNDA" color="7" fill="9" visible="no" active="no"/>
<layer number="54" name="bGND_GNDA" color="1" fill="9" visible="no" active="no"/>
<layer number="56" name="wert" color="7" fill="1" visible="yes" active="yes"/>
<layer number="57" name="tCAD" color="7" fill="1" visible="no" active="no"/>
<layer number="58" name="b3D" color="7" fill="1" visible="no" active="no"/>
<layer number="59" name="tCarbon" color="7" fill="1" visible="no" active="no"/>
<layer number="60" name="bCarbon" color="7" fill="1" visible="no" active="no"/>
<layer number="90" name="Modules" color="5" fill="1" visible="no" active="no"/>
<layer number="91" name="Nets" color="2" fill="1" visible="no" active="no"/>
<layer number="92" name="Busses" color="1" fill="1" visible="no" active="no"/>
<layer number="93" name="Pins" color="2" fill="1" visible="no" active="no"/>
<layer number="94" name="Symbols" color="4" fill="1" visible="no" active="no"/>
<layer number="95" name="Names" color="7" fill="1" visible="no" active="no"/>
<layer number="96" name="Values" color="7" fill="1" visible="no" active="no"/>
<layer number="97" name="Info" color="7" fill="1" visible="no" active="no"/>
<layer number="98" name="Guide" color="6" fill="1" visible="no" active="no"/>
<layer number="99" name="SpiceOrder" color="7" fill="1" visible="no" active="no"/>
<layer number="100" name="Muster" color="7" fill="1" visible="no" active="no"/>
<layer number="101" name="Patch_Top" color="12" fill="4" visible="yes" active="yes"/>
<layer number="102" name="Vscore" color="13" fill="1" visible="yes" active="yes"/>
<layer number="103" name="tMap" color="7" fill="1" visible="yes" active="yes"/>
<layer number="104" name="Name" color="7" fill="1" visible="yes" active="yes"/>
<layer number="105" name="tPlate" color="7" fill="1" visible="yes" active="yes"/>
<layer number="106" name="bPlate" color="7" fill="1" visible="yes" active="yes"/>
<layer number="107" name="Crop" color="7" fill="1" visible="yes" active="yes"/>
<layer number="108" name="fp8" color="7" fill="1" visible="no" active="no"/>
<layer number="109" name="fp9" color="7" fill="1" visible="no" active="no"/>
<layer number="110" name="110" color="7" fill="1" visible="no" active="no"/>
<layer number="111" name="111" color="7" fill="1" visible="no" active="no"/>
<layer number="112" name="tSilk" color="7" fill="1" visible="no" active="no"/>
<layer number="113" name="IDFDebug" color="7" fill="1" visible="no" active="no"/>
<layer number="114" name="FRNTMAAT1" color="7" fill="1" visible="no" active="no"/>
<layer number="115" name="FRNTMAAT2" color="7" fill="1" visible="no" active="no"/>
<layer number="116" name="Patch_BOT" color="9" fill="4" visible="yes" active="yes"/>
<layer number="117" name="BACKMAAT1" color="7" fill="1" visible="no" active="no"/>
<layer number="118" name="Rect_Pads" color="7" fill="1" visible="no" active="no"/>
<layer number="119" name="KAP_TEKEN" color="7" fill="1" visible="no" active="no"/>
<layer number="120" name="KAP_MAAT1" color="7" fill="1" visible="no" active="no"/>
<layer number="121" name="_tsilk" color="14" fill="1" visible="yes" active="yes"/>
<layer number="122" name="_bsilk" color="14" fill="1" visible="yes" active="yes"/>
<layer number="123" name="tTestmark" color="7" fill="1" visible="no" active="no"/>
<layer number="124" name="bTestmark" color="7" fill="1" visible="no" active="no"/>
<layer number="125" name="_tNames" color="7" fill="1" visible="no" active="no"/>
<layer number="126" name="_bNames" color="7" fill="1" visible="no" active="no"/>
<layer number="127" name="_tValues" color="7" fill="1" visible="no" active="no"/>
<layer number="128" name="_bValues" color="7" fill="1" visible="no" active="no"/>
<layer number="129" name="top_silk" color="7" fill="1" visible="no" active="no"/>
<layer number="130" name="SMDSTROOK" color="7" fill="1" visible="no" active="no"/>
<layer number="131" name="tAdjust" color="7" fill="1" visible="no" active="no"/>
<layer number="132" name="bAdjust" color="7" fill="1" visible="no" active="no"/>
<layer number="133" name="bottom_silk" color="7" fill="1" visible="no" active="no"/>
<layer number="134" name="silk_top" color="7" fill="1" visible="no" active="no"/>
<layer number="135" name="silk_bottom" color="7" fill="1" visible="no" active="no"/>
<layer number="136" name="silktop" color="7" fill="1" visible="yes" active="yes"/>
<layer number="137" name="silkbottom" color="7" fill="1" visible="yes" active="yes"/>
<layer number="138" name="mbTest" color="7" fill="1" visible="yes" active="yes"/>
<layer number="139" name="mtKeepout" color="7" fill="1" visible="yes" active="yes"/>
<layer number="140" name="mbKeepout" color="7" fill="1" visible="yes" active="yes"/>
<layer number="141" name="mtRestrict" color="7" fill="1" visible="yes" active="yes"/>
<layer number="142" name="mbRestrict" color="7" fill="1" visible="yes" active="yes"/>
<layer number="143" name="mvRestrict" color="7" fill="1" visible="yes" active="yes"/>
<layer number="144" name="DrillLegend" color="7" fill="1" visible="no" active="no"/>
<layer number="145" name="DrillLegend_01-16" color="7" fill="1" visible="yes" active="yes"/>
<layer number="146" name="DrillLegend_01-20" color="7" fill="1" visible="yes" active="yes"/>
<layer number="147" name="mMeasures" color="7" fill="1" visible="yes" active="yes"/>
<layer number="148" name="mDocument" color="7" fill="1" visible="yes" active="yes"/>
<layer number="149" name="mReference" color="7" fill="1" visible="yes" active="yes"/>
<layer number="150" name="Notes" color="7" fill="1" visible="no" active="no"/>
<layer number="151" name="HeatSink" color="7" fill="1" visible="yes" active="yes"/>
<layer number="152" name="_bDocu" color="7" fill="1" visible="no" active="no"/>
<layer number="153" name="FabDoc1" color="6" fill="1" visible="no" active="no"/>
<layer number="154" name="FabDoc2" color="2" fill="1" visible="no" active="no"/>
<layer number="155" name="FabDoc3" color="7" fill="15" visible="no" active="no"/>
<layer number="166" name="AntennaArea" color="7" fill="1" visible="yes" active="yes"/>
<layer number="168" name="4mmHeightArea" color="7" fill="1" visible="yes" active="yes"/>
<layer number="191" name="mNets" color="7" fill="1" visible="yes" active="yes"/>
<layer number="192" name="mBusses" color="7" fill="1" visible="yes" active="yes"/>
<layer number="193" name="mPins" color="7" fill="1" visible="yes" active="yes"/>
<layer number="194" name="mSymbols" color="7" fill="1" visible="yes" active="yes"/>
<layer number="195" name="mNames" color="7" fill="1" visible="yes" active="yes"/>
<layer number="196" name="mValues" color="7" fill="1" visible="yes" active="yes"/>
<layer number="199" name="Contour" color="7" fill="1" visible="yes" active="yes"/>
<layer number="200" name="200bmp" color="1" fill="10" visible="yes" active="yes"/>
<layer number="201" name="201bmp" color="2" fill="10" visible="yes" active="yes"/>
<layer number="202" name="202bmp" color="3" fill="10" visible="yes" active="yes"/>
<layer number="203" name="203bmp" color="4" fill="10" visible="yes" active="yes"/>
<layer number="204" name="204bmp" color="5" fill="10" visible="yes" active="yes"/>
<layer number="205" name="205bmp" color="6" fill="10" visible="yes" active="yes"/>
<layer number="206" name="206bmp" color="7" fill="10" visible="yes" active="yes"/>
<layer number="207" name="207bmp" color="8" fill="10" visible="yes" active="yes"/>
<layer number="208" name="208bmp" color="9" fill="10" visible="yes" active="yes"/>
<layer number="209" name="209bmp" color="7" fill="1" visible="no" active="no"/>
<layer number="210" name="210bmp" color="7" fill="1" visible="no" active="no"/>
<layer number="211" name="211bmp" color="7" fill="1" visible="no" active="no"/>
<layer number="212" name="212bmp" color="7" fill="1" visible="no" active="no"/>
<layer number="213" name="213bmp" color="7" fill="1" visible="no" active="no"/>
<layer number="214" name="214bmp" color="7" fill="1" visible="no" active="no"/>
<layer number="215" name="215bmp" color="7" fill="1" visible="no" active="no"/>
<layer number="216" name="216bmp" color="7" fill="1" visible="no" active="no"/>
<layer number="217" name="217bmp" color="18" fill="1" visible="no" active="no"/>
<layer number="218" name="218bmp" color="19" fill="1" visible="no" active="no"/>
<layer number="219" name="219bmp" color="20" fill="1" visible="no" active="no"/>
<layer number="220" name="220bmp" color="21" fill="1" visible="no" active="no"/>
<layer number="221" name="221bmp" color="22" fill="1" visible="no" active="no"/>
<layer number="222" name="222bmp" color="23" fill="1" visible="no" active="no"/>
<layer number="223" name="223bmp" color="24" fill="1" visible="no" active="no"/>
<layer number="224" name="224bmp" color="25" fill="1" visible="no" active="no"/>
<layer number="225" name="225bmp" color="7" fill="1" visible="no" active="no"/>
<layer number="226" name="226bmp" color="7" fill="1" visible="no" active="no"/>
<layer number="227" name="227bmp" color="7" fill="1" visible="no" active="no"/>
<layer number="228" name="228bmp" color="7" fill="1" visible="no" active="no"/>
<layer number="229" name="229bmp" color="7" fill="1" visible="no" active="no"/>
<layer number="230" name="230bmp" color="7" fill="1" visible="no" active="no"/>
<layer number="231" name="Eagle3D_PG1" color="7" fill="1" visible="no" active="no"/>
<layer number="232" name="Eagle3D_PG2" color="7" fill="1" visible="no" active="no"/>
<layer number="233" name="Eagle3D_PG3" color="7" fill="1" visible="no" active="no"/>
<layer number="248" name="Housing" color="7" fill="1" visible="no" active="no"/>
<layer number="249" name="Edge" color="7" fill="1" visible="no" active="no"/>
<layer number="250" name="Descript" color="3" fill="1" visible="no" active="no"/>
<layer number="251" name="SMDround" color="12" fill="11" visible="no" active="no"/>
<layer number="254" name="cooling" color="7" fill="1" visible="yes" active="yes"/>
<layer number="255" name="Accent" color="7" fill="1" visible="no" active="no"/>
</layers>
<board>
<plain>
<wire x1="2.54" y1="36.068" x2="56.769" y2="35.941" width="0" layer="20"/>
<wire x1="57.023" y1="-0.635" x2="1.778" y2="-0.508" width="0" layer="20"/>
<wire x1="59.055" y1="1.143" x2="59.055" y2="33.909" width="0" layer="20"/>
<wire x1="57.023" y1="-0.635" x2="59.055" y2="1.143" width="0" layer="20" curve="90"/>
<wire x1="56.769" y1="35.941" x2="59.055" y2="33.909" width="0" layer="20" curve="-90"/>
<wire x1="2.54" y1="36.068" x2="0.254" y2="34.036" width="0" layer="20" curve="90"/>
<wire x1="0.254" y1="34.036" x2="0.254" y2="1.016" width="0" layer="20"/>
<wire x1="0.254" y1="1.016" x2="1.778" y2="-0.508" width="0" layer="20" curve="90"/>
<text x="11.2014" y="0.4318" size="0.8128" layer="121" font="vector" ratio="13">A10</text>
<text x="13.843" y="0.4064" size="0.8128" layer="121" font="vector" ratio="13">VCC</text>
<text x="16.3576" y="0.4064" size="0.8128" layer="121" font="vector" ratio="13">GND</text>
<text x="9.4234" y="0.4318" size="0.8128" layer="121" font="vector" ratio="13">A9</text>
<text x="22.6314" y="0.4318" size="0.8128" layer="121" font="vector" ratio="13">B7</text>
<text x="24.257" y="0.4064" size="0.8128" layer="121" font="vector" ratio="13">VCC</text>
<text x="26.7716" y="0.4064" size="0.8128" layer="121" font="vector" ratio="13">GND</text>
<text x="20.5994" y="0.4318" size="0.8128" layer="121" font="vector" ratio="13">B6</text>
<text x="33.2994" y="0.4318" size="0.8128" layer="121" font="vector" ratio="13">B9</text>
<text x="35.179" y="0.4064" size="0.8128" layer="121" font="vector" ratio="13">VCC</text>
<text x="37.6936" y="0.4064" size="0.8128" layer="121" font="vector" ratio="13">GND</text>
<text x="31.2674" y="0.4318" size="0.8128" layer="121" font="vector" ratio="13">B8</text>
<text x="43.7134" y="0.4318" size="0.8128" layer="121" font="vector" ratio="13">B11</text>
<text x="46.101" y="0.4064" size="0.8128" layer="121" font="vector" ratio="13">VCC</text>
<text x="48.6156" y="0.4064" size="0.8128" layer="121" font="vector" ratio="13">GND</text>
<text x="41.1734" y="0.4318" size="0.8128" layer="121" font="vector" ratio="13">B10</text>
<text x="14.9606" y="35.1282" size="0.8128" layer="121" font="vector" ratio="13" rot="SR180">A7</text>
<text x="13.081" y="35.1536" size="0.8128" layer="121" font="vector" ratio="13" rot="SR180">VCC</text>
<text x="10.5664" y="35.1536" size="0.8128" layer="121" font="vector" ratio="13" rot="SR180">GND</text>
<text x="16.7386" y="35.1282" size="0.8128" layer="121" font="vector" ratio="13" rot="SR180">A6</text>
<text x="25.6286" y="35.1282" size="0.8128" layer="121" font="vector" ratio="13" rot="SR180">A5</text>
<text x="23.749" y="35.1536" size="0.8128" layer="121" font="vector" ratio="13" rot="SR180">VCC</text>
<text x="21.2344" y="35.1536" size="0.8128" layer="121" font="vector" ratio="13" rot="SR180">GND</text>
<text x="27.4066" y="35.1282" size="0.8128" layer="121" font="vector" ratio="13" rot="SR180">A4</text>
<text x="36.5506" y="35.1282" size="0.8128" layer="121" font="vector" ratio="13" rot="SR180">A3</text>
<text x="34.671" y="35.1536" size="0.8128" layer="121" font="vector" ratio="13" rot="SR180">VCC</text>
<text x="32.1564" y="35.1536" size="0.8128" layer="121" font="vector" ratio="13" rot="SR180">GND</text>
<text x="38.3286" y="35.1282" size="0.8128" layer="121" font="vector" ratio="13" rot="SR180">A2</text>
<text x="46.9646" y="35.1282" size="0.8128" layer="121" font="vector" ratio="13" rot="SR180">A1</text>
<text x="45.085" y="35.1536" size="0.8128" layer="121" font="vector" ratio="13" rot="SR180">VCC</text>
<text x="42.5704" y="35.1536" size="0.8128" layer="121" font="vector" ratio="13" rot="SR180">GND</text>
<text x="48.9966" y="35.1282" size="0.8128" layer="121" font="vector" ratio="13" rot="SR180">A0</text>
<text x="47.498" y="21.082" size="1.6764" layer="122" font="vector" ratio="13" rot="MR0">STM32 Blue Pill Base Shield</text>
<text x="58.4962" y="17.8054" size="0.8128" layer="121" font="vector" ratio="13" rot="R90">TX
A10</text>
<text x="57.5056" y="20.193" size="0.8128" layer="121" font="vector" ratio="13" rot="R90">GND</text>
<text x="57.5056" y="23.2156" size="0.8128" layer="121" font="vector" ratio="13" rot="R90">5V</text>
<text x="58.4962" y="15.5194" size="0.8128" layer="121" font="vector" ratio="13" rot="R90">RX
A9</text>
<text x="57.5056" y="13.0556" size="0.8128" layer="121" font="vector" ratio="13" rot="R90">NC</text>
<text x="57.5056" y="10.0076" size="0.8128" layer="121" font="vector" ratio="13" rot="R90">VCC</text>
</plain>
<libraries>
<library name="SparkFun">
<packages>
<package name="0603">
<wire x1="-1.473" y1="0.983" x2="1.473" y2="0.983" width="0.0508" layer="39"/>
<wire x1="1.473" y1="0.983" x2="1.473" y2="-0.983" width="0.0508" layer="39"/>
<wire x1="1.473" y1="-0.983" x2="-1.473" y2="-0.983" width="0.0508" layer="39"/>
<wire x1="-1.473" y1="-0.983" x2="-1.473" y2="0.983" width="0.0508" layer="39"/>
<wire x1="-0.356" y1="0.432" x2="0.356" y2="0.432" width="0.1016" layer="51"/>
<wire x1="-0.356" y1="-0.419" x2="0.356" y2="-0.419" width="0.1016" layer="51"/>
<smd name="1" x="-0.85" y="0" dx="1.1" dy="1" layer="1"/>
<smd name="2" x="0.85" y="0" dx="1.1" dy="1" layer="1"/>
<text x="-0.889" y="0.762" size="0.4064" layer="25" font="vector">>NAME</text>
<text x="-1.016" y="-1.143" size="0.4064" layer="27" font="vector">>VALUE</text>
<rectangle x1="-0.8382" y1="-0.4699" x2="-0.3381" y2="0.4801" layer="51"/>
<rectangle x1="0.3302" y1="-0.4699" x2="0.8303" y2="0.4801" layer="51"/>
<rectangle x1="-0.1999" y1="-0.3" x2="0.1999" y2="0.3" layer="35"/>
</package>
</packages>
</library>
<library name="penn-engineering">
<description><b>Penn Engineering Broaching Fasteners</b> - v1.03 (07/28/2013)<p>
PEM broaching fasteners can be utilized with all types of PC boards, as well as with aluminum, acrylic, and
polycarbonate components. They install simply, quickly, and permanently for secure and reliable attachment.
Their use eliminates the need for washers, lock washers, nuts, and other excess hardware.
The PEM family of broaching fasteners includes broaching nuts (Types KF2 and KFS2) with permanent
threads for board mounting or component attachment; threaded or unthreaded standoffs (Types KFE and
KFSE) for stacking or spacing and flare mounted standoffs (Type KFB3) for greater pullout performance;
threaded studs (Type KFH) for use as solderable connectors or as permanently mounted mechanical
fasteners with external threads; all-metal standoffs (Type KSSB) featuring a spring action to hold a PC board
securely without screws or threaded hardware; self-expanding FOILGARD® fasteners (Type KPS6) used in
plated thru-holes in multi-layer PC Boards; and one-piece board-mount screw assemblies (Type PFK) with
captive screws for easy mounting and removal of PC boards.<p>

<p>
<table width="75%" border="1">
  <tr bgcolor="#66FF99">
    <th>TYPE</th>
    <th>DESCRIPTION</th>
  </tr>
  <tr>
    <td width="28%">KF2 AND KFS2</td>
    <td width="72%">Broaching Nuts</td>
  </tr>
  <tr>
    <td>KFE AND KFSE</td>
    <td>Broaching Standoffs</td>
  </tr>
  <tr>
    <td>KFB3</td>
    <td>Flare-mounted Standoffs</td>
  </tr>
  <tr>
    <td>KFH</td>
    <td>Broaching Studs</td>
  </tr>
  <tr>
    <td>PFK</td>
    <td>Board-mount Panel Fastener Assemblies</td>
  </tr>
  <tr>
    <td>KSSB</td>
    <td>Broaching, SNAP-TOP&reg; Standoffs</td>
  </tr>
  <tr>
    <td>KPS6</td>
    <td>Self-expanding FOILGARD&reg; Fasteners</td>
  <tr>
    <td>SMDRA</td>
    <td>R'ANGLE Right Angle PCB Mount</td>
  </tr>
  </tr>
  <tr>
    <td>SMTSO</td>
    <td>ReelFast® SMT Spacers/Nuts</td>
  </tr>
</table>
<p>
<p>source http://www.pemnet.com<p>
THIS LIBRARY IS PROVIDED AS IS AND WITHOUT WARRANTY OF ANY KIND, EXPRESSED OR IMPLIED.<br>
USE AT YOUR OWN RISK!<p>
<author>Copyright (C) 2010, Bob Starr<br> http://www.bobstarr.net<br></author></description>
<packages>
<package name="KFH-M3">
<description><b>BROACHING STUD</b><p>
hole size  3 mm<p>
screw size M3 x 0.5</description>
<circle x="0" y="0" radius="2.29" width="0.1524" layer="51"/>
<circle x="0" y="0" radius="2.5" width="0" layer="41"/>
<circle x="0" y="0" radius="2.5" width="0" layer="42"/>
<circle x="0" y="0" radius="2.5" width="0" layer="39"/>
<circle x="0" y="0" radius="2.5" width="0" layer="40"/>
<hole x="0" y="0" drill="3"/>
</package>
</packages>
</library>
<library name="Seeed-Connector" urn="urn:adsk.eagle:library:478">
<packages>
<package name="HW4-2.0" urn="urn:adsk.eagle:footprint:33033/1" library_version="1">
<wire x1="-5" y1="1" x2="-5" y2="-1" width="0.127" layer="21"/>
<wire x1="5" y1="1.5" x2="5" y2="-1.5" width="0.254" layer="21"/>
<wire x1="-5" y1="2.2" x2="-5" y2="-2.2" width="0.254" layer="21"/>
<wire x1="-5" y1="-2.2" x2="-3.2" y2="-2.2" width="0.254" layer="21"/>
<wire x1="3.2" y1="-2.2" x2="5" y2="-2.2" width="0.254" layer="21"/>
<wire x1="5" y1="-2.2" x2="5" y2="2.2" width="0.254" layer="21"/>
<wire x1="-5" y1="2.2" x2="5" y2="2.2" width="0.254" layer="21"/>
<wire x1="-5" y1="-2.2" x2="-5" y2="-2.8" width="0.254" layer="21"/>
<wire x1="-5" y1="-2.8" x2="-3.2" y2="-2.8" width="0.254" layer="21"/>
<wire x1="-3.2" y1="-2.8" x2="-3.2" y2="-2.2" width="0.254" layer="21"/>
<wire x1="-3.2" y1="-2.2" x2="3.2" y2="-2.2" width="0.254" layer="21"/>
<wire x1="3.2" y1="-2.2" x2="3.2" y2="-2.8" width="0.254" layer="21"/>
<wire x1="3.2" y1="-2.8" x2="5" y2="-2.8" width="0.254" layer="21"/>
<wire x1="5" y1="-2.8" x2="5" y2="-2.2" width="0.254" layer="21"/>
<wire x1="-5" y1="2.2" x2="5" y2="2.2" width="0.254" layer="39"/>
<wire x1="5" y1="2.2" x2="5" y2="-2.8" width="0.254" layer="39"/>
<wire x1="-5" y1="-2.8" x2="-5" y2="2.2" width="0.254" layer="39"/>
<wire x1="-4.953" y1="-2.794" x2="-3.175" y2="-2.794" width="0.254" layer="39"/>
<wire x1="-3.175" y1="-2.794" x2="-3.175" y2="-2.159" width="0.254" layer="39"/>
<wire x1="-3.175" y1="-2.159" x2="-1.778" y2="-2.159" width="0.254" layer="39"/>
<wire x1="-1.778" y1="-2.159" x2="-1.778" y2="-4.191" width="0.254" layer="39"/>
<wire x1="-1.778" y1="-4.191" x2="1.778" y2="-4.191" width="0.254" layer="39"/>
<wire x1="1.778" y1="-4.191" x2="1.778" y2="-2.159" width="0.254" layer="39"/>
<wire x1="1.778" y1="-2.159" x2="3.175" y2="-2.159" width="0.254" layer="39"/>
<wire x1="3.175" y1="-2.159" x2="3.175" y2="-2.794" width="0.254" layer="39"/>
<wire x1="3.175" y1="-2.794" x2="4.953" y2="-2.794" width="0.254" layer="39"/>
<pad name="1" x="-3" y="0" drill="0.8" diameter="1.27" shape="square"/>
<pad name="2" x="-1" y="0" drill="0.8" diameter="1.27"/>
<pad name="3" x="1" y="0" drill="0.8" diameter="1.27"/>
<pad name="4" x="3" y="0" drill="0.8" diameter="1.27"/>
<text x="-2.54" y="2.54" size="0.889" layer="25" font="vector" ratio="11">>NAME</text>
<text x="-2.54" y="-1.905" size="0.889" layer="27" font="vector" ratio="11">>VALUE</text>
</package>
</packages>
<packages3d>
<package3d name="HW4-2.0" urn="urn:adsk.eagle:package:33111/1" type="box" library_version="1">
<packageinstances>
<packageinstance name="HW4-2.0"/>
</packageinstances>
</package3d>
</packages3d>
</library>
<library name="BluePill">
<packages>
<package name="BLUE_PILL">
<pad name="P$1" x="-7.62" y="15.24" drill="0.8" shape="long"/>
<pad name="P$2" x="-7.62" y="12.7" drill="0.8" shape="long"/>
<pad name="P$3" x="-7.62" y="10.16" drill="0.8" shape="long"/>
<pad name="P$4" x="-7.62" y="7.62" drill="0.8" shape="long"/>
<pad name="P$5" x="-7.62" y="5.08" drill="0.8" shape="long"/>
<pad name="P$6" x="-7.62" y="2.54" drill="0.8" shape="long"/>
<pad name="P$7" x="-7.62" y="0" drill="0.8" shape="long"/>
<pad name="P$8" x="-7.62" y="-2.54" drill="0.8" shape="long"/>
<pad name="P$9" x="-7.62" y="-5.08" drill="0.8" shape="long"/>
<pad name="P$10" x="-7.62" y="-7.62" drill="0.8" shape="long"/>
<pad name="P$11" x="-7.62" y="-10.16" drill="0.8" shape="long"/>
<pad name="P$12" x="-7.62" y="-12.7" drill="0.8" shape="long"/>
<pad name="P$13" x="-7.62" y="-15.24" drill="0.8" shape="long"/>
<pad name="P$14" x="-7.62" y="-17.78" drill="0.8" shape="long"/>
<pad name="P$15" x="-7.62" y="-20.32" drill="0.8" shape="long"/>
<pad name="P$16" x="-7.62" y="-22.86" drill="0.8" shape="long"/>
<pad name="P$17" x="-7.62" y="-25.4" drill="0.8" shape="long"/>
<pad name="P$18" x="-7.62" y="-27.94" drill="0.8" shape="long"/>
<pad name="P$19" x="-7.62" y="-30.48" drill="0.8" shape="long"/>
<pad name="P$20" x="-7.62" y="-33.02" drill="0.8" shape="long"/>
<pad name="P$21" x="7.62" y="15.24" drill="0.8" shape="long"/>
<pad name="P$22" x="7.62" y="12.7" drill="0.8" shape="long"/>
<pad name="P$23" x="7.62" y="10.16" drill="0.8" shape="long"/>
<pad name="P$24" x="7.62" y="7.62" drill="0.8" shape="long"/>
<pad name="P$25" x="7.62" y="5.08" drill="0.8" shape="long"/>
<pad name="P$26" x="7.62" y="2.54" drill="0.8" shape="long"/>
<pad name="P$27" x="7.62" y="0" drill="0.8" shape="long"/>
<pad name="P$28" x="7.62" y="-2.54" drill="0.8" shape="long"/>
<pad name="P$29" x="7.62" y="-5.08" drill="0.8" shape="long"/>
<pad name="P$30" x="7.62" y="-7.62" drill="0.8" shape="long"/>
<pad name="P$31" x="7.62" y="-10.16" drill="0.8" shape="long"/>
<pad name="P$32" x="7.62" y="-12.7" drill="0.8" shape="long"/>
<pad name="P$33" x="7.62" y="-15.24" drill="0.8" shape="long"/>
<pad name="P$34" x="7.62" y="-17.78" drill="0.8" shape="long"/>
<pad name="P$35" x="7.62" y="-20.32" drill="0.8" shape="long"/>
<pad name="P$36" x="7.62" y="-22.86" drill="0.8" shape="long"/>
<pad name="P$37" x="7.62" y="-25.4" drill="0.8" shape="long"/>
<pad name="P$38" x="7.62" y="-27.94" drill="0.8" shape="long"/>
<pad name="P$39" x="7.62" y="-30.48" drill="0.8" shape="long"/>
<pad name="P$40" x="7.62" y="-33.02" drill="0.8" shape="long"/>
<wire x1="-3.81" y1="17.78" x2="-2.54" y2="17.78" width="0.127" layer="21"/>
<wire x1="2.54" y1="17.78" x2="3.81" y2="17.78" width="0.127" layer="21"/>
<wire x1="-3.81" y1="17.78" x2="-3.81" y2="13.335" width="0.127" layer="21"/>
<wire x1="-3.81" y1="13.335" x2="-3.175" y2="13.335" width="0.127" layer="21"/>
<wire x1="-3.175" y1="13.335" x2="-2.54" y2="12.7" width="0.127" layer="21"/>
<wire x1="-2.54" y1="12.7" x2="2.54" y2="12.7" width="0.127" layer="21"/>
<wire x1="2.54" y1="12.7" x2="3.175" y2="13.335" width="0.127" layer="21"/>
<wire x1="3.175" y1="13.335" x2="3.81" y2="13.335" width="0.127" layer="21"/>
<wire x1="3.81" y1="13.335" x2="3.81" y2="17.78" width="0.127" layer="21"/>
<wire x1="-5.08" y1="-8.89" x2="-4.445" y2="-8.255" width="0.127" layer="21"/>
<wire x1="-4.445" y1="-8.255" x2="-3.81" y2="-7.62" width="0.127" layer="21"/>
<wire x1="-3.81" y1="-7.62" x2="-3.175" y2="-6.985" width="0.127" layer="21"/>
<wire x1="-3.175" y1="-6.985" x2="-2.54" y2="-6.35" width="0.127" layer="21"/>
<wire x1="-2.54" y1="-6.35" x2="-1.905" y2="-5.715" width="0.127" layer="21"/>
<wire x1="-1.905" y1="-5.715" x2="-1.27" y2="-5.08" width="0.127" layer="21"/>
<wire x1="-1.27" y1="-5.08" x2="-0.635" y2="-4.445" width="0.127" layer="21"/>
<wire x1="-0.635" y1="-4.445" x2="0" y2="-3.81" width="0.127" layer="21"/>
<wire x1="0" y1="-3.81" x2="0.635" y2="-4.445" width="0.127" layer="21"/>
<wire x1="0.635" y1="-4.445" x2="1.27" y2="-5.08" width="0.127" layer="21"/>
<wire x1="1.27" y1="-5.08" x2="1.905" y2="-5.715" width="0.127" layer="21"/>
<wire x1="1.905" y1="-5.715" x2="2.54" y2="-6.35" width="0.127" layer="21"/>
<wire x1="2.54" y1="-6.35" x2="3.175" y2="-6.985" width="0.127" layer="21"/>
<wire x1="3.175" y1="-6.985" x2="3.81" y2="-7.62" width="0.127" layer="21"/>
<wire x1="3.81" y1="-7.62" x2="4.445" y2="-8.255" width="0.127" layer="21"/>
<wire x1="4.445" y1="-8.255" x2="5.08" y2="-8.89" width="0.127" layer="21"/>
<wire x1="5.08" y1="-8.89" x2="4.445" y2="-9.525" width="0.127" layer="21"/>
<wire x1="4.445" y1="-9.525" x2="3.81" y2="-10.16" width="0.127" layer="21"/>
<wire x1="3.81" y1="-10.16" x2="3.175" y2="-10.795" width="0.127" layer="21"/>
<wire x1="3.175" y1="-10.795" x2="2.54" y2="-11.43" width="0.127" layer="21"/>
<wire x1="2.54" y1="-11.43" x2="1.905" y2="-12.065" width="0.127" layer="21"/>
<wire x1="1.905" y1="-12.065" x2="1.27" y2="-12.7" width="0.127" layer="21"/>
<wire x1="1.27" y1="-12.7" x2="0.635" y2="-13.335" width="0.127" layer="21"/>
<wire x1="0.635" y1="-13.335" x2="0" y2="-13.97" width="0.127" layer="21"/>
<wire x1="0" y1="-13.97" x2="-0.635" y2="-13.335" width="0.127" layer="21"/>
<wire x1="-0.635" y1="-13.335" x2="-1.27" y2="-12.7" width="0.127" layer="21"/>
<wire x1="-1.27" y1="-12.7" x2="-1.905" y2="-12.065" width="0.127" layer="21"/>
<wire x1="-1.905" y1="-12.065" x2="-2.54" y2="-11.43" width="0.127" layer="21"/>
<wire x1="-2.54" y1="-11.43" x2="-3.175" y2="-10.795" width="0.127" layer="21"/>
<wire x1="-3.175" y1="-10.795" x2="-3.81" y2="-10.16" width="0.127" layer="21"/>
<wire x1="-3.81" y1="-10.16" x2="-4.445" y2="-9.525" width="0.127" layer="21"/>
<wire x1="-4.445" y1="-9.525" x2="-5.08" y2="-8.89" width="0.127" layer="21"/>
<text x="-1.905" y="-11.43" size="1.27" layer="21" rot="R46.6">STM32</text>
<wire x1="4.445" y1="-9.525" x2="5.08" y2="-10.16" width="0.127" layer="21"/>
<wire x1="3.81" y1="-10.16" x2="4.445" y2="-10.795" width="0.127" layer="21"/>
<wire x1="3.175" y1="-10.795" x2="3.81" y2="-11.43" width="0.127" layer="21"/>
<wire x1="2.54" y1="-11.43" x2="3.175" y2="-12.065" width="0.127" layer="21"/>
<wire x1="1.905" y1="-12.065" x2="2.54" y2="-12.7" width="0.127" layer="21"/>
<wire x1="1.27" y1="-12.7" x2="1.905" y2="-13.335" width="0.127" layer="21"/>
<wire x1="0.635" y1="-13.335" x2="1.27" y2="-13.97" width="0.127" layer="21"/>
<wire x1="-0.635" y1="-13.335" x2="-1.27" y2="-13.97" width="0.127" layer="21"/>
<wire x1="-1.27" y1="-12.7" x2="-1.905" y2="-13.335" width="0.127" layer="21"/>
<wire x1="-1.905" y1="-12.065" x2="-2.54" y2="-12.7" width="0.127" layer="21"/>
<wire x1="-2.54" y1="-11.43" x2="-3.175" y2="-12.065" width="0.127" layer="21"/>
<wire x1="-3.175" y1="-10.795" x2="-3.81" y2="-11.43" width="0.127" layer="21"/>
<wire x1="-3.81" y1="-10.16" x2="-4.445" y2="-10.795" width="0.127" layer="21"/>
<wire x1="-4.445" y1="-6.985" x2="-3.81" y2="-7.62" width="0.127" layer="21"/>
<wire x1="-3.81" y1="-6.35" x2="-3.175" y2="-6.985" width="0.127" layer="21"/>
<wire x1="-3.175" y1="-5.715" x2="-2.54" y2="-6.35" width="0.127" layer="21"/>
<wire x1="-2.54" y1="-5.08" x2="-1.905" y2="-5.715" width="0.127" layer="21"/>
<wire x1="-1.905" y1="-4.445" x2="-1.27" y2="-5.08" width="0.127" layer="21"/>
<wire x1="-1.27" y1="-3.81" x2="-0.635" y2="-4.445" width="0.127" layer="21"/>
<wire x1="0.635" y1="-4.445" x2="1.27" y2="-3.81" width="0.127" layer="21"/>
<wire x1="1.27" y1="-5.08" x2="1.905" y2="-4.445" width="0.127" layer="21"/>
<wire x1="1.905" y1="-5.715" x2="2.54" y2="-5.08" width="0.127" layer="21"/>
<wire x1="2.54" y1="-6.35" x2="3.175" y2="-5.715" width="0.127" layer="21"/>
<wire x1="3.175" y1="-6.985" x2="3.81" y2="-6.35" width="0.127" layer="21"/>
<wire x1="3.81" y1="-7.62" x2="4.445" y2="-6.985" width="0.127" layer="21"/>
<wire x1="3.81" y1="17.78" x2="8.89" y2="17.78" width="0.127" layer="21"/>
<wire x1="8.89" y1="17.78" x2="10.16" y2="16.51" width="0.127" layer="21" curve="-90"/>
<wire x1="10.16" y1="16.51" x2="10.16" y2="-33.02" width="0.127" layer="21"/>
<wire x1="10.16" y1="-33.02" x2="8.89" y2="-34.29" width="0.127" layer="21" curve="-90"/>
<wire x1="8.89" y1="-34.29" x2="-8.89" y2="-34.29" width="0.127" layer="21"/>
<wire x1="-8.89" y1="-34.29" x2="-10.16" y2="-33.02" width="0.127" layer="21" curve="-90"/>
<wire x1="-10.16" y1="-33.02" x2="-10.16" y2="16.51" width="0.127" layer="21"/>
<wire x1="-10.16" y1="16.51" x2="-8.89" y2="17.78" width="0.127" layer="21" curve="-90"/>
<wire x1="-8.89" y1="17.78" x2="-3.81" y2="17.78" width="0.127" layer="21"/>
<wire x1="-3.81" y1="17.78" x2="-2.54" y2="17.78" width="0.127" layer="21" curve="90"/>
<wire x1="-2.54" y1="17.78" x2="2.54" y2="17.78" width="0.127" layer="21"/>
<wire x1="2.54" y1="17.78" x2="3.81" y2="17.78" width="0.127" layer="21" curve="90"/>
<wire x1="-2.54" y1="15.24" x2="-2.54" y2="13.97" width="0.127" layer="21"/>
<wire x1="-2.54" y1="13.97" x2="-1.27" y2="13.97" width="0.127" layer="21"/>
<wire x1="-1.27" y1="13.97" x2="-1.27" y2="15.24" width="0.127" layer="21"/>
<wire x1="1.27" y1="15.24" x2="1.27" y2="13.97" width="0.127" layer="21"/>
<wire x1="1.27" y1="13.97" x2="2.54" y2="13.97" width="0.127" layer="21"/>
<wire x1="2.54" y1="13.97" x2="2.54" y2="15.24" width="0.127" layer="21"/>
<wire x1="-2.54" y1="15.24" x2="-1.27" y2="15.24" width="0.127" layer="21"/>
<wire x1="1.27" y1="15.24" x2="2.54" y2="15.24" width="0.127" layer="21"/>
<wire x1="-4.445" y1="-9.525" x2="-5.08" y2="-10.16" width="0.127" layer="21"/>
<wire x1="-5.08" y1="-7.62" x2="-4.445" y2="-8.255" width="0.127" layer="21"/>
<wire x1="5.08" y1="-7.62" x2="4.445" y2="-8.255" width="0.127" layer="21"/>
<circle x="-3.81" y="-8.89" radius="0.635" width="0.127" layer="21"/>
<wire x1="-4.445" y1="-21.59" x2="-2.54" y2="-23.495" width="0.127" layer="21" curve="90"/>
<wire x1="-2.54" y1="-23.495" x2="2.54" y2="-23.495" width="0.127" layer="21"/>
<wire x1="2.54" y1="-23.495" x2="4.445" y2="-21.59" width="0.127" layer="21" curve="90"/>
<wire x1="4.445" y1="-21.59" x2="2.54" y2="-19.685" width="0.127" layer="21" curve="90"/>
<wire x1="2.54" y1="-19.685" x2="-2.54" y2="-19.685" width="0.127" layer="21"/>
<wire x1="-2.54" y1="-19.685" x2="-4.445" y2="-21.59" width="0.127" layer="21" curve="90"/>
<wire x1="1.27" y1="8.89" x2="2.54" y2="8.89" width="0.127" layer="21"/>
<wire x1="2.54" y1="8.89" x2="2.54" y2="5.08" width="0.127" layer="21"/>
<wire x1="2.54" y1="5.08" x2="1.27" y2="5.08" width="0.127" layer="21"/>
<wire x1="1.27" y1="5.08" x2="1.27" y2="6.35" width="0.127" layer="21"/>
<wire x1="1.27" y1="6.35" x2="1.27" y2="7.62" width="0.127" layer="21"/>
<wire x1="1.27" y1="7.62" x2="1.27" y2="8.89" width="0.127" layer="21"/>
<wire x1="2.54" y1="8.89" x2="3.81" y2="8.89" width="0.127" layer="21"/>
<wire x1="3.81" y1="8.89" x2="3.81" y2="7.62" width="0.127" layer="21"/>
<wire x1="3.81" y1="7.62" x2="3.81" y2="6.35" width="0.127" layer="21"/>
<wire x1="3.81" y1="6.35" x2="3.81" y2="5.08" width="0.127" layer="21"/>
<wire x1="3.81" y1="5.08" x2="2.54" y2="5.08" width="0.127" layer="21"/>
<circle x="-2.54" y="6.35" radius="0.635" width="0.127" layer="21"/>
<wire x1="-3.81" y1="7.62" x2="-3.175" y2="7.62" width="0.127" layer="21"/>
<wire x1="-3.175" y1="7.62" x2="-1.905" y2="7.62" width="0.127" layer="21"/>
<wire x1="-1.905" y1="7.62" x2="-1.27" y2="7.62" width="0.127" layer="21"/>
<wire x1="-1.27" y1="7.62" x2="-1.27" y2="5.08" width="0.127" layer="21"/>
<wire x1="-1.27" y1="5.08" x2="-1.905" y2="5.08" width="0.127" layer="21"/>
<wire x1="-1.905" y1="5.08" x2="-3.175" y2="5.08" width="0.127" layer="21"/>
<wire x1="-3.175" y1="5.08" x2="-3.81" y2="5.08" width="0.127" layer="21"/>
<wire x1="-3.81" y1="5.08" x2="-3.81" y2="7.62" width="0.127" layer="21"/>
<wire x1="-1.905" y1="5.08" x2="-1.905" y2="4.445" width="0.127" layer="21"/>
<wire x1="-3.175" y1="5.08" x2="-3.175" y2="4.445" width="0.127" layer="21"/>
<wire x1="-3.175" y1="7.62" x2="-3.175" y2="8.255" width="0.127" layer="21"/>
<wire x1="-1.905" y1="7.62" x2="-1.905" y2="8.255" width="0.127" layer="21"/>
<wire x1="1.27" y1="7.62" x2="3.81" y2="7.62" width="0.127" layer="21"/>
<wire x1="3.81" y1="6.35" x2="1.27" y2="6.35" width="0.127" layer="21"/>
</package>
</packages>
</library>
<library name="Anata-Symbols">
<packages>
<package name="BLOCKY_LOGO">
<text x="1.27" y="-1.27" size="1.27" layer="21" font="vector" ratio="15">www.getblocky.com</text>
<rectangle x1="1" y1="4.75" x2="3" y2="6.75" layer="21"/>
<rectangle x1="1" y1="2.5" x2="3" y2="4.5" layer="21"/>
<rectangle x1="3.25" y1="2.5" x2="5.25" y2="4.5" layer="21"/>
<rectangle x1="1" y1="0.25" x2="3" y2="2.25" layer="21"/>
<rectangle x1="3.75" y1="0.25" x2="5.5" y2="2" layer="21"/>
<rectangle x1="5.75" y1="0.25" x2="7.5" y2="2" layer="21"/>
<rectangle x1="5.75" y1="3" x2="7.5" y2="4.75" layer="21"/>
<rectangle x1="5.75" y1="5" x2="7.5" y2="6.75" layer="21"/>
<rectangle x1="3.75" y1="5" x2="5.5" y2="6.75" layer="21"/>
<wire x1="8.1" y1="4.7" x2="8.1" y2="4.6" width="0.4064" layer="21"/>
<wire x1="8.1" y1="4.6" x2="8.1" y2="3.6" width="0.4064" layer="21"/>
<wire x1="8.1" y1="3.6" x2="8.1" y2="2.4" width="0.4064" layer="21"/>
<wire x1="8.1" y1="2.4" x2="9.3" y2="2.4" width="0.4064" layer="21"/>
<wire x1="9.3" y1="2.4" x2="9.9" y2="3" width="0.4064" layer="21" curve="90"/>
<wire x1="9.9" y1="3" x2="9.3" y2="3.6" width="0.4064" layer="21" curve="90"/>
<wire x1="9.3" y1="3.6" x2="9.1" y2="3.6" width="0.4064" layer="21"/>
<wire x1="8.1" y1="3.6" x2="9.1" y2="3.6" width="0.4064" layer="21"/>
<wire x1="9.1" y1="3.6" x2="9.7" y2="4.2" width="0.4064" layer="21" curve="90"/>
<wire x1="9.7" y1="4.2" x2="9.7" y2="4.4" width="0.4064" layer="21"/>
<wire x1="9.7" y1="4.4" x2="9.3" y2="4.8" width="0.4064" layer="21" curve="90"/>
<wire x1="9.3" y1="4.8" x2="8.3" y2="4.8" width="0.4064" layer="21"/>
<wire x1="8.3" y1="4.8" x2="8.1" y2="4.6" width="0.4064" layer="21" curve="90"/>
<wire x1="10.7" y1="4.9" x2="10.7" y2="2.6" width="0.4064" layer="21"/>
<wire x1="10.7" y1="2.6" x2="10.9" y2="2.4" width="0.4064" layer="21" curve="90"/>
<wire x1="10.9" y1="2.4" x2="11.2" y2="2.4" width="0.4064" layer="21"/>
<circle x="12.5" y="3.2" radius="0.8544" width="0.4064" layer="21"/>
<wire x1="15.5" y1="3.8" x2="15.5" y2="2.7" width="0.4064" layer="21" curve="279.527283"/>
<wire x1="16.3" y1="5" x2="16.3" y2="2.9" width="0.4064" layer="21"/>
<wire x1="16.3" y1="2.4" x2="16.3" y2="2.9" width="0.4064" layer="21"/>
<wire x1="16.3" y1="2.9" x2="16.8" y2="3.4" width="0.4064" layer="21"/>
<wire x1="17.5" y1="4.1" x2="16.8" y2="3.4" width="0.4064" layer="21"/>
<wire x1="16.8" y1="3.4" x2="17.6" y2="2.4" width="0.4064" layer="21"/>
<wire x1="18.2" y1="4.2" x2="19" y2="2.3" width="0.4064" layer="21"/>
<wire x1="19.7" y1="4.1" x2="18.7" y2="1.6" width="0.4064" layer="21"/>
<wire x1="18.7" y1="1.6" x2="18.3" y2="1.6" width="0.4064" layer="21"/>
<wire x1="8.06" y1="0.6" x2="8.38" y2="1.4" width="0.1016" layer="21"/>
<wire x1="8.38" y1="1.4" x2="8.62" y2="0.88" width="0.1016" layer="21"/>
<wire x1="8.62" y1="0.88" x2="8.74" y2="0.62" width="0.1016" layer="21"/>
<wire x1="8.18" y1="0.88" x2="8.62" y2="0.88" width="0.1016" layer="21"/>
<wire x1="8.94" y1="1.26" x2="8.94" y2="0.98" width="0.1016" layer="21"/>
<wire x1="8.94" y1="0.62" x2="8.94" y2="0.98" width="0.1016" layer="21"/>
<wire x1="8.94" y1="0.98" x2="9.16" y2="1.2" width="0.1016" layer="21" curve="-90"/>
<wire x1="9.16" y1="1.2" x2="9.24" y2="1.2" width="0.1016" layer="21"/>
<wire x1="9.24" y1="1.2" x2="9.4" y2="1.04" width="0.1016" layer="21" curve="-90"/>
<wire x1="9.4" y1="1.04" x2="9.4" y2="0.7" width="0.1016" layer="21"/>
<wire x1="9.4" y1="0.7" x2="9.5" y2="0.6" width="0.1016" layer="21" curve="90"/>
<wire x1="10.1" y1="1.24" x2="9.78" y2="0.36" width="0.1016" layer="21"/>
<wire x1="9.78" y1="0.36" x2="9.62" y2="0.32" width="0.1016" layer="21"/>
<wire x1="9.56" y1="1.24" x2="9.86" y2="0.6" width="0.1016" layer="21"/>
<circle x="10.52" y="0.88" radius="0.302653125" width="0.1016" layer="21"/>
<wire x1="11.02" y1="1.22" x2="11.02" y2="0.96" width="0.1016" layer="21"/>
<wire x1="11.02" y1="0.6" x2="11.02" y2="0.96" width="0.1016" layer="21"/>
<wire x1="11.02" y1="0.96" x2="11.24" y2="1.18" width="0.1016" layer="21" curve="-90"/>
<wire x1="11.24" y1="1.18" x2="11.34" y2="1.18" width="0.1016" layer="21"/>
<wire x1="11.34" y1="1.18" x2="11.5" y2="1.02" width="0.1016" layer="21" curve="-90"/>
<wire x1="11.5" y1="1.02" x2="11.5" y2="0.68" width="0.1016" layer="21"/>
<wire x1="11.5" y1="0.68" x2="11.6" y2="0.58" width="0.1016" layer="21" curve="90"/>
<wire x1="11.74" y1="0.9" x2="12.24" y2="0.9" width="0.1016" layer="21"/>
<wire x1="12.24" y1="0.9" x2="12.24" y2="1.02" width="0.1016" layer="21"/>
<wire x1="12.24" y1="1.02" x2="12.06" y2="1.2" width="0.1016" layer="21" curve="90"/>
<wire x1="12.06" y1="1.2" x2="11.92" y2="1.2" width="0.1016" layer="21"/>
<wire x1="11.92" y1="1.2" x2="11.74" y2="1.02" width="0.1016" layer="21" curve="90"/>
<wire x1="11.74" y1="1.02" x2="11.74" y2="0.8" width="0.1016" layer="21"/>
<wire x1="11.74" y1="0.8" x2="11.96" y2="0.58" width="0.1016" layer="21" curve="90"/>
<wire x1="11.96" y1="0.58" x2="12.26" y2="0.58" width="0.1016" layer="21"/>
<wire x1="13.2" y1="1.12" x2="13.26" y2="0.7" width="0.1016" layer="21" curve="270"/>
<wire x1="13.5" y1="1.1" x2="13.62" y2="1.22" width="0.1016" layer="21" curve="-90"/>
<wire x1="13.62" y1="1.22" x2="13.78" y2="1.22" width="0.1016" layer="21"/>
<wire x1="13.78" y1="1.22" x2="13.9" y2="1.1" width="0.1016" layer="21" curve="-90"/>
<wire x1="13.9" y1="1.1" x2="13.9" y2="0.92" width="0.1016" layer="21"/>
<wire x1="13.9" y1="0.92" x2="13.9" y2="0.7" width="0.1016" layer="21"/>
<wire x1="13.9" y1="0.7" x2="13.9" y2="0.6" width="0.1016" layer="21"/>
<wire x1="13.9" y1="0.6" x2="13.98" y2="0.52" width="0.1016" layer="21" curve="90"/>
<wire x1="13.9" y1="0.92" x2="13.54" y2="0.92" width="0.1016" layer="21"/>
<wire x1="13.54" y1="0.92" x2="13.44" y2="0.82" width="0.1016" layer="21" curve="90"/>
<wire x1="13.44" y1="0.82" x2="13.44" y2="0.68" width="0.1016" layer="21"/>
<wire x1="13.44" y1="0.68" x2="13.52" y2="0.6" width="0.1016" layer="21" curve="90"/>
<wire x1="13.52" y1="0.6" x2="13.8" y2="0.6" width="0.1016" layer="21"/>
<wire x1="13.8" y1="0.6" x2="13.9" y2="0.7" width="0.1016" layer="21" curve="90"/>
<wire x1="14.12" y1="1.24" x2="14.12" y2="1.02" width="0.1016" layer="21"/>
<wire x1="14.12" y1="0.58" x2="14.12" y2="1.02" width="0.1016" layer="21"/>
<wire x1="14.12" y1="1.02" x2="14.3" y2="1.2" width="0.1016" layer="21" curve="-90"/>
<wire x1="14.3" y1="1.2" x2="14.48" y2="1.2" width="0.1016" layer="21"/>
<wire x1="14.48" y1="1.2" x2="14.6" y2="1.08" width="0.1016" layer="21" curve="-90"/>
<wire x1="14.6" y1="1.08" x2="14.6" y2="0.6" width="0.1016" layer="21"/>
<wire x1="15.18" y1="1.22" x2="15.18" y2="1.04" width="0.1016" layer="21"/>
<wire x1="15.18" y1="0.6" x2="15.18" y2="1.04" width="0.1016" layer="21"/>
<wire x1="15.18" y1="1.04" x2="15.34" y2="1.2" width="0.1016" layer="21" curve="-90"/>
<wire x1="15.34" y1="1.2" x2="15.48" y2="1.2" width="0.1016" layer="21"/>
<wire x1="15.48" y1="1.2" x2="15.6" y2="1.08" width="0.1016" layer="21" curve="-90"/>
<wire x1="15.6" y1="1.08" x2="15.6" y2="1.02" width="0.1016" layer="21"/>
<wire x1="15.6" y1="0.62" x2="15.6" y2="1.02" width="0.1016" layer="21"/>
<wire x1="15.6" y1="1.02" x2="15.76" y2="1.18" width="0.1016" layer="21" curve="-90"/>
<wire x1="15.76" y1="1.18" x2="15.96" y2="1.18" width="0.1016" layer="21"/>
<wire x1="15.96" y1="1.18" x2="16.06" y2="1.08" width="0.1016" layer="21" curve="-90"/>
<wire x1="16.06" y1="1.08" x2="16.06" y2="0.62" width="0.1016" layer="21"/>
<wire x1="16.34" y1="1.1" x2="16.46" y2="1.22" width="0.1016" layer="21" curve="-90"/>
<wire x1="16.46" y1="1.22" x2="16.62" y2="1.22" width="0.1016" layer="21"/>
<wire x1="16.62" y1="1.22" x2="16.74" y2="1.1" width="0.1016" layer="21" curve="-90"/>
<wire x1="16.74" y1="1.1" x2="16.74" y2="0.92" width="0.1016" layer="21"/>
<wire x1="16.74" y1="0.92" x2="16.74" y2="0.7" width="0.1016" layer="21"/>
<wire x1="16.74" y1="0.7" x2="16.74" y2="0.6" width="0.1016" layer="21"/>
<wire x1="16.74" y1="0.6" x2="16.82" y2="0.52" width="0.1016" layer="21" curve="90"/>
<wire x1="16.74" y1="0.92" x2="16.38" y2="0.92" width="0.1016" layer="21"/>
<wire x1="16.38" y1="0.92" x2="16.28" y2="0.82" width="0.1016" layer="21" curve="90"/>
<wire x1="16.28" y1="0.82" x2="16.28" y2="0.68" width="0.1016" layer="21"/>
<wire x1="16.28" y1="0.68" x2="16.36" y2="0.6" width="0.1016" layer="21" curve="90"/>
<wire x1="16.36" y1="0.6" x2="16.64" y2="0.6" width="0.1016" layer="21"/>
<wire x1="16.64" y1="0.6" x2="16.74" y2="0.7" width="0.1016" layer="21" curve="90"/>
<wire x1="16.98" y1="1.5" x2="16.98" y2="0.62" width="0.1016" layer="21"/>
<wire x1="17" y1="0.74" x2="17.4" y2="1.16" width="0.1016" layer="21"/>
<wire x1="17.18" y1="0.92" x2="17.44" y2="0.64" width="0.1016" layer="21"/>
<wire x1="17.6" y1="0.94" x2="18.14" y2="0.94" width="0.1016" layer="21"/>
<wire x1="18.14" y1="0.94" x2="18.14" y2="0.96" width="0.1016" layer="21"/>
<wire x1="18.14" y1="0.96" x2="17.9" y2="1.2" width="0.1016" layer="21" curve="90"/>
<wire x1="17.9" y1="1.2" x2="17.86" y2="1.2" width="0.1016" layer="21"/>
<wire x1="17.86" y1="1.2" x2="17.6" y2="0.94" width="0.1016" layer="21" curve="90"/>
<wire x1="17.6" y1="0.94" x2="17.6" y2="0.84" width="0.1016" layer="21"/>
<wire x1="17.6" y1="0.84" x2="17.82" y2="0.62" width="0.1016" layer="21" curve="90"/>
<wire x1="17.82" y1="0.62" x2="18.12" y2="0.62" width="0.1016" layer="21"/>
</package>
</packages>
</library>
<library name="Seeed-Connector">
<packages>
<package name="H6-2.54">
<wire x1="-1.27" y1="7.62" x2="1.27" y2="7.62" width="0.127" layer="21"/>
<wire x1="1.27" y1="7.62" x2="1.27" y2="-7.62" width="0.127" layer="21"/>
<wire x1="1.27" y1="-7.62" x2="-1.27" y2="-7.62" width="0.127" layer="21"/>
<wire x1="-1.27" y1="-7.62" x2="-1.27" y2="7.62" width="0.127" layer="21"/>
<wire x1="-1.27" y1="7.62" x2="1.27" y2="7.62" width="0" layer="39"/>
<wire x1="1.27" y1="7.62" x2="1.27" y2="-7.62" width="0" layer="39"/>
<wire x1="1.27" y1="-7.62" x2="-1.27" y2="-7.62" width="0" layer="39"/>
<wire x1="-1.27" y1="-7.62" x2="-1.27" y2="7.62" width="0" layer="39"/>
<pad name="1" x="0" y="6.35" drill="0.889" diameter="1.651" shape="square"/>
<pad name="2" x="0" y="3.81" drill="0.889" diameter="1.651"/>
<pad name="3" x="0" y="1.27" drill="0.889" diameter="1.651"/>
<pad name="4" x="0" y="-1.27" drill="0.889" diameter="1.651"/>
<pad name="5" x="0" y="-3.81" drill="0.889" diameter="1.651"/>
<pad name="6" x="0" y="-6.35" drill="0.889" diameter="1.651"/>
<text x="2.54" y="-1.905" size="0.889" layer="27" ratio="11" rot="R90">>value</text>
<text x="-1.905" y="-1.905" size="0.889" layer="25" ratio="11" rot="R90">>name</text>
<text x="0.635" y="-2.54" size="0.635" layer="33" ratio="10" rot="R90">>name</text>
<rectangle x1="-1.27" y1="-7.62" x2="1.27" y2="7.62" layer="39"/>
</package>
</packages>
</library>
</libraries>
<attributes>
</attributes>
<variantdefs>
</variantdefs>
<classes>
<class number="0" name="default" width="0" drill="0">
</class>
<class number="1" name="vcc" width="0.254" drill="0">
</class>
</classes>
<designrules name="KhaThanh *">
<description language="de"><b>EAGLE Design Rules</b>
<p>
Die Standard-Design-Rules sind so gewählt, dass sie für
die meisten Anwendungen passen. Sollte ihre Platine
besondere Anforderungen haben, treffen Sie die erforderlichen
Einstellungen hier und speichern die Design Rules unter
einem neuen Namen ab.</description>
<description language="en"><b>EAGLE Design Rules</b>
<p>
The default Design Rules have been set to cover
a wide range of applications. Your particular design
may have different requirements, so please make the
necessary adjustments and save your customized
design rules under a new name.</description>
<param name="layerSetup" value="(1*16)"/>
<param name="mtCopper" value="0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm 0.035mm"/>
<param name="mtIsolate" value="1.5mm 0.15mm 0.2mm 0.15mm 0.2mm 0.15mm 0.2mm 0.15mm 0.2mm 0.15mm 0.2mm 0.15mm 0.2mm 0.15mm 0.2mm"/>
<param name="mdWireWire" value="10mil"/>
<param name="mdWirePad" value="16mil"/>
<param name="mdWireVia" value="10mil"/>
<param name="mdPadPad" value="10mil"/>
<param name="mdPadVia" value="10mil"/>
<param name="mdViaVia" value="10mil"/>
<param name="mdSmdPad" value="8mil"/>
<param name="mdSmdVia" value="8mil"/>
<param name="mdSmdSmd" value="8mil"/>
<param name="mdViaViaSameLayer" value="8mil"/>
<param name="mnLayersViaInSmd" value="2"/>
<param name="mdCopperDimension" value="20mil"/>
<param name="mdDrill" value="12mil"/>
<param name="mdSmdStop" value="0mil"/>
<param name="msWidth" value="10mil"/>
<param name="msDrill" value="24mil"/>
<param name="msMicroVia" value="9.99mm"/>
<param name="msBlindViaRatio" value="0.5"/>
<param name="rvPadTop" value="0.25"/>
<param name="rvPadInner" value="0.25"/>
<param name="rvPadBottom" value="0.25"/>
<param name="rvViaOuter" value="0.25"/>
<param name="rvViaInner" value="0.25"/>
<param name="rvMicroViaOuter" value="0.25"/>
<param name="rvMicroViaInner" value="0.25"/>
<param name="rlMinPadTop" value="13mil"/>
<param name="rlMaxPadTop" value="20mil"/>
<param name="rlMinPadInner" value="13mil"/>
<param name="rlMaxPadInner" value="20mil"/>
<param name="rlMinPadBottom" value="13mil"/>
<param name="rlMaxPadBottom" value="20mil"/>
<param name="rlMinViaOuter" value="10mil"/>
<param name="rlMaxViaOuter" value="20mil"/>
<param name="rlMinViaInner" value="10mil"/>
<param name="rlMaxViaInner" value="20mil"/>
<param name="rlMinMicroViaOuter" value="4mil"/>
<param name="rlMaxMicroViaOuter" value="20mil"/>
<param name="rlMinMicroViaInner" value="4mil"/>
<param name="rlMaxMicroViaInner" value="20mil"/>
<param name="psTop" value="-1"/>
<param name="psBottom" value="-1"/>
<param name="psFirst" value="-1"/>
<param name="psElongationLong" value="100"/>
<param name="psElongationOffset" value="100"/>
<param name="mvStopFrame" value="1"/>
<param name="mvCreamFrame" value="0"/>
<param name="mlMinStopFrame" value="4mil"/>
<param name="mlMaxStopFrame" value="4mil"/>
<param name="mlMinCreamFrame" value="0mil"/>
<param name="mlMaxCreamFrame" value="0mil"/>
<param name="mlViaStopLimit" value="25mil"/>
<param name="srRoundness" value="0"/>
<param name="srMinRoundness" value="0mil"/>
<param name="srMaxRoundness" value="0mil"/>
<param name="slThermalIsolate" value="10mil"/>
<param name="slThermalsForVias" value="0"/>
<param name="dpMaxLengthDifference" value="10mm"/>
<param name="dpGapFactor" value="2.5"/>
<param name="checkAngle" value="0"/>
<param name="checkFont" value="1"/>
<param name="checkRestrict" value="1"/>
<param name="checkStop" value="0"/>
<param name="checkValues" value="0"/>
<param name="checkNames" value="1"/>
<param name="checkWireStubs" value="1"/>
<param name="checkPolygonWidth" value="0"/>
<param name="useDiameter" value="13"/>
<param name="maxErrors" value="50"/>
</designrules>
<autorouter>
<pass name="Default">
<param name="RoutingGrid" value="50mil"/>
<param name="AutoGrid" value="1"/>
<param name="Efforts" value="0"/>
<param name="TopRouterVariant" value="1"/>
<param name="tpViaShape" value="round"/>
<param name="PrefDir.1" value="|"/>
<param name="PrefDir.2" value="0"/>
<param name="PrefDir.3" value="0"/>
<param name="PrefDir.4" value="0"/>
<param name="PrefDir.5" value="0"/>
<param name="PrefDir.6" value="0"/>
<param name="PrefDir.7" value="0"/>
<param name="PrefDir.8" value="0"/>
<param name="PrefDir.9" value="0"/>
<param name="PrefDir.10" value="0"/>
<param name="PrefDir.11" value="0"/>
<param name="PrefDir.12" value="0"/>
<param name="PrefDir.13" value="0"/>
<param name="PrefDir.14" value="0"/>
<param name="PrefDir.15" value="0"/>
<param name="PrefDir.16" value="-"/>
<param name="cfVia" value="8"/>
<param name="cfNonPref" value="5"/>
<param name="cfChangeDir" value="2"/>
<param name="cfOrthStep" value="2"/>
<param name="cfDiagStep" value="3"/>
<param name="cfExtdStep" value="0"/>
<param name="cfBonusStep" value="1"/>
<param name="cfMalusStep" value="1"/>
<param name="cfPadImpact" value="4"/>
<param name="cfSmdImpact" value="4"/>
<param name="cfBusImpact" value="0"/>
<param name="cfHugging" value="3"/>
<param name="cfAvoid" value="4"/>
<param name="cfPolygon" value="10"/>
<param name="cfBase.1" value="0"/>
<param name="cfBase.2" value="1"/>
<param name="cfBase.3" value="1"/>
<param name="cfBase.4" value="1"/>
<param name="cfBase.5" value="1"/>
<param name="cfBase.6" value="1"/>
<param name="cfBase.7" value="1"/>
<param name="cfBase.8" value="1"/>
<param name="cfBase.9" value="1"/>
<param name="cfBase.10" value="1"/>
<param name="cfBase.11" value="1"/>
<param name="cfBase.12" value="1"/>
<param name="cfBase.13" value="1"/>
<param name="cfBase.14" value="1"/>
<param name="cfBase.15" value="1"/>
<param name="cfBase.16" value="0"/>
<param name="mnVias" value="20"/>
<param name="mnSegments" value="9999"/>
<param name="mnExtdSteps" value="9999"/>
<param name="mnRipupLevel" value="10"/>
<param name="mnRipupSteps" value="100"/>
<param name="mnRipupTotal" value="100"/>
</pass>
<pass name="Follow-me" refer="Default" active="yes">
</pass>
<pass name="Busses" refer="Default" active="yes">
<param name="cfNonPref" value="4"/>
<param name="cfBusImpact" value="4"/>
<param name="cfHugging" value="0"/>
<param name="mnVias" value="0"/>
</pass>
<pass name="Route" refer="Default" active="yes">
</pass>
<pass name="Optimize1" refer="Default" active="yes">
<param name="cfVia" value="99"/>
<param name="cfExtdStep" value="10"/>
<param name="cfHugging" value="1"/>
<param name="mnExtdSteps" value="1"/>
<param name="mnRipupLevel" value="0"/>
</pass>
<pass name="Optimize2" refer="Optimize1" active="yes">
<param name="cfNonPref" value="0"/>
<param name="cfChangeDir" value="6"/>
<param name="cfExtdStep" value="0"/>
<param name="cfBonusStep" value="2"/>
<param name="cfMalusStep" value="2"/>
<param name="cfPadImpact" value="2"/>
<param name="cfSmdImpact" value="2"/>
<param name="cfHugging" value="0"/>
</pass>
<pass name="Optimize3" refer="Optimize2" active="yes">
<param name="cfChangeDir" value="8"/>
<param name="cfPadImpact" value="0"/>
<param name="cfSmdImpact" value="0"/>
</pass>
<pass name="Optimize4" refer="Optimize3" active="yes">
<param name="cfChangeDir" value="25"/>
</pass>
</autorouter>
<elements>
<element name="U$1" library="penn-engineering" package="KFH-M3" value="" x="3.175" y="33.147"/>
<element name="U$2" library="penn-engineering" package="KFH-M3" value="" x="3.302" y="2.54"/>
<element name="U$3" library="penn-engineering" package="KFH-M3" value="" x="55.88" y="32.893"/>
<element name="U$4" library="penn-engineering" package="KFH-M3" value="" x="55.88" y="2.54"/>
<element name="U$5" library="BluePill" package="BLUE_PILL" value="" x="18.288" y="17.526" rot="R90"/>
<element name="R3" library="SparkFun" package="0603" value="1.8K" x="18.034" y="15.24" smashed="yes" rot="R180">
<attribute name="NAME" x="18.542" y="14.097" size="0.8128" layer="25" font="vector" ratio="13" rot="R180"/>
<attribute name="VALUE" x="19.177" y="16.891" size="0.8128" layer="27" font="vector" ratio="14" rot="R180"/>
</element>
<element name="J1" library="Seeed-Connector" library_urn="urn:adsk.eagle:library:478" package="HW4-2.0" package3d_urn="urn:adsk.eagle:package:33111/1" value="4P-2.0" x="13.335" y="4.191" smashed="yes"/>
<element name="J2" library="Seeed-Connector" library_urn="urn:adsk.eagle:library:478" package="HW4-2.0" package3d_urn="urn:adsk.eagle:package:33111/1" value="4P-2.0" x="24.13" y="4.191" smashed="yes"/>
<element name="J3" library="Seeed-Connector" library_urn="urn:adsk.eagle:library:478" package="HW4-2.0" package3d_urn="urn:adsk.eagle:package:33111/1" value="4P-2.0" x="34.925" y="4.191" smashed="yes"/>
<element name="J6" library="Seeed-Connector" library_urn="urn:adsk.eagle:library:478" package="HW4-2.0" package3d_urn="urn:adsk.eagle:package:33111/1" value="4P-2.0" x="23.876" y="31.115" smashed="yes" rot="R180"/>
<element name="J7" library="Seeed-Connector" library_urn="urn:adsk.eagle:library:478" package="HW4-2.0" package3d_urn="urn:adsk.eagle:package:33111/1" value="4P-2.0" x="34.671" y="31.115" smashed="yes" rot="R180"/>
<element name="J8" library="Seeed-Connector" library_urn="urn:adsk.eagle:library:478" package="HW4-2.0" package3d_urn="urn:adsk.eagle:package:33111/1" value="4P-2.0" x="45.466" y="31.115" smashed="yes" rot="R180"/>
<element name="J4" library="Seeed-Connector" library_urn="urn:adsk.eagle:library:478" package="HW4-2.0" package3d_urn="urn:adsk.eagle:package:33111/1" value="4P-2.0" x="45.72" y="4.191" smashed="yes"/>
<element name="J5" library="Seeed-Connector" library_urn="urn:adsk.eagle:library:478" package="HW4-2.0" package3d_urn="urn:adsk.eagle:package:33111/1" value="4P-2.0" x="13.081" y="31.115" smashed="yes" rot="R180"/>
<element name="U$6" library="Anata-Symbols" package="BLOCKY_LOGO" value="" x="35.814" y="13.462" rot="MR0"/>
<element name="UART" library="Seeed-Connector" package="H6-2.54" value="YELLOW-6P-2.54" x="54.864" y="17.526" smashed="yes">
<attribute name="MPN" value="F185-1106A1BSYA3" x="54.864" y="17.526" size="1.778" layer="27" display="off"/>
<attribute name="NAME" x="57.785" y="26.797" size="1.27" layer="25" font="vector" ratio="13" rot="R180"/>
<attribute name="NAME" x="55.499" y="14.986" size="0.635" layer="33" ratio="10" rot="R90"/>
</element>
</elements>
<signals>
<signal name="VCC">
<contactref element="J1" pad="3"/>
<contactref element="J2" pad="3"/>
<contactref element="J3" pad="3"/>
<contactref element="J6" pad="3"/>
<contactref element="J7" pad="3"/>
<contactref element="J8" pad="3"/>
<contactref element="R3" pad="2"/>
<contactref element="U$5" pad="P$23"/>
<contactref element="J5" pad="3"/>
<contactref element="J4" pad="3"/>
<contactref element="UART" pad="6"/>
<wire x1="46.736" y1="4.826" x2="46.736" y2="4.318" width="0.4064" layer="16"/>
<wire x1="49.022" y1="7.112" x2="46.736" y2="4.826" width="0.4064" layer="16"/>
<wire x1="52.07" y1="7.112" x2="49.022" y2="7.112" width="0.4064" layer="16"/>
<wire x1="54.61" y1="9.652" x2="52.07" y2="7.112" width="0.4064" layer="16"/>
<wire x1="54.61" y1="10.922" x2="54.61" y2="9.652" width="0.4064" layer="16"/>
<wire x1="54.864" y1="11.176" x2="54.61" y2="10.922" width="0.4064" layer="16"/>
<wire x1="46.736" y1="4.318" x2="46.72" y2="4.191" width="0.254" layer="16"/>
<wire x1="14.478" y1="3.556" x2="14.478" y2="4.064" width="0.254" layer="16"/>
<wire x1="15.748" y1="2.286" x2="14.478" y2="3.556" width="0.4064" layer="16"/>
<wire x1="23.876" y1="2.286" x2="15.748" y2="2.286" width="0.4064" layer="16"/>
<wire x1="24.892" y1="3.302" x2="24.13" y2="2.54" width="0.4064" layer="16"/>
<wire x1="24.13" y1="2.54" x2="23.876" y2="2.286" width="0.4064" layer="16"/>
<wire x1="24.892" y1="4.064" x2="24.892" y2="3.302" width="0.4064" layer="16"/>
<wire x1="14.478" y1="4.064" x2="14.335" y2="4.191" width="0.254" layer="16"/>
<wire x1="24.892" y1="4.064" x2="25.13" y2="4.191" width="0.4064" layer="16"/>
<wire x1="35.814" y1="2.794" x2="35.814" y2="4.064" width="0.4064" layer="16"/>
<wire x1="35.306" y1="2.286" x2="35.56" y2="2.54" width="0.4064" layer="16"/>
<wire x1="35.56" y1="2.54" x2="35.814" y2="2.794" width="0.4064" layer="16"/>
<wire x1="24.384" y1="2.286" x2="35.306" y2="2.286" width="0.4064" layer="16"/>
<wire x1="24.13" y1="2.54" x2="24.384" y2="2.286" width="0.4064" layer="16"/>
<wire x1="35.814" y1="4.064" x2="35.925" y2="4.191" width="0.254" layer="16"/>
<wire x1="46.736" y1="2.794" x2="46.736" y2="4.064" width="0.4064" layer="16"/>
<wire x1="46.228" y1="2.286" x2="46.736" y2="2.794" width="0.4064" layer="16"/>
<wire x1="35.814" y1="2.286" x2="46.228" y2="2.286" width="0.4064" layer="16"/>
<wire x1="35.56" y1="2.54" x2="35.814" y2="2.286" width="0.4064" layer="16"/>
<wire x1="46.736" y1="4.064" x2="46.72" y2="4.191" width="0.4064" layer="16"/>
<wire x1="15.24" y1="15.24" x2="17.018" y2="15.24" width="0.4064" layer="1"/>
<wire x1="8.128" y1="25.146" x2="8.128" y2="23.622" width="0.254" layer="1"/>
<wire x1="17.018" y1="15.24" x2="17.184" y2="15.24" width="0.254" layer="1"/>
<wire x1="11.938" y1="30.48" x2="11.938" y2="30.988" width="0.4064" layer="16"/>
<wire x1="11.176" y1="29.718" x2="11.938" y2="30.48" width="0.4064" layer="16"/>
<wire x1="8.128" y1="25.146" x2="8.128" y2="26.416" width="0.4064" layer="16"/>
<wire x1="11.938" y1="30.988" x2="12.081" y2="31.115" width="0.254" layer="16"/>
<wire x1="22.86" y1="30.48" x2="22.86" y2="30.988" width="0.4064" layer="16"/>
<wire x1="21.59" y1="29.21" x2="22.86" y2="30.48" width="0.4064" layer="16"/>
<wire x1="11.684" y1="29.21" x2="21.59" y2="29.21" width="0.4064" layer="16"/>
<wire x1="11.176" y1="29.718" x2="11.684" y2="29.21" width="0.4064" layer="16"/>
<wire x1="22.86" y1="30.988" x2="22.876" y2="31.115" width="0.254" layer="16"/>
<wire x1="33.528" y1="31.75" x2="33.528" y2="31.242" width="0.4064" layer="16"/>
<wire x1="32.258" y1="33.02" x2="32.766" y2="32.512" width="0.4064" layer="16"/>
<wire x1="32.766" y1="32.512" x2="33.528" y2="31.75" width="0.4064" layer="16"/>
<wire x1="24.13" y1="33.02" x2="32.258" y2="33.02" width="0.4064" layer="16"/>
<wire x1="23.114" y1="32.004" x2="24.13" y2="33.02" width="0.4064" layer="16"/>
<wire x1="23.114" y1="31.242" x2="23.114" y2="32.004" width="0.4064" layer="16"/>
<wire x1="33.528" y1="31.242" x2="33.671" y2="31.115" width="0.254" layer="16"/>
<wire x1="23.114" y1="31.242" x2="22.876" y2="31.115" width="0.4064" layer="16"/>
<wire x1="44.45" y1="31.75" x2="44.45" y2="31.242" width="0.4064" layer="16"/>
<wire x1="43.18" y1="33.02" x2="44.45" y2="31.75" width="0.4064" layer="16"/>

repository: getblocky/oshw

repo_name: getblocky/oshw


text:
<wire x1="33.274" y1="33.02" x2="43.18" y2="33.02" width="0.4064" layer="16"/>
<wire x1="32.766" y1="32.512" x2="33.274" y2="33.02" width="0.4064" layer="16"/>
<wire x1="44.45" y1="31.242" x2="44.466" y2="31.115" width="0.254" layer="16"/>
<wire x1="14.986" y1="14.986" x2="14.986" y2="13.97" width="0.4064" layer="1"/>
<wire x1="15.24" y1="15.24" x2="14.986" y2="14.986" width="0.4064" layer="1"/>
<wire x1="14.986" y1="13.97" x2="14.986" y2="11.66120625" width="0.4064" layer="1"/>
<wire x1="14.986" y1="11.66120625" x2="14.4844" y2="11.15960625" width="0.4064" layer="1"/>
<wire x1="14.4844" y1="11.15960625" x2="14.4844" y2="8.65239375" width="0.4064" layer="1"/>
<wire x1="14.335" y1="4.191" x2="14.335" y2="4.683" width="0.254" layer="1"/>
<wire x1="14.335" y1="4.683" x2="14.478" y2="4.826" width="0.254" layer="1"/>
<wire x1="14.478" y1="4.826" x2="14.478" y2="11.15320625" width="0.4064" layer="1"/>
<wire x1="14.478" y1="11.15320625" x2="14.4844" y2="11.15960625" width="0.254" layer="1"/>
<wire x1="8.128" y1="22.352" x2="8.128" y2="25.146" width="0.4064" layer="1"/>
<wire x1="15.24" y1="15.24" x2="8.128" y2="22.352" width="0.4064" layer="1"/>
<wire x1="8.128" y1="25.146" x2="8.128" y2="26.67" width="0.4064" layer="16"/>
<wire x1="8.128" y1="26.67" x2="11.176" y2="29.718" width="0.4064" layer="16"/>
</signal>
<signal name="DGND">
<contactref element="J1" pad="4"/>
<contactref element="J2" pad="4"/>
<contactref element="J3" pad="4"/>
<contactref element="J6" pad="4"/>
<contactref element="J7" pad="4"/>
<contactref element="J8" pad="4"/>
<contactref element="U$5" pad="P$22"/>
<contactref element="U$5" pad="P$21"/>
<contactref element="J4" pad="4"/>
<contactref element="J5" pad="4"/>
<polygon width="0.254" layer="16">
<vertex x="0.254" y="36.068"/>
<vertex x="0.254" y="-0.508"/>
<vertex x="59.182" y="-0.508"/>
<vertex x="59.182" y="36.068"/>
</polygon>
<polygon width="0.254" layer="1" isolate="0.6096">
<vertex x="0.254" y="-0.508"/>
<vertex x="0.254" y="36.068"/>
<vertex x="59.182" y="36.068"/>
<vertex x="59.182" y="-0.508"/>
</polygon>
<contactref element="UART" pad="2"/>
<wire x1="18.796" y1="4.064" x2="16.51" y2="4.064" width="0.254" layer="1"/>
<wire x1="20.066" y1="2.794" x2="18.796" y2="4.064" width="0.254" layer="1"/>
<wire x1="25.654" y1="2.794" x2="20.066" y2="2.794" width="0.254" layer="1"/>
<wire x1="26.924" y1="4.064" x2="25.654" y2="2.794" width="0.254" layer="1"/>
<wire x1="16.51" y1="4.064" x2="16.335" y2="4.191" width="0.254" layer="1"/>
<wire x1="26.924" y1="4.064" x2="27.13" y2="4.191" width="0.254" layer="1"/>
<wire x1="40.386" y1="4.318" x2="38.1" y2="4.318" width="0.254" layer="1"/>
<wire x1="41.656" y1="5.588" x2="40.386" y2="4.318" width="0.254" layer="1"/>
<wire x1="47.244" y1="5.588" x2="41.656" y2="5.588" width="0.254" layer="1"/>
<wire x1="48.514" y1="4.318" x2="47.244" y2="5.588" width="0.254" layer="1"/>
<wire x1="38.1" y1="4.318" x2="37.925" y2="4.191" width="0.254" layer="1"/>
<wire x1="48.514" y1="4.318" x2="48.72" y2="4.191" width="0.254" layer="1"/>
<wire x1="29.718" y1="4.318" x2="27.178" y2="4.318" width="0.254" layer="1"/>
<wire x1="30.988" y1="5.588" x2="29.718" y2="4.318" width="0.254" layer="1"/>
<wire x1="36.576" y1="5.588" x2="30.988" y2="5.588" width="0.254" layer="1"/>
<wire x1="37.846" y1="4.318" x2="36.576" y2="5.588" width="0.254" layer="1"/>
<wire x1="27.178" y1="4.318" x2="27.13" y2="4.191" width="0.254" layer="1"/>
<wire x1="37.846" y1="4.318" x2="37.925" y2="4.191" width="0.254" layer="1"/>
<wire x1="5.588" y1="25.146" x2="3.048" y2="25.146" width="0.254" layer="1"/>
<wire x1="9.906" y1="29.464" x2="9.906" y2="30.988" width="0.254" layer="1"/>
<wire x1="5.588" y1="25.146" x2="9.906" y2="29.464" width="0.254" layer="1"/>
<wire x1="9.906" y1="30.988" x2="10.081" y2="31.115" width="0.254" layer="1"/>
<wire x1="22.352" y1="32.512" x2="21.082" y2="31.242" width="0.254" layer="1"/>
<wire x1="30.226" y1="32.512" x2="22.352" y2="32.512" width="0.254" layer="1"/>
<wire x1="31.496" y1="31.242" x2="30.226" y2="32.512" width="0.254" layer="1"/>
<wire x1="21.082" y1="31.242" x2="20.876" y2="31.115" width="0.254" layer="1"/>
<wire x1="31.496" y1="31.242" x2="31.671" y2="31.115" width="0.254" layer="1"/>
<wire x1="39.878" y1="31.242" x2="42.418" y2="31.242" width="0.254" layer="1"/>
<wire x1="38.608" y1="32.512" x2="39.878" y2="31.242" width="0.254" layer="1"/>
<wire x1="33.02" y1="32.512" x2="38.608" y2="32.512" width="0.254" layer="1"/>
<wire x1="31.75" y1="31.242" x2="33.02" y2="32.512" width="0.254" layer="1"/>
<wire x1="42.418" y1="31.242" x2="42.466" y2="31.115" width="0.254" layer="1"/>
<wire x1="31.75" y1="31.242" x2="31.671" y2="31.115" width="0.254" layer="1"/>
<wire x1="50.038" y1="21.336" x2="54.864" y2="21.336" width="0.254" layer="1"/>
<wire x1="47.498" y1="23.876" x2="50.038" y2="21.336" width="0.254" layer="1"/>
<wire x1="47.498" y1="26.416" x2="47.498" y2="23.876" width="0.254" layer="1"/>
<wire x1="44.196" y1="29.718" x2="47.498" y2="26.416" width="0.254" layer="1"/>
<wire x1="43.942" y1="29.718" x2="44.196" y2="29.718" width="0.254" layer="1"/>
<wire x1="42.672" y1="30.988" x2="43.942" y2="29.718" width="0.254" layer="1"/>
<wire x1="42.672" y1="30.988" x2="42.466" y2="31.115" width="0.254" layer="1"/>
<wire x1="11.43" y1="32.512" x2="10.16" y2="31.242" width="0.254" layer="1"/>
<wire x1="19.558" y1="32.512" x2="11.43" y2="32.512" width="0.254" layer="1"/>
<wire x1="20.828" y1="31.242" x2="19.558" y2="32.512" width="0.254" layer="1"/>
<wire x1="10.16" y1="31.242" x2="10.081" y2="31.115" width="0.254" layer="1"/>
<wire x1="20.828" y1="31.242" x2="20.876" y2="31.115" width="0.254" layer="1"/>
<wire x1="50.038" y1="4.318" x2="48.768" y2="4.318" width="0.254" layer="1"/>
<wire x1="56.388" y1="10.668" x2="50.038" y2="4.318" width="0.254" layer="1"/>
<wire x1="56.388" y1="19.812" x2="56.388" y2="10.668" width="0.254" layer="1"/>
<wire x1="54.864" y1="21.336" x2="56.388" y2="19.812" width="0.254" layer="1"/>
<wire x1="48.768" y1="4.318" x2="48.72" y2="4.191" width="0.254" layer="1"/>
</signal>
<signal name="PA9">
<contactref element="J1" pad="1"/>
<contactref element="U$5" pad="P$6"/>
<contactref element="UART" pad="4"/>
<wire x1="10.414" y1="5.334" x2="10.414" y2="4.318" width="0.254" layer="16"/>
<wire x1="12.192" y1="7.112" x2="10.414" y2="5.334" width="0.254" layer="16"/>
<wire x1="14.224" y1="7.112" x2="12.192" y2="7.112" width="0.254" layer="16"/>
<wire x1="15.748" y1="8.636" x2="14.224" y2="7.112" width="0.254" layer="16"/>
<wire x1="15.748" y1="9.906" x2="15.748" y2="8.636" width="0.254" layer="16"/>
<wire x1="10.414" y1="4.318" x2="10.335" y2="4.191" width="0.254" layer="16"/>
<wire x1="55.372" y1="15.748" x2="54.864" y2="16.256" width="0.254" layer="16"/>
<wire x1="55.626" y1="15.748" x2="55.372" y2="15.748" width="0.254" layer="16"/>
<wire x1="56.896" y1="14.478" x2="55.626" y2="15.748" width="0.254" layer="16"/>
<wire x1="56.896" y1="9.906" x2="56.896" y2="14.478" width="0.254" layer="16"/>
<wire x1="10.16" y1="3.302" x2="11.557" y2="1.905" width="0.254" layer="16"/>
<wire x1="11.557" y1="1.905" x2="11.684" y2="1.778" width="0.254" layer="16"/>
<wire x1="10.16" y1="4.064" x2="10.16" y2="3.302" width="0.254" layer="16"/>
<wire x1="10.16" y1="4.064" x2="10.335" y2="4.191" width="0.254" layer="16"/>
<wire x1="11.557" y1="1.905" x2="12.446" y2="1.016" width="0.254" layer="16"/>
<wire x1="12.446" y1="1.016" x2="48.006" y2="1.016" width="0.254" layer="16"/>
<wire x1="48.006" y1="1.016" x2="56.896" y2="9.906" width="0.254" layer="16"/>
</signal>
<signal name="PA10">
<contactref element="J1" pad="2"/>
<contactref element="U$5" pad="P$7"/>
<contactref element="UART" pad="3"/>
<wire x1="12.446" y1="4.572" x2="12.446" y2="4.318" width="0.254" layer="16"/>
<wire x1="14.986" y1="7.112" x2="12.446" y2="4.572" width="0.254" layer="16"/>
<wire x1="16.764" y1="7.112" x2="14.986" y2="7.112" width="0.254" layer="16"/>
<wire x1="18.288" y1="8.636" x2="16.764" y2="7.112" width="0.254" layer="16"/>
<wire x1="18.288" y1="9.906" x2="18.288" y2="8.636" width="0.254" layer="16"/>
<wire x1="12.446" y1="4.318" x2="12.335" y2="4.191" width="0.254" layer="16"/>
<wire x1="53.086" y1="18.796" x2="54.864" y2="18.796" width="0.254" layer="1"/>
<wire x1="49.53" y1="15.24" x2="53.086" y2="18.796" width="0.254" layer="1"/>
<wire x1="22.352" y1="15.24" x2="49.53" y2="15.24" width="0.254" layer="1"/>
<wire x1="18.288" y1="11.176" x2="22.352" y2="15.24" width="0.254" layer="16"/>
<wire x1="18.288" y1="9.906" x2="18.288" y2="11.176" width="0.254" layer="16"/>
<via x="22.352" y="15.24" extent="1-16" drill="0.6096"/>
</signal>
<signal name="PB6">
<contactref element="J2" pad="1"/>
<contactref element="U$5" pad="P$14"/>
<wire x1="21.336" y1="5.588" x2="21.336" y2="4.318" width="0.254" layer="16"/>
<wire x1="22.86" y1="7.112" x2="21.336" y2="5.588" width="0.254" layer="16"/>
<wire x1="33.02" y1="7.112" x2="22.86" y2="7.112" width="0.254" layer="16"/>
<wire x1="33.528" y1="7.62" x2="33.02" y2="7.112" width="0.254" layer="16"/>
<wire x1="35.052" y1="7.62" x2="33.528" y2="7.62" width="0.254" layer="16"/>
<wire x1="36.068" y1="8.636" x2="35.052" y2="7.62" width="0.254" layer="16"/>
<wire x1="36.068" y1="9.906" x2="36.068" y2="8.636" width="0.254" layer="16"/>
<wire x1="21.336" y1="4.318" x2="21.13" y2="4.191" width="0.254" layer="16"/>
</signal>
<signal name="PB7">
<contactref element="J2" pad="2"/>
<contactref element="U$5" pad="P$15"/>
<wire x1="23.114" y1="5.08" x2="23.114" y2="4.318" width="0.254" layer="1"/>
<wire x1="23.368" y1="5.334" x2="23.114" y2="5.08" width="0.254" layer="1"/>
<wire x1="23.368" y1="6.35" x2="23.368" y2="5.334" width="0.254" layer="1"/>
<wire x1="23.622" y1="6.604" x2="23.368" y2="6.35" width="0.254" layer="1"/>
<wire x1="36.83" y1="6.604" x2="23.622" y2="6.604" width="0.254" layer="1"/>
<wire x1="38.608" y1="8.382" x2="36.83" y2="6.604" width="0.254" layer="1"/>
<wire x1="38.608" y1="9.906" x2="38.608" y2="8.382" width="0.254" layer="1"/>
<wire x1="23.114" y1="4.318" x2="23.13" y2="4.191" width="0.254" layer="1"/>
</signal>
<signal name="PB8">
<contactref element="J3" pad="1"/>
<contactref element="U$5" pad="P$16"/>
<wire x1="32.004" y1="5.334" x2="32.004" y2="4.318" width="0.254" layer="16"/>
<wire x1="33.782" y1="7.112" x2="32.004" y2="5.334" width="0.254" layer="16"/>
<wire x1="39.624" y1="7.112" x2="33.782" y2="7.112" width="0.254" layer="16"/>
<wire x1="41.148" y1="8.636" x2="39.624" y2="7.112" width="0.254" layer="16"/>
<wire x1="41.148" y1="9.906" x2="41.148" y2="8.636" width="0.254" layer="16"/>
<wire x1="32.004" y1="4.318" x2="31.925" y2="4.191" width="0.254" layer="16"/>
</signal>
<signal name="PB9">
<contactref element="J3" pad="2"/>
<contactref element="U$5" pad="P$17"/>
<wire x1="34.036" y1="4.572" x2="34.036" y2="4.318" width="0.254" layer="16"/>
<wire x1="36.068" y1="6.604" x2="34.036" y2="4.572" width="0.254" layer="16"/>
<wire x1="41.656" y1="6.604" x2="36.068" y2="6.604" width="0.254" layer="16"/>
<wire x1="43.688" y1="8.636" x2="41.656" y2="6.604" width="0.254" layer="16"/>
<wire x1="43.688" y1="9.906" x2="43.688" y2="8.636" width="0.254" layer="16"/>
<wire x1="34.036" y1="4.318" x2="33.925" y2="4.191" width="0.254" layer="16"/>
</signal>
<signal name="PB10">
<contactref element="J4" pad="1"/>
<contactref element="U$5" pad="P$26"/>
<wire x1="42.926" y1="6.604" x2="42.926" y2="4.318" width="0.254" layer="16"/>
<wire x1="44.958" y1="8.636" x2="42.926" y2="6.604" width="0.254" layer="16"/>
<wire x1="44.958" y1="11.176" x2="44.958" y2="8.636" width="0.254" layer="16"/>
<wire x1="33.02" y1="23.114" x2="44.958" y2="11.176" width="0.254" layer="16"/>
<wire x1="17.78" y1="23.114" x2="33.02" y2="23.114" width="0.254" layer="16"/>
<wire x1="15.748" y1="25.146" x2="17.78" y2="23.114" width="0.254" layer="16"/>
<wire x1="42.926" y1="4.318" x2="42.72" y2="4.191" width="0.254" layer="16"/>
</signal>
<signal name="PB11">
<contactref element="J4" pad="2"/>
<contactref element="U$5" pad="P$25"/>
<wire x1="13.208" y1="25.146" x2="17.018" y2="21.336" width="0.254" layer="16"/>
<wire x1="17.018" y1="21.336" x2="29.464" y2="21.336" width="0.254" layer="16"/>
<wire x1="29.464" y1="21.336" x2="37.084" y2="13.716" width="0.254" layer="16"/>
<via x="38.1" y="13.716" extent="1-16" drill="0.6096"/>
<wire x1="42.39520625" y1="13.716" x2="44.958" y2="11.15320625" width="0.254" layer="1"/>
<wire x1="38.1" y1="13.716" x2="42.39520625" y2="13.716" width="0.254" layer="1"/>
<via x="44.958" y="6.858" extent="1-16" drill="0.6096"/>
<wire x1="44.958" y1="6.858" x2="44.958" y2="4.429" width="0.254" layer="16"/>
<wire x1="44.958" y1="4.429" x2="44.72" y2="4.191" width="0.254" layer="16"/>
<wire x1="37.084" y1="13.716" x2="38.1" y2="13.716" width="0.254" layer="16"/>
<wire x1="44.958" y1="11.15320625" x2="44.958" y2="6.858" width="0.254" layer="1"/>
</signal>
<signal name="PA0">
<contactref element="J8" pad="1"/>
<contactref element="U$5" pad="P$36"/>
<wire x1="41.148" y1="26.416" x2="41.148" y2="25.146" width="0.254" layer="16"/>
<wire x1="43.942" y1="29.21" x2="41.148" y2="26.416" width="0.254" layer="16"/>
<wire x1="47.752" y1="29.21" x2="43.942" y2="29.21" width="0.254" layer="16"/>
<wire x1="48.26" y1="29.718" x2="47.752" y2="29.21" width="0.254" layer="16"/>
<wire x1="48.26" y1="30.988" x2="48.26" y2="29.718" width="0.254" layer="16"/>
<wire x1="48.26" y1="30.988" x2="48.466" y2="31.115" width="0.254" layer="16"/>
</signal>
<signal name="PA1">
<contactref element="J8" pad="2"/>
<contactref element="U$5" pad="P$35"/>
<wire x1="38.608" y1="26.416" x2="38.608" y2="25.146" width="0.254" layer="16"/>
<wire x1="41.656" y1="29.464" x2="38.608" y2="26.416" width="0.254" layer="16"/>
<wire x1="43.434" y1="29.464" x2="41.656" y2="29.464" width="0.254" layer="16"/>
<wire x1="43.688" y1="29.718" x2="43.434" y2="29.464" width="0.254" layer="16"/>
<wire x1="45.212" y1="29.718" x2="43.688" y2="29.718" width="0.254" layer="16"/>
<wire x1="46.482" y1="30.988" x2="45.212" y2="29.718" width="0.254" layer="16"/>
<wire x1="46.482" y1="30.988" x2="46.466" y2="31.115" width="0.254" layer="16"/>
</signal>
<signal name="PA2">
<contactref element="J7" pad="1"/>
<contactref element="U$5" pad="P$34"/>
<wire x1="36.068" y1="26.416" x2="36.068" y2="25.146" width="0.254" layer="16"/>
<wire x1="37.338" y1="27.686" x2="36.068" y2="26.416" width="0.254" layer="16"/>
<wire x1="37.338" y1="30.734" x2="37.338" y2="27.686" width="0.254" layer="16"/>
<wire x1="37.592" y1="30.988" x2="37.338" y2="30.734" width="0.254" layer="16"/>
<wire x1="37.592" y1="30.988" x2="37.671" y2="31.115" width="0.254" layer="16"/>
</signal>
<signal name="PA3">
<contactref element="J7" pad="2"/>
<contactref element="U$5" pad="P$33"/>
<wire x1="33.528" y1="26.416" x2="33.528" y2="25.146" width="0.254" layer="16"/>
<wire x1="34.798" y1="27.686" x2="33.528" y2="26.416" width="0.254" layer="16"/>
<wire x1="34.798" y1="29.464" x2="34.798" y2="27.686" width="0.254" layer="16"/>
<wire x1="35.56" y1="30.226" x2="34.798" y2="29.464" width="0.254" layer="16"/>
<wire x1="35.56" y1="30.988" x2="35.56" y2="30.226" width="0.254" layer="16"/>
<wire x1="35.56" y1="30.988" x2="35.671" y2="31.115" width="0.254" layer="16"/>
</signal>
<signal name="PA4">
<contactref element="J6" pad="1"/>
<contactref element="U$5" pad="P$32"/>
<wire x1="26.924" y1="29.972" x2="26.924" y2="30.988" width="0.254" layer="16"/>
<wire x1="30.988" y1="25.908" x2="26.924" y2="29.972" width="0.254" layer="16"/>
<wire x1="30.988" y1="25.146" x2="30.988" y2="25.908" width="0.254" layer="16"/>
<wire x1="26.924" y1="30.988" x2="26.876" y2="31.115" width="0.254" layer="16"/>
</signal>
<signal name="PA5">
<contactref element="J6" pad="2"/>
<contactref element="U$5" pad="P$31"/>
<wire x1="28.448" y1="26.416" x2="28.448" y2="25.146" width="0.254" layer="16"/>
<wire x1="24.638" y1="30.226" x2="28.448" y2="26.416" width="0.254" layer="16"/>
<wire x1="24.638" y1="30.988" x2="24.638" y2="30.226" width="0.254" layer="16"/>
<wire x1="24.638" y1="30.988" x2="24.876" y2="31.115" width="0.254" layer="16"/>
</signal>
<signal name="PA6">
<contactref element="J5" pad="1"/>
<contactref element="U$5" pad="P$30"/>
<wire x1="18.034" y1="30.988" x2="16.256" y2="30.988" width="0.254" layer="1"/>
<wire x1="20.066" y1="28.956" x2="18.034" y2="30.988" width="0.254" layer="1"/>
<wire x1="25.908" y1="25.146" x2="25.908" y2="26.67" width="0.254" layer="1"/>
<wire x1="16.256" y1="30.988" x2="16.081" y2="31.115" width="0.254" layer="1"/>
<wire x1="25.908" y1="26.67" x2="23.622" y2="28.956" width="0.254" layer="1"/>
<wire x1="23.622" y1="28.956" x2="20.066" y2="28.956" width="0.254" layer="1"/>
</signal>
<signal name="PA7">
<contactref element="J5" pad="2"/>
<contactref element="U$5" pad="P$29"/>
<wire x1="23.368" y1="26.67" x2="21.59" y2="28.448" width="0.254" layer="1"/>
<wire x1="23.368" y1="25.146" x2="23.368" y2="26.67" width="0.254" layer="1"/>
<wire x1="15.748" y1="28.448" x2="14.081" y2="30.115" width="0.254" layer="1"/>
<wire x1="14.081" y1="30.115" x2="14.081" y2="31.115" width="0.254" layer="1"/>
<wire x1="21.59" y1="28.448" x2="15.748" y2="28.448" width="0.254" layer="1"/>
</signal>
<signal name="PA12">
<contactref element="U$5" pad="P$9"/>
<contactref element="R3" pad="1"/>
<wire x1="19.05" y1="15.24" x2="19.812" y2="15.24" width="0.254" layer="1"/>
<wire x1="19.05" y1="15.24" x2="18.884" y2="15.24" width="0.254" layer="1"/>
<wire x1="19.812" y1="15.24" x2="23.368" y2="11.684" width="0.254" layer="1"/>
<wire x1="23.368" y1="11.684" x2="23.368" y2="9.906" width="0.254" layer="1"/>
</signal>
<signal name="5V">
<contactref element="UART" pad="1"/>
<contactref element="U$5" pad="P$18"/>
<wire x1="46.228" y1="11.176" x2="46.228" y2="9.906" width="0.4064" layer="16"/>
<wire x1="52.832" y1="17.78" x2="46.228" y2="11.176" width="0.4064" layer="16"/>
<wire x1="52.832" y1="22.86" x2="52.832" y2="17.78" width="0.4064" layer="16"/>
<wire x1="53.848" y1="23.876" x2="52.832" y2="22.86" width="0.4064" layer="16"/>
<wire x1="54.864" y1="23.876" x2="53.848" y2="23.876" width="0.4064" layer="16"/>
</signal>
<signal name="NC">
<contactref element="UART" pad="5"/>
</signal>
</signals>
<mfgpreviewcolors>
<mfgpreviewcolor name="soldermaskcolor" color="0xC8008000"/>
<mfgpreviewcolor name="silkscreencolor" color="0xFFFEFEFE"/>
<mfgpreviewcolor name="backgroundcolor" color="0xFF282828"/>
<mfgpreviewcolor name="coppercolor" color="0xFFFFBF00"/>
<mfgpreviewcolor name="substratecolor" color="0xFF786E46"/>
</mfgpreviewcolors>
</board>
</drawing>
<compatibility>
<note version="6.3" minversion="6.2.2" severity="warning">
Since Version 6.2.2 text objects can contain more than one line,
which will not be processed correctly with this version.
</note>
<note version="8.2" severity="warning">
Since Version 8.2, EAGLE supports online libraries. The ids
of those online libraries will not be understood (or retained)
with this version.
</note>
<note version="8.3" severity="warning">
Since Version 8.3, EAGLE supports URNs for individual library
assets (packages, symbols, and devices). The URNs of those assets
will not be understood (or retained) with this version.
</note>
<note version="8.3" severity="warning">
Since Version 8.3, EAGLE supports the association of 3D packages
with devices in libraries, schematics, and board files. Those 3D
packages will not be understood (or retained) with this version.
</note>
</compatibility>
</eagle>

license: MIT

license_type: permissive

branch_name: refs/heads/master

extension: brd


text:
// ----------------------------------------------------
// Timer.cpp
// Body for CPU Tick Timer class
// ----------------------------------------------------

#include "Timer.h"

// ---------------------------------------------
Timer::Timer()
	: running(false)
	, startedAt(0)
	, stoppedAt(0)
{
	Start();
}

// ---------------------------------------------
void Timer::Start()
{
	running = true;
	startedAt = SDL_GetTicks();
}

// ---------------------------------------------
void Timer::Stop()
{
	running = false;
	stoppedAt = SDL_GetTicks();
}

// ---------------------------------------------
Uint32 Timer::Read()
{
	if(running == true)
	{
		return SDL_GetTicks() - startedAt;
	}
	else
	{
		return stoppedAt - startedAt;
	}
}

repository: paupedra/SematEngine

repo_name: paupedra/SematEngine

extension: cpp


text:
SUMMARY = "Backports and enhancements for the contextlib module"
DESCRIPTION = "contextlib2 is a backport of the standard library’s contextlib \
module to earlier Python versions."
HOMEPAGE = "http://contextlib2.readthedocs.org/"
SECTION = "devel/python"

LICENSE = "PSF-2.0"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=43d1c7827e8fad6454b553caf0e1d734"

SRC_URI[md5sum] = "d03a631073b40073b5c41364ad8f5979"
SRC_URI[sha256sum] = "7197aa736777caac513dbd800944c209a49765bf1979b12b037dce0277077ed3"

inherit pypi setuptools

BBCLASSEXTEND = "native nativesdk"

SKIP_RECIPE[python-contextlib2] ?= "${@bb.utils.contains('I_SWEAR_TO_MIGRATE_TO_PYTHON3', 'yes', '', 'python2 is out of support for long time, read https://www.python.org/doc/sunset-python-2/ https://python3statement.org/ and if you really have to temporarily use this, then set I_SWEAR_TO_MIGRATE_TO_PYTHON3 to "yes"', d)}"

branch_name: refs/heads/jansa/master

gha_license_id: MIT

gha_language: BitBake

extension: bb


text:
package db

import (
	"database/sql"
	"github.com/didi/gendry/builder"
	"github.com/didi/gendry/manager"
	"github.com/didi/gendry/scanner"
	_ "github.com/go-sql-driver/mysql"
	"github.com/spf13/viper"
	"log"
	"time"
	"tinyurl/model"
)

var db *sql.DB

func init() {
	host := viper.GetString("database.host")
	port := viper.GetInt("database.port")
	user := viper.GetString("database.user")
	password := viper.GetString("database.password")
	dbName := viper.GetString("database.dbname")
	db1, err := manager.
		New(dbName, user, password, host).
		Set(
			manager.SetCharset("utf8"),
			manager.SetAllowCleartextPasswords(true),
			manager.SetInterpolateParams(true),
			manager.SetTimeout(1*time.Second),
			manager.SetReadTimeout(1*time.Second),
			manager.SetParseTime(true),
		).Port(port).Open(true)
	if err != nil {
		log.Fatalln(err)
	}
	db = db1
	db.SetConnMaxLifetime(time.Minute * 3)
	db.SetMaxOpenConns(5)
	db.SetMaxIdleConns(5)
}

func CreateLink(urlMap *model.TinyUrlMap) error {
	table := "tinyurl_maps"
	var data []map[string]interface{}
	data = append(data, map[string]interface{}{
		"origin_url":   urlMap.OriginUrl,
		"short_url":    urlMap.ShortUrl,
		"created_time": urlMap.CreatedTime,
	})

	cond, vals, err := builder.BuildInsert(table, data)
	if err != nil {
		log.Println(err)
		return err
	}

	result, err := db.Exec(cond, vals...)
	log.Println(result)

	if err != nil {
		log.Println(err)
		return err
	}

	return nil
}

func GetLinkByShort(shortUrl string) *model.TinyUrlMap {
	where := map[string]interface{}{
		"short_url": shortUrl,
	}
	table := "tinyurl_maps"

	selectFields := []string{"id", "origin_url", "short_url", "created_time"}
	cond, vals, err := builder.BuildSelect(table, where, selectFields)
	if err != nil {
		log.Println(err)
		return nil
	}

	rows, err := db.Query(cond, vals...)
	if err != nil {
		log.Println("err :", err)
		return nil
	}

	var urlMap model.TinyUrlMap
	err = scanner.ScanClose(rows, &urlMap)
	if err != nil {
		log.Println(err)
		return nil

	}

	return &urlMap
}

repository: rongtou/tinyurl

repo_name: rongtou/tinyurl

branch_name: refs/heads/main

extension: go


text:
package problems

import "net/http"

type ValidationProblem struct {
	BasicProblem
	Reasons []ValidationReason `json:"reasons,omitempty"`
}

func Validation(reasons ...ValidationReason) ValidationProblem {
	return ValidationProblem{
		BasicProblem: BasicProblem{
			Type:   "/problems/invalid-request",
			Title:  "Your request parameters didn't validate.",
			Status: http.StatusBadRequest,
			Detail: "See the reasons field for more details.",
		},
		Reasons: reasons,
	}
}

func (problem ValidationProblem) TrimEmpty() error {
	if len(problem.Reasons) == 0 {
		return nil
	}

	return problem
}

func (problem *ValidationProblem) Errors() (errors []error) {
	for _, reason := range problem.Reasons {
		errors = append(errors, reason.Cause)
	}

	return errors
}

func (problem *ValidationProblem) Append(reasons ...ValidationReason) {
	problem.Reasons = append(problem.Reasons, reasons...)
}

func (problem *ValidationProblem) AppendWithPrefix(prefix string, reasons ...ValidationReason) {
	for _, subProblem := range reasons {
		if prefix != "" && subProblem.Name != "" {
			subProblem.Name = prefix + "." + subProblem.Name
		} else if prefix != "" {
			subProblem.Name = prefix
		}

		problem.Reasons = append(problem.Reasons, subProblem)
	}
}

func (problem *ValidationProblem) Merge(prefix string, err error) {
	if err == nil {
		return
	}

	if otherProblem, ok := err.(ValidationProblem); !ok {
		problem.AppendWithPrefix(prefix, ValidationReason{
			Reason: err.Error(),
			Cause:  err,
		})
	} else {
		problem.AppendWithPrefix(prefix, otherProblem.Reasons...)
	}
}

type ValidationReason struct {
	Name   string `json:"name"`
	Reason string `json:"reason"`
	Cause  error  `json:"-"`
}

func (err ValidationReason) Error() string {
	if err.Name != "" {
		return err.Name + " " + err.Reason
	}

	return err.Reason
}

repository: trivedisorabh/go-rest-utility

repo_name: trivedisorabh/go-rest-utility