Forum Menu




 


Log in Problems?
New User? Sign Up!
AVR Freaks Forum Index

Post new topic   Reply to topic
View previous topic Printable version Log in to check your private messages View next topic
Author Message
abcminiuser
PostPosted: Jan 14, 2007 - 11:56 AM
Moderator


Joined: Jan 23, 2004
Posts: 6964
Location: Melbourne, Victoria, Australia

Freaks,

This article gives a brief overview of the official Atmel tools available for AVR development. Please feel free to post your own notes, corrections or the usual discussion.



AVRISP

This is the basic programming device used to program the Flash, EEPROM, Fuse and Lockbytes of the majority of the AVR range.

It supports programming via the ISP protocol only (see my article here on the different programming methods). Available for many years, the AVRISP is considered the basic "bread and butter" official programming tool. It lacks features such as the parallel programming methods offered by some of the other tools, but is a simple and low cost entry level programming tool.

The AVRISP (now retroactively known as the AVRISP MKI) has been discontinued by Atmel, and is no longer being actively updated to support newer AVR devices.

Cheap third party clones of the AVRISP are available from such companies are ERE, usually with a USB bridging chip to modernize the design.

STATUS: Discontinued (available as third party clones)
PRICE: Approximatly US$30 for the clones

PROS:
    Still supported by AVRStudio
    Easy to use interface - device powered from target board

CONS:
    Discontinued - newer devices not supported
    Serial interface only




AVRISP MKII

The AVRISP MKII is the latest version of the AVRISP mentioned above. It contains a more sophisticated schematic allowing it to determine connection faults - such as shorts or a reversed connector - to the target AVR without damage (while providing a visual indication to the user).

The AVRISP MKII connects and is powered via the USB interface. With later firmware revisions, it can program via PDI and TPI protocols in addition to ISP.

STATUS: Available
PRICE: Approximately US$30

PROS:
    USB Interface
    Can detect connection errors without damage

CONS:
    No on-off switch - unplug to turn off




STK500

The STK500 is the end-all-to-be-all of AVR development - it is a virtual requirement of any self-respecting AVR developer. It will exist in conjunction with the new STK600 (previously codenamed "STK500X"), see later in this article.

At approximately US$80 each, the STK500 contains everything required for serious AVR development, with the exception of an on-chip debugger. It supports the ISP programming method as well as the High Voltage Serial/Parallel programming methods, making it suitable for programming the entire AVR line.

The STK500 contains several DIP sockets which are configured for the different AVR pinouts. For AVR devices using a pinout not supported by the STK500's range of sockets, either the programming lines may be brought out to custom (user-made) board, or an "top card" expansion card may be purchased and placed over the target sockets in the expansion headers.

In addition to its programming capabilities, the STK500 contains a bank of eight momentarily-on pushbuttons and eight amber colored LEDs. These may be connected to the currently socketed AVR via a group of pin headers, which also exposes the AVR's ports for possible external use.

A second serial level converter is available on board for convenience so that the target AVR can communicate with the host computer easily if so desired.

Finally, the STK500 contains an on board oscillator and crystal socket, so that AVRs which have had their fuses incorrectly configured may be resurrected. It is possible to repair any fuse bungling solely with the STK500 and a host computer.

STATUS: Available
PRICE: Approximately US$80

PROS:
    Supports the entire AVR range (with adapters)
    On board oscillator for easy fuse-mishandling recovery
    Second serial channel for target project communications
    Supports ISP and High Voltage Serial/Parallel Programming methods
    On board pushbuttons and LEDs for experiments

CONS:
    Serial interface only




Dragon

The Dragon is a one of the latest development devices to roll off the production line. It is designed to act as a super-low-cost entry level tool. A combination of the STK500 and the JTAG MKII, the Dragon's low price makes it extremely appealing for all AVR developers.

The Dragon supports ISP programming in addition to High Voltage Serial/Parallel programming. It also supports JTAG and DebugWire (dW) on-chip debugging, however this is limited to devices with less than or equal to 32KB of flash memory unless AVRStudio 4.18 or later is used. Only the on-chip debugging is affected by this limitation.

Unlike the STK500, the Dragon contains no target sockets, no LEDs or switches, and no included cables. This is party the reason it is so cheap - when purchased you will need to acquire or make your own leads to connect the Dragon's pin headers to your target AVR.

STATUS: Available
PRICE: Approximately US$50

PROS:
    Supports ISP and High Voltage Serial/Parallel Programming methods
    Supports on-chip debugging of targets
    Extremely cheap price/features ratio
    USB Interface

CONS:
    No included cables to connect the Dragon to your target AVR




JTAG

The JTAG is an on-chip debugging tool, allowing the interfacing of an AVR (executing a program) to a host computer. When debugging an application via JTAG, the currently executing code can be viewed, as can any aspect of the chip's state or memory contents. Programs can be run in real time and stopped at desired points, or the program can be stepped through an instruction at a time.

Atmel's JTAG requires the use of four IO pins of the target AVR, making it undesirable in some resource-constrained applications. In addition, this first generation JTAG has a very limited device support (only a small handful of devices).

The JTAG (now retroactively known as the JTAG MKI) has been discontinued by Atmel, and is no longer being actively updated to support newer AVR devices.

Cheap third party clones of the JTAG are available from such companies are ERE, usually with a USB bridging chip to modernize the design.

STATUS: Discontinued (available as third party clones)
PRICE: Approximately US$40 for the clones

PROS:
    Still supported by AVRStudio
    Can debug an AVR running a program in real time on real hardware

