Functional differences between attiny series

Go To Last Post
24 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi All,

I am currently in the process of deciding what attiny I am going to use as "default" for various projects (I'd like to stick to one type as much as possible).

In the race are currently attiny85 (8 pin), attiny84 (14 pin) and attiny861 (20 pin). After studying the datasheets of all of these, I have come to the conclusion that they're all the same, apart from the number of actual i/o pins and a few details.

Actually the only functional difference I could find is that the 861 has a bit more sophisticated timer and it has a second "external" interrupt pin.

Is this correct, or did I miss some important detail?

Thanks all!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

You may also consider including the Tiny1634 in your scope. It outperforms the TinyX61 in all aspects excluding FCPU which is 12 MHz max.

Warning: Grumpy Old Chuff. Reading this post may severely damage your mental health.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Personally, I'd skip the Tinys as "default" for general use, and go with the Mega48 family.

You'll get more memory resources and peripherals (USART especially comes to mind, along with real SPI and TWI).

What don't you get? IIRC differential A/D, and at least some of the models you mentioned have the PLL for high-speed PWM.

You can put lipstick on a pig, but it is still a pig.

I've never met a pig I didn't like, as long as you have some salt and pepper.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

MBedder wrote:
You may also consider including the Tiny1634 in your scope. It outperforms the TinyX61 in all aspects excluding FCPU which is 12 MHz max.

Thank you very much for making my decision even more difficult ;-) ;-)

I've had a glance at the sheet, indeed it has some extended features compared to the x61's, but I won't be using these (see my other reply below). Also I don't usually use any form of "freeform" asynchronous serial bus (like rs232), so an usart is no use to me. I am going to use i2c/twi/smbus though (uC as slave). The 1634 has both usi and "full" twi implementations, that's a plus, but usi really suffices for what I am doing.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

theusch wrote:
Personally, I'd skip the Tinys as "default" for general use, and go with the Mega48 family.

You'll get more memory resources and peripherals (USART especially comes to mind, along with real SPI and TWI).

What don't you get? IIRC differential A/D, and at least some of the models you mentioned have the PLL for high-speed PWM.


I really do think the tiny's suit my needs perfectly... I am making a few "basic building blocks" to be driven from a master using i2c (in this case a PC, not even a microcontroller). One feature is a very flexible pwm implementation with 3-4 channels for light (led) dimming, another one is a set of 16 bit counters (also 3 or 4 channels) that don't miss a single pulse. Both of these cannot be implemented purely in hardware, whatever avr mcu I've examined. So if I'll have to implement things (partly) in software, what use will of this extended hardware features have to me?

So I think both of these can be perfectly implemented using attiny's.

In the future I may also add simple digital i/o's and adc's (again, over i2c) to the repertoire.

Now the crux is whether to use attiny's with very little output pins that only perform one of the features (very flexibel) or to use attiny's with more pins, performing some of the features combined. I favour the first option, but the two/three remaining i/o pins is really too little.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Once upon a time our resident "Jim" (user "ka7ehk") did some very nice graphs that illustrated the differences going from one family to another. At least I seem to recall that it was Jim. If he passes by here he might confirm or deny. Then it's a matter of if he has those graphs still, and if they still carry any useful information or if too much time has passed.

As of January 15, 2018, Site fix-up work has begun! Now do your part and report any bugs or deficiencies here

No guarantees, but if we don't report problems they won't get much of  a chance to be fixed! Details/discussions at link given just above.

 

"Some questions have no answers."[C Baird] "There comes a point where the spoon-feeding has to stop and the independent thinking has to start." [C Lawson] "There are always ways to disagree, without being disagreeable."[E Weddington] "Words represent concepts. Use the wrong words, communicate the wrong concept." [J Morin] "Persistence only goes so far if you set yourself up for failure." [Kartman]

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

It's really a shame atmel goes through so much trouble making the functional differences between families and models so difficult to compare :-(

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

