# Adafruit PyRuler

## Overview

![](https://cdn-learn.adafruit.com/assets/assets/000/078/893/medium800/adafruit_products_PyRuler_Angle.jpg?1564692758)

The first time you soldered up a surface mount component you may have been surprised "these are _really small_ parts!" and there's dozens of different names too! QFN, TDFN, SOIC, SOP, J-Lead, what do they mean and how can you tell how big they are? Now you can have a reference board at your fingertips, with this snazzy PCB reference ruler.  
  
Measuring approx 1" x 6", this standard-thickness FR4, gold plated ruler has the most common component packages you'll encounter. It also has font size guide, and a trace-width diagram.

![](https://cdn-learn.adafruit.com/assets/assets/000/078/894/medium800/adafruit_products_PyRuler_Side.jpg?1564692766)

That's not all, it's even a fully featured microcontroller board! Embedded in the end is a Trinket M0, our little Cortex M0+ development board, **and in addition, there's 4 capacitive touch pads with matching LEDs** that our code will turn into a specialized engineer keyboard. We're always needing to type Ω and µ but we can never memorize the complex key-commands necessary. Thanks to CircuitPython, it's super-easy to make a touch keyboard to solve this for you. Plug in the ruler into your computer, if it's your first time using it, you'll need to open up the **code.py** file and set the Keyboard mode to "True". Now when you touch the pads, you'll get a&nbsp;Ω,&nbsp;µ,&nbsp; π or, when the Digi-Key logo is touched, the URL for Digi-Key's Python on Hardware guide.

The PyRuler was designed as a great introduction to CircuitPython. While you can use it with the Arduino IDE, we are shipping it with CircuitPython on board. When you plug it in, it will show up as a very small disk drive with **code.py** &nbsp;on it. Edit **code.py** &nbsp;with your favorite text editor to build your project using Python, the most popular programming language. No installs, IDE or compiler needed, so you can use it on any computer, even ChromeBooks or computers you can't install software on. When you're done, unplug the PyRuler and your code will go with you. [Please check out the Trinket M0 CircuitPython guide for a list of capabilities and quick-start code examples](https://learn.adafruit.com/adafruit-trinket-m0-circuitpython-arduino/circuitpython) - CircuitPython is easier to code but not as low-level as Arduino.

![](https://cdn-learn.adafruit.com/assets/assets/000/078/895/medium800/adafruit_products_PyRuler_Bottom.jpg?1564692776)

Here are some of the updates you can look forward to when using PyRuler

- ATSAMD21E18 32-bit Cortex M0+ - 256KB Flash, 32 KB RAM, 48 MHz 32 bit processor
- Native USB supported by every OS&nbsp;- can be used in Arduino or CircuitPython as USB serial console, Keyboard/Mouse HID, even a little disk drive for storing Python scripts.
- Can be used with the Arduino IDE&nbsp;or&nbsp;CircuitPython
- Four capacitive touch pads.
- Lots of LEDS - Built in green ON LED, red pin #13 LED, RGB DotStar LED, **plus red/yellow/green/blue** matching LEDs for each capacitive touch pad
- 5 GPIO header pins are available and are not shared with USB or the touch pads/LEDs - so you can use them for whatever you like! Digital I/O with pullup/down. 3 ADCs, 1 DAC, 2 PWM, 3 extra captouch sensors
- Can drive&nbsp;NeoPixels or DotStars on any pins, with enough memory to drive 8000+ pixels.&nbsp;[DMA-NeoPixel support on one pin&nbsp;](https://learn.adafruit.com/dma-driven-neopixels)so you can drive pixels without having to spend any processor time on it.
- Native hardware SPI, I2C and Serial available on two pads so you can connect to any I2C or Serial device with true hardware support (no annoying bit-banging). You can have either one SPI device or both I2C and Serial.
- Reset switch&nbsp;for starting your project code over
- Power with either USB or external output (such as a battery) - it'll automatically switch over

![](https://cdn-learn.adafruit.com/assets/assets/000/078/896/medium800/adafruit_products_PyRuler_Top.jpg?1564692892)

- [Next Page](https://learn.adafruit.com/adafruit-pyruler/pinouts.md)

## Primary Products

### Adafruit PyRuler - Engineer Reference Ruler with CircuitPython

[Adafruit PyRuler - Engineer Reference Ruler with CircuitPython](https://www.adafruit.com/product/4319)
The first time you soldered up a surface mount component you may have been surprised "these are _really small_ parts!" and there's a&nbsp;dozen of different names too! QFN, TDFN, SOIC, SOP, J-Lead, what do they mean and how can you tell how big they are? Now you can have a...

In Stock
[Buy Now](https://www.adafruit.com/product/4319)
[Related Guides to the Product](https://learn.adafruit.com/products/4319/guides)

## Featured Products

### USB cable - USB A to Micro-B

[USB cable - USB A to Micro-B](https://www.adafruit.com/product/592)
This here is your standard A to micro-B USB cable, for USB 1.1 or 2.0. Perfect for connecting a PC to your Metro, Feather, Raspberry Pi or other dev-board or microcontroller

Approximately 3 feet / 1 meter long

In Stock
[Buy Now](https://www.adafruit.com/product/592)
[Related Guides to the Product](https://learn.adafruit.com/products/592/guides)

## Related Guides

- [Simon Game for PyRuler and CircuitPython](https://learn.adafruit.com/simon-game-with-pyruler-and-circuitpython.md)
- [PyRuler Video Conference Panic Buttons](https://learn.adafruit.com/pyrulervideopanic.md)
- [PyPortal IoT Data Logger with Analog Devices ADT7410, Adafruit IO and CircuitPython](https://learn.adafruit.com/iot-pyportal-data-logger-adafruitio-circuitpython.md)
- [Trinket RGB Shield Clock](https://learn.adafruit.com/trinket-rgb-shield-clock.md)
- [Adafruit CC3000 WiFi](https://learn.adafruit.com/adafruit-cc3000-wifi.md)
- [MagTag Slideshow](https://learn.adafruit.com/magtag-slideshow.md)
- [Adafruit MAX31865 RTD PT100 or PT1000 Amplifier](https://learn.adafruit.com/adafruit-max31865-rtd-pt100-amplifier.md)
- [Adafruit Qualia High Res Displayport Desktop Monitor](https://learn.adafruit.com/qualia-high-res-displayport-desktop-monitor.md)
- [Adafruit Metro RP2040](https://learn.adafruit.com/adafruit-metro-rp2040.md)
- [Super Simple Sunrise Lamp](https://learn.adafruit.com/super-simple-sunrise-lamp.md)
- [MP3 Playback in CircuitPython with Lars the Sloth Puppet](https://learn.adafruit.com/mp3-circuitpython-lars.md)
- [Adafruit PCF8575 I2C 16 GPIO Expander Breakout](https://learn.adafruit.com/adafruit-pcf8575.md)
- [Adafruit Arcade Bonnet for Raspberry Pi](https://learn.adafruit.com/adafruit-arcade-bonnet-for-raspberry-pi.md)
- [AdaBox 015](https://learn.adafruit.com/adabox015.md)
- [Grill Thermometer Dashboard](https://learn.adafruit.com/grill-thermometer-dashboard.md)