CONS:
    Discontinued - newer devices not supported
    Limited device support - see AVRStudio Tools manual
    Serial interface only




JTAG MKII

The JTAG MKII is the newer version of the JTAG debugging system from Atmel. It has a much larger device support, and contains support for both ISP programming - just like the Dragon, STK500 and AVRISP variants - and the DebugWire on-chip debugging protocol. Unlike the JTAG interface, DebugWire (dW) utilizes only the reset pin of the supported target AVRs for the debugging communication.

The JTAG MKII can be interfaced with a host computer via either USB or serial.


STATUS: Available
PRICE: Approximately US$300

PROS:
    Supports JTAG, ISP and dW protocols
    Serial or USB connection to host computer
    Large device support
    Can debug an AVR running a program in real time on real hardware

CONS:
    Large price tag




STK600

The STK600 is the new high-end iteration of the STK programming and development board from Atmel, and is designed to be sold alongside the STK500. It allows for JTAG programming (only, no debugging) in addition to the STK500 features, and uses a USB connection.

AVRs are inserted into special top boards, which are then stacked onto routing cards in a sandwich configuration onto the board. This eliminates the need for many individual sockets like the ones used on the STK500.

STATUS: Available
PRICE: $200 plus routing cards

PROS:
    Supports JTAG programming in addition to the programming modes of the STK500
    Supports all AVR models, including 32-bit AVRs and XMEGA AVRs
    "Sandwich" configuration allows for easy use with the entire AVR range

CONS:
    Expensive, when the routing boards are added into the mix




AVR ONE!

The AVR ONE! has a simple goal; to be the one debugger to rule them all. It supports every debugging interface ever made for the 8-bit and 32-bit AVRs, including dW, JTAG, Nexus and PDI. It's designed for serious commercial outfits and has a pricetag to match.

STATUS: Available
PRICE: A million, billion dollars (or possibly ~US$600)

PROS:
    Supports every debugging interface ever made for the AVRs, both 8 and 32 bit
    Will be supported into the far future

CONS:
    VERY Expensive, making it unattractive for hobbyists


- Dean Twisted Evil

Text (C) Dean Camera, 2007. Not for re-use without prior explicit permission.

Images (C) Atmel Corporation.

_________________



Last edited by abcminiuser on Dec 24, 2009 - 06:52 AM; edited 14 times in total
 
 View user's profile Send private message Send e-mail Visit poster's website 
Reply with quote Back to top
lfmorrison
PostPosted: Jan 14, 2007 - 08:06 PM
Raving lunatic


Joined: Dec 08, 2004
Posts: 4493
Location: Nova Scotia, Canada

Quote:

AVRISP (mkI)

...

Discontinued - newer devices not supported

However, its architecture is sufficiently open-ended that manually adding support for new devices which use ISP techniques compatible with the current AVR lineup is fairly trivial, provided the programming software on your PC supports it. For example, anything supported by the STK500 under AVR Studio can be blindly assumed to work correctly under the AVRISP mkI because they run the same firmware.

In addition, it's fairly certain that any device supported by the AVRISP mkII will work with the AVRISP mkI, because the share an identical open-ended communication protocol in which all part-specific data is communicated as part of the command packets, with the exception of the extensions added to support the short circuit protection in the mkII, and the fact that the protocol is encapsulated in USB packets for the mkII and is raw RS232 serial frames for the mkI.

The same could be said of any AVRISP mkI clones.

It's not the same situation with the original JTAGICE compared with the JTAGICE mkII, because functional differences have been introduced and there is no subset of a compatible communication protocol.
 
 View user's profile Send private message  
Reply with quote Back to top
daqq
PostPosted: Jan 23, 2007 - 09:44 PM
Raving lunatic


Joined: Dec 15, 2003
Posts: 4140
Location: Slovakia, Bratislava

Nice job! Does STK1000 count?

_________________
There are pointy haired bald people.
Time flies when you have a bad prescaller selected.
 
 View user's profile Send private message Send e-mail Visit poster's website 
Reply with quote Back to top
r_y_a_n
PostPosted: May 30, 2007 - 04:45 PM
Newbie


Joined: Dec 31, 2003
Posts: 15


I see the STK500 status is listed as 'End of Line'.
Does anyone know when the replacement board will arrive and what features it will include?
 
 View user's profile Send private message  
Reply with quote Back to top
kmr
PostPosted: May 30, 2007 - 04:55 PM
Raving lunatic


Joined: Apr 01, 2004
Posts: 3812
Location: New Mexico

The only reference I've seen for the STK600 was from issue two at http://www.avrtv.com which did not disclose anything about availability. I've be interested if anyone else knows of any published references to the STK600.

_________________
Kevin Rosenberg
http://b9.com
http://kevin.hypershots.com
 
 View user's profile Send private message Send e-mail Visit poster's website 
Reply with quote Back to top
abcminiuser
PostPosted: Apr 07, 2008 - 12:33 PM
Moderator


Joined: Jan 23, 2004
Posts: 6964
Location: Melbourne, Victoria, Australia

Updated to reflect the current STK600 information, and to add the AVRONE!.

- Dean Twisted Evil

_________________

 
 View user's profile Send private message Send e-mail Visit poster's website 
Reply with quote Back to top
Display posts from previous:     
Jump to:  
All times are GMT + 1 Hour
Post new topic   Reply to topic
View previous topic Printable version Log in to check your private messages View next topic
Powered by PNphpBB2 © 2003-2006 The PNphpBB Group
Credits