If you are soldering the board directly, use standard 0.1" male headers. If you want it removable, use female socket headers in your design. Arduino Docs Key Pins for Schematic Design
An EAGLE library is a collection of "parts." Each part consists of three things:
To use the Pro Micro in Autodesk Eagle, you need a .lbr file that contains the device's schematic symbol, PCB footprint (land pattern), and 3D model (optional). Where to Download arduino pro micro eagle library
| Component | Purpose | |----------------|-------------------------------------------------------------------------| | | Schematic representation (pins, labels, function) | | Footprint | PCB layout pattern (pads, holes, silkscreen, dimensions) | | Device | Binds symbol to footprint, defines package variants (e.g., SMD, through-hole) |
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE eagle SYSTEM "eagle.dtd"> <eagle version="9.6.2"> <drawing> <settings> <setting alwaysvectorfont="no"/> <setting verticaltext="up"/> </settings> <grid distance="0.1" unitdist="inch" unit="inch" style="lines" multiple="1" display="no" altdistance="0.01" altunitdist="inch" altunit="inch"/> <layers> <layer number="1" name="Top" color="4" 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="24" 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="no" active="yes"/> <layer number="30" name="bStop" color="7" fill="6" visible="no" active="yes"/> <layer number="31" name="tCream" color="7" fill="4" visible="no" active="yes"/> <layer number="32" name="bCream" color="7" fill="5" visible="no" active="yes"/> <layer number="33" name="tFinish" color="6" fill="3" visible="no" active="yes"/> <layer number="34" name="bFinish" color="6" fill="6" visible="no" active="yes"/> <layer number="35" name="tGlue" color="7" fill="4" visible="no" active="yes"/> <layer number="36" name="bGlue" color="7" fill="5" visible="no" active="yes"/> <layer number="37" name="tTest" color="7" fill="1" visible="no" active="yes"/> <layer number="38" name="bTest" color="7" fill="1" visible="no" 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="no" active="yes"/> <layer number="45" name="Holes" color="7" fill="1" visible="no" active="yes"/> <layer number="46" name="Milling" color="3" fill="1" visible="no" active="yes"/> <layer number="47" name="Measures" color="7" fill="1" visible="no" 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="51" name="tDocu" color="7" fill="1" visible="yes" active="yes"/> <layer number="52" name="bDocu" color="7" fill="1" visible="yes" active="yes"/> <layer number="88" name="SimResults" color="9" fill="1" visible="yes" active="yes"/> <layer number="89" name="SimProbes" color="9" fill="1" visible="yes" active="yes"/> <layer number="90" name="Modules" color="5" fill="1" visible="yes" active="yes"/> <layer number="91" name="Nets" color="2" fill="1" visible="yes" active="yes"/> <layer number="92" name="Busses" color="1" fill="1" visible="yes" active="yes"/> <layer number="93" name="Pins" color="2" fill="1" visible="no" active="yes"/> <layer number="94" name="Symbols" color="4" fill="1" visible="yes" active="yes"/> <layer number="95" name="Names" color="7" fill="1" visible="yes" active="yes"/> <layer number="96" name="Values" color="7" fill="1" visible="yes" active="yes"/> <layer number="97" name="Info" color="7" fill="1" visible="yes" active="yes"/> <layer number="98" name="Guide" color="6" fill="1" visible="yes" active="yes"/> </layers> <library> <description>Arduino Pro Micro (Sparkfun Compatible)</description> <packages> <package name="ARDUINO_PRO_MICRO"> <description>Arduino Pro Micro Footprint</description> <wire x1="-8.89" y1="16.51" x2="8.89" y2="16.51" width="0.127" layer="21"/> <wire x1="8.89" y1="16.51" x2="8.89" y2="-16.51" width="0.127" layer="21"/> <wire x1="8.89" y1="-16.51" x2="-8.89" y2="-16.51" width="0.127" layer="21"/> <wire x1="-8.89" y1="-16.51" x2="-8.89" y2="16.51" width="0.127" layer="21"/> <pad name="1" x="-7.62" y="12.7" drill="1.016" diameter="1.8796"/> <pad name="2" x="-7.62" y="10.16" drill="1.016" diameter="1.8796"/> <pad name="3" x="-7.62" y="7.62" drill="1.016" diameter="1.8796"/> <pad name="4" x="-7.62" y="5.08" drill="1.016" diameter="1.8796"/> <pad name="5" x="-7.62" y="2.54" drill="1.016" diameter="1.8796"/> <pad name="6" x="-7.62" y="0" drill="1.016" diameter="1.8796"/> <pad name="7" x="-7.62" y="-2.54" drill="1.016" diameter="1.8796"/> <pad name="8" x="-7.62" y="-5.08" drill="1.016" diameter="1.8796"/> <pad name="9" x="-7.62" y="-7.62" drill="1.016" diameter="1.8796"/> <pad name="10" x="-7.62" y="-10.16" drill="1.016" diameter="1.8796"/> <pad name="11" x="-7.62" y="-12.7" drill="1.016" diameter="1.8796"/> <pad name="12" x="-7.62" y="-15.24" drill="1.016" diameter="1.8796"/> <pad name="13" x="7.62" y="-15.24" drill="1.016" diameter="1.8796"/> <pad name="14" x="7.62" y="-12.7" drill="1.016" diameter="1.8796"/> <pad name="15" x="7.62" y="-10.16" drill="1.016" diameter="1.8796"/> <pad name="16" x="7.62" y="-7.62" drill="1.016" diameter="1.8796"/> <pad name="17" x="7.62" y="-5.08" drill="1.016" diameter="1.8796"/> <pad name="18" x="7.62" y="-2.54" drill="1.016" diameter="1.8796"/> <pad name="19" x="7.62" y="0" drill="1.016" diameter="1.8796"/> <pad name="20" x="7.62" y="2.54" drill="1.016" diameter="1.8796"/> <pad name="21" x="7.62" y="5.08" drill="1.016" diameter="1.8796"/> <pad name="22" x="7.62" y="7.62" drill="1.016" diameter="1.8796"/> <pad name="23" x="7.62" y="10.16" drill="1.016" diameter="1.8796"/> <pad name="24" x="7.62" y="12.7" drill="1.016" diameter="1.8796"/> <text x="-3.81" y="13.97" size="1.27" layer="25">>NAME</text> <text x="-3.81" y="-16.51" size="1.27" layer="27">>VALUE</text> </package> </packages> <symbols> <symbol name="ARDUINO_PRO_MICRO"> <description>Symbol for Arduino Pro Micro</description> <pin name="TXO" x="-12.7" y="15.24" length="middle"/> <pin name="RXI" x="-12.7" y="12.7" length="middle"/> <pin name="GND@1" x="-12.7" y="10.16" length="middle"/> <pin name="GND@2" x="-12.7" y="7.62" length="middle"/> <pin name="2" x="-12.7" y="5.08" length="middle"/> <pin name="3" x="-12.7" y="2.54" length="middle"/> <pin name="4" x="-12.7" y="0" length="middle"/> <pin name="5" x="-12.7" y="-2.54" length="middle"/> <pin name="6" x="-12.7" y="-5.08" length="middle"/> <pin name="7" x="-12.7" y="-7.62" length="middle"/> <pin name="8" x="-12.7" y="-10.16" length="middle"/> <pin name="9" x="-12.7" y="-12.7" length="middle"/> <pin name="10" x="12.7" y="-12.7" length="middle" rot="R180"/> <pin name="16" x="12.7" y="-10.16" length="middle" rot="R180"/> <pin name="14" x="12.7" y="-7.62" length="middle" rot="R180"/> <pin name="15" x="12.7" y="-5.08" length="middle" rot="R180"/> <pin name="A0" x="12.7" y="-2.54" length="middle" rot="R180"/> <pin name="A1" x="12.7" y="0" length="middle" rot="R180"/> <pin name="A2" x="12.7" y="2.54" length="middle" rot="R180"/> <pin name="A3" x="12.7" y="5.08" length="middle" rot="R180"/> <pin name="VCC" x="12.7" y="7.62" length="middle" rot="R180"/> <pin name="RESET" x="12.7" y="10.16" length="middle" rot="R180"/> <pin name="GND@3" x="12.7" y="12.7" length="middle" rot="R180"/> <pin name="RAW" x="12.7" y="15.24" length="middle" rot="R180"/> <wire x1="-7.62" y1="17.78" x2="7.62" y2="17.78" width="0.254" layer="94"/> <wire x1="7.62" y1="17.78" x2="7.62" y2="-15.24" width="0.254" layer="94"/> <wire x1="7.62" y1="-15.24" x2="-7.62" y2="-15.24" width="0.254" layer="94"/> <wire x1="-7.62" y1="-15.24" x2="-7.62" y2="17.78" width="0.254" layer="94"/> <text x="-5.08" y="20.32" size="1.778" layer="95">>NAME</text> <text x="-5.08" y="-17.78" size="1.778" layer="96">>VALUE</text> </symbol> </symbols> <devicesets> <deviceset name="ARDUINO_PRO_MICRO"> <description>Arduino Pro Micro 5V/16MHz</description> <gates> <gate name="G$1" symbol="ARDUINO_PRO_MICRO" x="0" y="0"/> </gates> <devices> <device name="" package="ARDUINO_PRO_MICRO"> <connects> <connect gate="G$1" pin="2" pad="5"/> <connect gate="G$1" pin="3" pad="6"/> <connect gate="G$1" pin="4" pad="7"/> <connect gate="G$1" pin="5" pad="8"/> <connect gate="G$1" pin="6" pad="9"/> <connect gate="G$1" pin="7" pad="10"/> <connect gate="G$1" pin="8" pad="11"/> <connect gate="G$1" pin="9" pad="12"/> <connect gate="G$1" pin="10" pad="13"/> <connect gate="G$1" pin="14" pad="15"/> <connect gate="G$1" pin="15" pad="16"/> <connect gate="G$1" pin="16" pad="14"/> <connect gate="G$1" pin="A0" pad="17"/> <connect gate="G$1" pin="A1" pad="18"/> <connect gate="G$1" pin="A2" pad="19"/> <connect gate="G$1" pin="A3" pad="20"/> <connect gate="G$1" pin="GND@1" pad="3"/> <connect gate="G$1" pin="GND@2" pad="4"/> <connect gate="G$1" pin="GND@3" pad="23"/> <connect gate="G$1" pin="RAW" pad="24"/> <connect gate="G$1" pin="RESET" pad="22"/> <connect gate="G$1" pin="RXI" pad="2"/> <connect gate="G$1" pin="TXO" pad="1"/> <connect gate="G$1" pin="VCC" pad="21"/> </connects> <technologies> <technology name=""/> </technologies> </device> </devices> </deviceset> </devicesets> </library> </drawing> </eagle> If you are soldering the board directly, use standard 0
Note the micro-USB connector position. Ensure the USB edge hangs off the board or is placed at an edge for connection access. Key Considerations for Pro Micro PCB Design
This comprehensive guide will walk you through everything you need to know about the Arduino Pro Micro Eagle library, from locating the best library files to implementing them flawlessly in your custom hardware designs. Why Use the Arduino Pro Micro in PCB Design? Where to Download | Component | Purpose |
The Pro Micro breaks out 18 GPIO pins. Ensure you map your SPI (MISO, MOSI, SCK), I2C (SDA, SCL), and serial (TX, RX) hardware lines correctly if you are interfacing with displays, sensors, or external storage.
Switch to the board view. The Pro Micro footprint will appear as a 24-pin IC layout.