ATtiny microcontroller comparison chart
Subfamily of 8-bit AVR microcontrollers

ATtiny (also known as TinyAVR) is a subfamily of the popular 8-bit AVR microcontrollers, which typically has fewer features, fewer I/O pins, and less memory than other AVR series chips. The first members of this family were released in 1999 by Atmel (later acquired by Microchip Technology in 2016).
01Features
ATtiny microcontrollers specifically exclude various common features, such as: USB peripheral, DMA controller, crypto engine, or an external memory bus.
The following table summarizes common features of the ATtiny microcontrollers, for easy comparison. This table is not meant to be an unabridged feature list.
| Device (family) | Max clock (MHz) | Flash (KiB) | SRAM (bytes) | EEPROM (bytes) | USART (UART) | I²C (TWI) | SPI | Timers 16/12/8 (bits) | ADC pins | GPIO pins | IC Packages | GCC arch ID | Pgm Dbg | Refs |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ATtiny11, ATtiny11L | 6, 2 | 1 | No | No | No | No | No | 0 / 0 / 1 | No | 5 | DIP-8N, SO200-8 | avr1 | HVSP | |
| ATtiny12, ATtiny12L, ATtiny12V | 8, 1.2 | 1 | No | 64 | No | No | No | 0 / 0 / 1 | No | 5 | DIP-8N, SO200-8 | avr1 | ISP, HVSP | |
| ATtiny15L | 1.6 | 1 | No | 64 | No | No | No | 0 / 0 / 2 | 4 | 6 | DIP-8N, SO200-8 | avr1 | ISP, HVSP | |
| ATtiny28L, ATtiny28V | 4, 1.2 | 2 | No | No | No | No | No | 0 / 0 / 1 | No | 11 | DIP-28N, TQFP-32, QFN-32 | avr1 | HVPP | |
| ATtiny22, ATtiny22L | 8, 4 | 2 | 128 | 128 | No | No | No | 0 / 0 / 1 | No | 5 | DIP-8N, SO200-8 | avr2 | ISP, HVSP | |
| ATtiny26, ATtiny26L | 16, 8 | 2 | 128 | 128 | USI* | master, slave* | master, slave* | 0 / 0 / 2 | 11 | 16 | DIP-20N, SO300-20, QFN-32 | avr2 | ISP, HVPP | |
| ATtiny13, ATtiny13V, ATtiny13A | 20, 10 | 1 | 64 | 64 | No | No | No | 0 / 0 / 1 | 4 | 6 | DIP-8N, SO150-8, SO209-8, VQFN-10, WQFN-20 | avr25 | ISP, dW, HVSP | |
| ATtiny24, ATtiny24V, ATtiny24A, ATtiny44, ATtiny44V, ATtiny44A, ATtiny84, ATtiny84V, ATtiny84A | 20, 10 | 2, 4, 8 | 128, 256, 512 | 128, 256, 512 | USI* | master, slave* | master, slave* | 1 / 0 / 1 | 8 | 12 | DIP-14N, SO150-14, QFN-20, VQFN-20, UFBGA-15 | avr25 | ISP, dW, HVSP | |
| ATtiny25, ATtiny25V, ATtiny45, ATtiny45V, ATtiny85, ATtiny85V | 20, 10 | 2, 4, 8 | 128, 256, 512 | 128, 256, 512 | USI* | master, slave* | master, slave* | 0 / 0 / 2 | 4 | 6 | DIP-8N, SO208-8, TSSOP-8, QFN-20 | avr25 | ISP, dW, HVSP | |
| ATtiny43U | 8 | 4 | 256 | 64 | USI* | master, slave* | master, slave* | 0 / 0 / 2 | 4 | 16 | SO300-20, QFN-20 | avr25 | ISP, dW, HVPP | |
| ATtiny48, ATtiny88 | 12 | 4, 8 | 256, 512 | 64 | No | master, slave | master, slave | 1 / 0 / 1 | 6 | 24 | DIP-28N, QFN-28 | avr25 | ISP, dW, HVPP | |
| No | master, slave | master, slave | 1 / 0 / 1 | 8 | 28 | TQFP-32, QFN-32, UFBGA-32 | ||||||||
| ATtiny87, ATtiny167 | 16 | 8, 16 | 512 | 512 | USI*, UART* | No | master, slave | 1 / 0 / 1 | 11 | 16 | SO300-20, TSSOP-20, VQFN-32 | avr25, avr35 | ISP, dW, HVPP | |
| ATtiny261, ATtiny261A, ATtiny461, ATtiny461A, ATtiny861, ATtiny861A | 20 | 2, 4, 8 | 128, 256, 512 | 128, 256, 512 | USI* | master, slave* | master, slave* | 1 / 0 / 1 | 11 | 16 | DIP-20N, SO300-20, TSSOP-20, QFN-32 | avr25 | ISP, dW, HVPP | |
| ATtiny441, ATtiny841 | 16 | 4, 8 | 256, 512 | 256, 512 | 2 USART* | slave | master, slave | 2 / 0 / 1 | 12 | 12 | SO150-14, QFN-20, VQFN-20 | avr25 | ISP, dW, HVSP | |
| ATtiny828 | 20 | 8 | 512 | 256 | USART* | slave | master, slave | 1 / 0 / 1 | 28 | 28 | TQFP-32, QFN-32 | avr25 | ISP, dW, HVPP | |
| ATtiny1634 | 12 | 16 | 1024 | 256 | USI*, 2 USART* | slave | master* | 1 / 0 / 1 | 12 | 18 | SO300-20, QFN-20 | avr35 | ISP, dW, HVPP | |
| ATtiny2313, ATtiny2313V, ATtiny2313A, ATtiny4313 | 20 | 2, 4 | 128, 256 | 128, 256 | USI*, USART* | master, slave* | master, slave* | 1 / 0 / 1 | No | 18 | DIP-20N, SO300-20, VQFN-20 | avr25 | ISP, dW, HVPP | |
| ATtiny4, ATtiny5, ATtiny9, ATtiny10 | 12 | 0.5 / 1 | 32 | No | No | No | No | 1 / 0 / 0 | 4 | 4 | SOT23-6, UDFN-8 | avrtiny | TPI | |
| ATtiny20 | 12 | 2 | 128 | No | No | slave | master, slave | 1 / 0 / 1 | 8 | 12 | SO150-14, TSSOP-14, VQFN-20, UFBGA-15, WLCSP-12 | avrtiny | TPI | |
| ATtiny40 | 12 | 4 | 256 | No | No | slave | master, slave | 1 / 0 / 1 | 12 | 18 | SO300-20, TSSOP-20, VQFN-20 | avrtiny | TPI | |
| ATtiny102(F) | 12 | 1 | 32 | No | USART* | No | master* | 1 / 0 / 0 | 5 | 6 | SO150-8, UDFN-8 | avrtiny | TPI | |
| ATtiny104(F) | 12 | 1 | 32 | No | USART* | No | master* | 1 / 0 / 0 | 9 | 12 | SO150-14 | avrtiny | TPI | |
| ATtiny202, ATtiny402 (0-series) | 20 | 2, 4 | 128, 256 | 64, 128 | USART* | master, slave | master, slave | 2 / 0 / 0 / RTT | 6 | 6 | SO150-8 | avrxmega3 | UPDI | |
| ATtiny204, ATtiny404, ATtiny804, ATtiny1604 (0-series) | 20 | 2, 4, 8, 16 | 128, 256, 512, 1024 | 64, 128, 256 | USART* | master, slave | master, slave | 2 / 0 / 0 / RTT | 10 | 12 | SO150-14 | avrxmega3 | UPDI | |
| ATtiny406, ATtiny806, ATtiny1606 (0-series) | 20 | 4, 8, 16 | 256, 512, 1024 | 128, 256 | USART* | master, slave | master, slave | 2 / 0 / 0 / RTT | 12 | 18 | SO300-20, VQFN-20 | avrxmega3 | UPDI | |
| ATtiny807, ATtiny1607 (0-series) | 20 | 8, 16 | 512, 1024 | 128, 256 | USART* | master, slave | master, slave | 2 / 0 / 0 / RTT | 12 | 22 | VQFN-24 | avrxmega3 | UPDI | |
| ATtiny212, ATtiny412 (1-series) | 20 | 2, 4 | 128, 256 | 64, 128 | USART* | master, slave | master, slave | 2 / 1 / 0 / RTT | 6 | 6 | SO150-8 | avrxmega3 | UPDI | |
| ATtiny214, ATtiny414, ATtiny814, ATtiny1614 (1-series) | 20 | 2, 4, 8, 16 | 128, 256, 512, 2048 | 64, 128, 256 | USART* | master, slave | master, slave | 2 / 1 / 0 / RTT | 10 | 12 | SO150-14 | avrxmega3 | UPDI | |
| ATtiny416, ATtiny816, ATtiny1616, ATtiny3216 (1-series) | 20 | 4, 8, 16, 32 | 256, 512, 2048 | 128, 256 | USART* | master, slave | master, slave | 2or3 / 1 / 0 / RTT | 12 | 18 | SO300-20, QFN-20, VQFN-20 | avrxmega3 | UPDI | |
| ATtiny417, ATtiny817, ATtiny1617, ATtiny3217 (1-series) | 20 | 4, 8, 16, 32 | 256, 512, 2048 | 128, 256 | USART* | master, slave | master, slave | 2 / 1 / 0 / RTT | 12 | 22 | VQFN-24, QFN-24 | avrxmega3 | UPDI | |
| ATtiny424, ATtiny824, ATtiny1624, ATtiny3224 (2-series) | 20 | 4, 8, 16, 32 | 512, 1024, 2048, 3072 | 128, 128, 256, 256 | 2 USART* | yes | yes | 3 / 0 / 0 / RTT | 9 | 12 | SO-14, TSSOP-14 | avrxmega3 | UPDI | |
| ATtiny426, ATtiny826, ATtiny1626, ATtiny3226 (2-series) | 20 | 4, 8, 16, 32 | 512, 1024, 2048, 3072 | 128, 128, 256, 256 | 2 USART* | yes | yes | 3 / 0 / 0 / RTT | 15 | 18 | SO-20, SSTOP-20, VQFN-20 | avrxmega3 | UPDI | |
| ATtiny427, ATtiny827, ATtiny1627, ATtiny3227 (2-series) | 20 | 4, 8, 16, 32 | 512, 1024, 2048, 3072 | 128, 128, 256, 256 | 2 USART* | yes | yes | 3 / 0 / 0 / RTT | 15 | 22 | VQFN-24 | avrxmega3 | UPDI | |
| Device (family) | Max clock (MHz) | Flash (KiB) | SRAM (bytes) | EEPROM (bytes) | USART (UART) | I²C (TWI) | SPI | Timers 16/12/8/R (bits) | ADC pins | GPIO pins | IC Packages | GCC arch ID | Pgm Dbg | Refs |
- Notes
A watchdog timer (WDT, or simply a watchdog), sometimes called a computer operating properly timer (COP timer), is an electronic or software timer that is used to detect and recover from computer malfunctions. Watchdog timers are widely used in computers to facilitate automatic correction of temporary hardware faults, and to prevent errant or malevolent software from disrupting system operation.
During normal operation, the computer regularly restarts the watchdog timer to prevent it from elapsing, or timing out. If, due to a hardware fault or program error, the computer fails to restart the watchdog, the timer will elapse and generate a timeout signal. The timeout signal is used to initiate corrective actions. The corrective actions typically include placing the computer and associated hardware in a safe state and invoking a computer reboot.
Microcontrollers often include an integrated, on-chip watchdog. In other computers the watchdog may reside in a nearby chip that connects directly to the CPU, or it may be located on an external expansion card in the computer's chassis.
- Package column - the number after the dash is the number of pins on the package. DIP packages in this table are 0.3 inches (7.62 mm) row-to-row. SOwww means SOIC package with a case width of 'www' in thousandth of an inch. Though some package types are known by more than one name, a common name was chosen to make it easier to compare packages.
- UART/I²C/SPI columns - green cell means a dedicated peripheral, * yellow cell means a multi-feature peripheral that is chosen by setting configuration bits. Most USART peripherals support a minimum choice between UART or SPI, where as some might support additional choices, such as LIN, IrDA, RS-485.
- Timers column - more recent families have wider timers and may allow chaining two 16-bit timers to do 32-bit capture. RTT is a 16-bit Real Time Timer that is driven by a 32.768KHz clock, though Microchip calls it RTC for Real Time Counter (easily confused to mean Real Time Clock).
- ADC pins column - the total number of analog channels that are accessible via pins that multiplex into the ADC input. Most parts have one ADC, a few have two ADC.
- Pgm/Dbg column - flash programming and debugging protocols: HVPP means High Voltage Parallel Programming 12V protocol, HVSP means High Voltage Serial Programming 12V protocol, ISP means In-System Programmable protocol, uses SPI to program the internal flash. TPI is Tiny Programming Interface. dW means debugWIRE protocol. UPDI means Unified Program and Debug Interface protocol (newest).
- Abbreviations
- TWI: Many of Atmels microcontrollers contain built-in support for interfacing to a two-wire bus, called Two-Wire Interface. This is essentially the same thing as the I²C interface by Philips, but that term is avoided in Atmel's documentation due to trademark issues.
- USI: Universal Serial Interface (not to be confused with USB). The USI is a multi-purpose hardware communication module. With appropriate software support, it can be used to implement an SPI, I²C or UART interface. USART peripherals have more features than USI peripherals.