You say that sometimes the smaller MCUs you've used didn't have enough pins...so then use the 20 pinner and write portable code ( This should be EASY since you want to stick with tiny series only ). After development, just drop the code in a smaller tiny, if that's what's needed. You'll also get experience using the added goodies of the 20 pinner for when you need that size MCU .

1) Studio 4.18 build 716 (SP3)
2) WinAvr 20100110
3) PN, all on Doze XP... For Now
A) Avr Dragon ver. 1
B) Avr MKII ISP, 2009 model
C) MKII JTAGICE ver. 1

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

eriksl wrote:
It's really a shame atmel goes through so much trouble making the functional differences between families and models so difficult to compare :-(

The device selector on this very site was good. Too bad it wasn't maintained properly and eventually got disabled.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:
The device selector on this very site was good. Too bad it wasn't maintained properly and eventually got disabled

+1

The Tiny1634 I missed as well and Mbedder pointed out to me and it fits the bill nicely for my application.

I also agree with Lee about the mega 48 series. Nice platform because all the devices in that set share the same peripherals so if you run out of room on one you just move to the next bigger flash device. 4k flash up to 32k is a nice range. The peripherals and I/o are reasonably generous as well.

The 'Other' Jim ;)

If you want a career with a known path - become an undertaker. Dead people don't sue! - Kartman

Why is there a "Highway to Hell" and only a "Stairway to Heaven"? A prediction of the expected traffic load?  - Lee "theusch"

 

Speak sweetly. It makes your words easier to digest when at a later date you have to eat them ;-)  - Source Unknown

Please Read: Code-of-Conduct

Atmel Studio6.2/AS7, DipTrace, Quartus, MPLAB user

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

indianajones11 wrote:
You say that sometimes the smaller MCUs you've used didn't have enough pins...so then use the 20 pinner and write portable code ( This should be EASY since you want to stick with tiny series only ). After development, just drop the code in a smaller tiny, if that's what's needed. You'll also get experience using the added goodies of the 20 pinner for when you need that size MCU .

Yes that is exactly what I do now. We're some time further now, I've bought a programmer in the meantime, I've studied the datasheets of the '4s, '5s and 61's and found almost no functional differences (apart from the obvious pin count). I other words, as long as I keep using these, I can port code very easily from one to another, it's no issue at all. I don't like the idea of #defines from device-specific port's to "generic" port names, by the way, and I don't mind adapting the code a bit from one device to another.

The important issue was: what programmer to buy (not all of them can program all mcu versions...) and what actual devices to buy. So I bought I programmer (dragon) that can program the '4, '5 and '61 and bought a few of all of these, problem solved :-)

Besides the '61's ability to switch USI to another set of pins and the '61's having a few minor extra timer features, all of these are more or less the same, and so it doesn't matter that much, I found out.

8k flash and 8k ram is really enough for me, at the moment, so I'll stick to 84,85 and 861's for now. They're only a few cents more expensive than the smaller ones.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

The AVRISPMKII can program just about everything and costs $35.00usd

If you want a career with a known path - become an undertaker. Dead people don't sue! - Kartman

Why is there a "Highway to Hell" and only a "Stairway to Heaven"? A prediction of the expected traffic load?  - Lee "theusch"

 

Speak sweetly. It makes your words easier to digest when at a later date you have to eat them ;-)  - Source Unknown

Please Read: Code-of-Conduct

Atmel Studio6.2/AS7, DipTrace, Quartus, MPLAB user

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Those graphs I did were about 2 years ago and was for some of the then-new Mega chips. No Tinys.

Sorry
Jim

Jim Wagner Oregon Research Electronics, Consulting Div. Tangent, OR, USA http://www.orelectronics.net

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

One advantage of a tiny85 is the high speed PWM. A 64 MHz PWM timer clock and internal 16 MHz cpu clock. Using a standard mega in conjunction with a tiny or so, works well for me. It really depends on the application needs.

It all starts with a mental vision.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I like the ATtiny2313, it has a UART for serial I/O.

I'll believe corporations
are people when Texas executes one.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

jgmdesign wrote:
The AVRISPMKII can program just about everything and costs $35.00usd

