Difference between ATmega and ATtiny?

(Newb alert. I'm new to the Arduino)

My Google-Fu seems to be weak today. I cannot find anything explaining the differences between the ATmega and ATtiny AVR µC.

So, what's the deal? Links to relevant reading welcome.

I did find a few threads detailing efforts to hack the Arduino IDE and AVRDUDE to deal with the ATtiny.


-- M.S.

This is the best I could find from Ateml... http://www.atmel.com/products/AVR/megaavr.asp?family_id=607&source=avrhomereadmore http://www.atmel.com/products/AVR/tinyavr.asp?family_id=607&source=avrhomereadmore

There is overlap between the lines. Basically, Tinys can be VERY tiny up to "medium" sized. Megas can be "medium" sized up to "large" sized.

Size includes physical size, number of I/O pins, amount of memory (Flash, SRAM, EEPROM), number of peripherals (UARTS, CANBUS, etcetera).

As far as I can tell, the biggest difference between the two lines is "Integrated Boost Controller" on the Tinys and "Communications" on the Megas.

features memory and package size / io capability

for example a tiny 84 has 1 interrupt, no uart and a small handful of io pins, less program space and much less ram but comes in a 14 pin package

a 328 has 2 interrupts, 1 hardware serial port, more ram more program space and more io, which is great, if you really need it

at the heart they all share the same basic core

Ok, that is pretty close to what I wanted to know. Damn if I could find that in a Google search....


Edit: Osgeld was typing the same time I was...

I'm still developing my product and code. A 'Tiny' may be perfect for my application (tachometer for machinery). While I am developing this around an Arduino clone I'd eventually like to 'tighten' things up and make this as compact and free of un-needed expense/complexity for final design and potential production.

Thank you.

-- M.S.

Just an addition: a lot - as always - has historic roots.

A "Rule of thumb" has always been: Tinies: no H/W UART, no H/W multiplication, extremely low on RAM (however the once popular 2313 has a UART)

As the Arduino philosphy needs the serial I/O for programming, the Megas were preferable.

Also, the tinies come in a host of deviations, which makes it very hard to integrate them under the hood of one HAL

The tiny85 is strong enough to run Arduino, and there is an adaption.

Edit: Bootloader! As the Arduino philosophy also needs a bootloader all veriants that do not support this concept do not apply. 8kB FLASH seems to be the minimum.

A little bit OT: I like the mega48. A tricky use is to develope your code on a 168 in the Lillipad Arduino Variant (8 MHz), then ISP-flash the stable version to the most compatible 48, fuses @ 8Mhz internal oscillator....

Would something like this suit?

An important difference is that the Tiny devices have much less drive capability on the outputs. I think it's only 5 mA or so, instead of 25 mA.

I should be happy if anyone can find (or prepare, from the 50+ datasheets...) a synopsis of this! There are too many types of Tinies... There had been even one (11? 12?) with enhanced current drivers (100mA I think)

What is obvios is that the often repeated 40mA of the ATmegas is mere marketing; the voltage drops down considerable. To help the designer it should be known what current can be delivered at a voltage drop of 10%.

An important difference is that the Tiny devices have much less drive capability on the outputs. I think it's only 5 mA or so, instead of 25 mA.

It would have been if it was true, but I don't think so. The Tiny's share the same basic core as the AtMega's with max sink/source current per IO pin at 40mA (200mA max for the package). This is true for the Tiny's I know first hand (25/45/85 and 24/44/84).

http://www.atmel.com/dyn/resources/prod_documents/doc2586.pdf http://www.atmel.com/dyn/resources/prod_documents/doc8006.pdf

You can't speculate on features like this - you need to reference it do a datasheet.

See the data sheet for the Tiny13A, it's 10 mA max.

its important to note ALL tinys are not the same

one persons says tinys have a max of X WRONG the other person says tinys have a max of Y WRONG

depends on the packaging and model, read the datasheets

also you do not have to have a bootloader to use arduino software, never did, but then you need an external programmer which is extra

I dont really know the confusion Atmel had a bigass chart on their website giving a rough overview


See the data sheet for the Tiny13A, it's 10 mA max.

Datasheet of Tiny13A from Atmel web.


Look at page 117 ( 40mA max per I/O pin, 200mA max per package),

What are the devices and datasheets you refer to?

See the graphs around page 139. No one ever uses maximum ratings in their designs if they are sensible.

wait what?

10ma is max

no its not its 40max

well your stupid for using max anyway

ok so when it was 10max it was ok, but now your wrong its a whole different story?