02Timeline
The following table lists each ATtiny microcontroller by the first release date of each datasheet.
| Year | Device (family) |
|---|---|
| 1999 | ATtiny11, ATtiny11L, ATtiny12, ATtiny12L, ATtiny12V, ATtiny22, ATtiny22L |
| 2002 | ATtiny15L, ATtiny26, ATtiny26L, ATtiny28L, ATtiny28V |
| 2003 | ATtiny13, ATtiny13V, ATtiny2313, ATtiny2313V, ATtiny4313 |
| 2005 | ATtiny24, ATtiny24V, ATtiny25, ATtiny25V, ATtiny44, ATtiny44V, ATtiny45, ATtiny45V, ATtiny84, ATtiny84V, ATtiny85, ATtiny85V |
| 2006 | ATtiny261, ATtiny461, ATtiny861 |
| 2008 | ATtiny13A, ATtiny24A, ATtiny44A, ATtiny48, ATtiny84A, ATtiny88 |
| 2009 | ATtiny4, ATtiny5, ATtiny9, ATtiny10, ATtiny43U, ATtiny261A, ATtiny461A, ATtiny861A, ATtiny2313A |
| 2010 | ATtiny20, ATtiny40, ATtiny87, ATtiny167 |
| 2011 | ATtiny1634 |
| 2012 | ATtiny441, ATtiny841, ATtiny828 |
| 2016 | ATtiny102(F), ATtiny104(F), ATtiny417, ATtiny817 |
| 2017 | ATtiny212, ATtiny412, ATtiny214, ATtiny414, ATtiny814, ATtiny416, ATtiny816 |
| 2018 | ATtiny202, ATtiny402, ATtiny204, ATtiny404, ATtiny804, ATtiny1604, ATtiny406, ATtiny806, ATtiny1606, ATtiny807, ATtiny1607, ATtiny1614, ATtiny1616, ATtiny3216, ATtiny1617, ATtiny3217 |
| 2020 | ATtiny1624, ATtiny1626, ATtiny1627 |
| 2021 | ATtiny424, ATtiny824, ATtiny426, ATtiny826, ATtiny427, ATtiny827 |
03Development boards
The following are ATtiny development boards sold by Microchip Technology:
- ATtiny104 Xplained Nano
- ATtiny416 Xplained Nano
- ATtiny817 AVR Parrot
- ATtiny817 Xplained Mini
- ATtiny817 Xplained Pro
- ATtiny3217 Xplained Pro
Sources and credits
This article is adapted from the Wikipedia article “ATtiny microcontroller comparison chart”, written by its contributors and licensed under CC BY-SA 4.0. Fathomly has changed the layout, removed citation markers, navigation and maintenance notices, and adjusted punctuation. This adapted version is shared under the same license. For references, see the original article.
Images, from Wikimedia Commons:
- ATtiny2313.png by Torsten Landschoff, Public domain
- Attinynumbering2.gif by Soceco, CC BY-SA 4.0
Fathomly is not affiliated with or endorsed by the Wikimedia Foundation. Spotted a problem? Tell us.