So does my dragon, which can do jtag, isp, hvsp and hvpp :-)

It appears that as long as the mcu has support for one of these, they can be programmed with the dragon, so I'm happy... It works quite nicely using linux (which is important for me). Also it's using up to date technology (USB) instead of legacy technology (= rs232c).

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

ka7ehk wrote:
Those graphs I did were about 2 years ago and was for some of the then-new Mega chips. No Tinys.

Well actually Atmel should supply this information of course. But they prefer marketing-fog instead :-(

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

KitCarlson wrote:
One advantage of a tiny85 is the high speed PWM. A 64 MHz PWM timer clock and internal 16 MHz cpu clock. Using a standard mega in conjunction with a tiny or so, works well for me. It really depends on the application needs.

BTW I found out that the '4's (attiny*4) the '5's and the '61's are almost exactly the same, besides the number of pins, after going through each of the data sheets numerous times. I would really help if Atmel would simply say so.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

tubecut wrote:
I like the ATtiny2313, it has a UART for serial I/O.

Urgh, legacy technology :-(

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

So what? One could say 8 bits is legacy technology ;)

Quote:
Also it's using up to date technology (USB) instead of legacy technology (= rs232c).

AVRISPmkII is USB ;)

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

jayjay1974 wrote:
So what? One could say 8 bits is legacy technology ;)

(rant mode on)
The difference is that if you only use numbers that fit into 8 bits (which is very often the case in these kinds of projects), you will see no difference compared to 16, 32 or 64 bits. They may even run slower due to their bigger int sizes when stored into 8 bit memory and use more memory. I think 8 bits is fine.

On the other hand, rs232c is something once very useful and state of the art, but today it's obsolete. Nobody is using it according the specifications (right from the start, actually), which makes it more difficult to use between one or two unknown (black box) devices. I've spent too many hours making sets of two devices using rs232c try to communicate with each other and having no clue where it went wrong. Also, may be even more important, it needs a very stable and accurate clock on both sides, even though it is called "asynchronous". And even though it doesn't reach real high speeds, it's use limited to a few meters. Last but not least, there is no way to know if it kind-of-works without having very specific communication with the endpoint (compare this to usb, where each device identifies itself immediately and voluntarily).

I'd say: the worst of all words (of all available bus systems).

What doesn't help as well, is that many electronics engineers tend to use rs232c interfaces on computers for bit banging, which they're not suitable for. You cannot get the timing right, as pc's nowadays tend to have real operating systems that feature hardware abstraction (which I think is a very good thing). Most of the time the operating system's device drivers don't even allow direct bit banging.

I think it's time to jump on the train before it has gathered to much speed (i.o.w. no single piece of computer has a "usable" rs232c connection anymore).

One may of course disagree, but that's how I see it.
(rant mode off)

Quote:
AVRISPmkII is USB ;)

Ah better.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

So I thought I'd return something to the community ;-) At least the next newbie can select a suitable attiny much easier now, I've made a comparison chart for current attiny models. It leaves out a lot of, for the amateur, less interesting data and also groups a few families together, which I think helps a lot.

So here it is: http://en.wikipedia.org/wiki/Atmel_AVR_attiny_comparison_chart

If something is incorrect or lacks, please edit!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:

If something is incorrect or lacks, please edit!

You can always double-check against the similar tables at www.atmel.com :wink:

As of January 15, 2018, Site fix-up work has begun! Now do your part and report any bugs or deficiencies here

No guarantees, but if we don't report problems they won't get much of  a chance to be fixed! Details/discussions at link given just above.

 

"Some questions have no answers."[C Baird] "There comes a point where the spoon-feeding has to stop and the independent thinking has to start." [C Lawson] "There are always ways to disagree, without being disagreeable."[E Weddington] "Words represent concepts. Use the wrong words, communicate the wrong concept." [J Morin] "Persistence only goes so far if you set yourself up for failure." [Kartman]

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

That is where the information comes from ;-)

But they present the information in a way/layout that makes it very hard to compare the various devices.