Rev Author Line No. Line
1015 mija 1 <html><head><title>Evertool - combined AVR programmer and debugger</title>
2  
3  
4 <link type="text/css" rel="stylesheet" href="index_soubory/andreas_style.css"></head><body>
5 <h1>Evertool</h1>
6  
7  
8 <p><emph>Evertool is an AVRISP/STK500-protocol <b>and</b> JTAGICE compatible Programmer/JTAG debugger.</emph></p>
9 <ul>
10 <li>ISP Programmer compatible with Atmel AVRISP, directly accessable with AVRStudio and avrdude</li>
11 <li>JTAG debugger compatible with Atmel JTAGICE, directly accessable with AVRStudio and AVaRice</li>
12 <li>Evertool supports all AVR devices Atmel supports with their AVRISP and JTAGICE.</li>
13 <li>Easy update of the programmer for new target AVRs via RS232/serial port</li>
14 <li>Rescue clock generaration to recover from wrong fuse-bit-settings</li>
15 <li>Simple hardware, standard parts</li>
16 </ul>
17  
18 <h3>Intro</h3>
19  
20 <p>The ATMEL AVRISP In-System Programmer is a small device to program ATMEL AVR microcontrollers.
21 The original ATMEL AVRISP device is described <a href="http://www.atmel.com/dyn/products/tools_card.asp?tool_id=2726">here</a>.
22 To avoid misunderstandings: ATMEL's AVRISP is a "small STK500".
23 Evertool which emulates an AVRISP is not a "bit-bang-programmer" or an
24 AVR910-type-programmer. Evertool "talks" STK500-protocol on the
25 RS232-port since the STK500-firmware ATMEL delivers with the AVRStudio
26 is
27 used. From the programming interface the AVRISP is compatible with the
28 Atmel STK500 in low-voltage serial programming mode.<br>
29 The ATMEL JTAGICE is a device to program and debug ATMEL AVR microcontrollers with JTAG-Interface (ATmega16, ATmega32,
30 ATmega64, ATmega128...) The ATMEL JTAGICE is described <a href="http://www.atmel.com/dyn/products/tools_card.asp?tool_id=2737">here</a>.</p>
31  
32 <p>This is a rebuild of <b>both devices on a single board</b>. The main
33 advantage of such a programmer is the
34 compatibility with the ATMEL AVRstudio since it uses the original ATMEL
35 firmware code supplied with AVRStudio on an ATmega16 (JTAG) and
36 ATmega8535 (ISP). So the front-end software (AVRStudio) and programmer
37 firmware are supported by the makers of the target-controllers and new
38 devices should be supported
39 as soon as a new AVRStudio gets released with the new firmware-files
40 for STK500/AVRISP or JTAGICE. With the AVRStudio AVRISP/STK500-plug-in
41 programming of flash, eeprom, fuse- and lockbits is an easy task. The
42 JTAG part of Evertool is compatible with AVRstudio's JTAGICE plug-in.
43 And yes, it is possible "to jtag" the AVR Butterfly with Evertool.</p>
44  
45 <p>Before you start you may concider this:</p>
46  
47 <ul>
48  
49 <li>The original ATMEL AVRISP device is cheap (prices May 2004: ca. 40 EUR incl. Tax at www.reichelt.de,
50 ca. 26 EUR+TAX at de.digi-key.com). So if you don't need the JTAG-part this universal programmer may not be worth the effort.</li>
51  
52 <li>The presented device has no ESD-protection IC or level-shifters on board. Refer to the
53 <a href="http://www.atmel.com/dyn/resources/prod_documents/Avrisp_Sch.pdf">schematic of the original ATMEL AVRISP device</a>.
54 (Sorry, the schematic of the Atmel JTAGICE is not available here.) But since the AVR IO-pins have a rather good internal
55 protection this should not be a problem.</li>
56  
57 <li>You need a programmer to build this programmer. A simple STK200-type dongle will do. Refer to the <a href="http://www.lancos.com/prog.html">
58 lancos.com PonyProg page</a>
59 which describes a simple programming interface. The dongle is only
60 needed for 10 minutes so you may borrow one from a friend. Another
61 AVRISP, an AVR910-type programmer or a STK500 will do too, of cause.
62 The programmer is just needed to program the special Evertool
63 bootloader into the ATmega16 once. Updating of Evertool to new
64 firmware(s) is done with the Evertool-bootloader - no additional
65 progammer needed.</li>
66  
67 <li>If you are just interested in the JTAG-part: Rainer Radow made a
68 board based on the Evertool JTAG-section. This board only emulates
69 the JTAGICE. More information on <a href="#etlight">"Evertool-Light"</a> further down on this page.</li>
70  
71 <li>If you are just interested in the AVRISP-part (although the original by ATMEL is cheap): see the
72 <a href="http://www.siwawi.arubi.uni-kl.de/avr_projects/avrispre/index.html">ispRE page</a>.</li>
73  
74  
75 </ul>
76  
77 <p>Evertool has some extra functions:</p>
78 <ul>
79 <li>Rescue mode, so AVR controllers where the clock fuse bits have been set incorrectly can be reseted and reprogrammed</li>
80 <li>Power-supply to the target AVR-controller-board either from a
81 regulated source or from the onboard voltage regulator (3,3V and 5V).</li>
82 <li>Reset Button for target AVR (connected to the AVRISP-part)</li>
83 </ul>
84  
85  
86 <hr>
87 <center>
88 <script type="text/javascript"><!--
89 google_ad_client = "pub-3972068798267869";
90 google_ad_width = 728;
91 google_ad_height = 150;
92 google_ad_format = "728x90_as";
93 google_ad_channel ="";
94 google_color_border = "336699";
95 google_color_bg = "FFFFFF";
96 google_color_link = "336699";
97 google_color_url = "008000";
98 google_color_text = "000000";
99 //--></script>
100 <script type="text/javascript" src="index_soubory/show_ads.js">
101 </script><iframe name="google_ads_frame" src="index_soubory/ads.htm" marginwidth="0" marginheight="0" vspace="0" hspace="0" allowtransparency="true" frameborder="0" height="150" scrolling="no" width="728"></iframe>
102  
103 </center>
104 <hr>
105  
106  
107 <h3>Changelog</h3>
108 <ul>
109 <li>29. Jun. 2004 - updated schematic, picture gallery.</li>
110 <li>30. Jun. 2004 - added "Evertool-light"</li>
111 <li>16. Sept. 2004 - added remark about "L"-type AVRs</li>
112 <li>20. Sept. 2004 - updated schematic (power-supply), Hardware Version 0.9</li>
113 <li>14. Jan. 2005 - updated Evertool schematic (JTAG VTG voltage-Divider). Thanks to Martin Kohout for spotting this.</li>
114 <li>28. Jan. 2005 - Remark about ATmega8535 chip-erase problem with bootloader version 0.2 in section "Software".</li>
115 <li>11. Feb. 2005 - Updated Bootloader binary (version 0.7)</li>
116 <li>7. Mar. 2005 - Remark about avrdude and STK500/AVRISP Firmware 2 in section "operation"</li>
117 <li>19. Apr. 2005 - moved Pull-up from PD4 to PD6. Thanks to Björn B.</li>
118 <li>17. Dec. 2005 - A current-limiting resistor (around 200 Ohm) should
119 be placed between the Target-Reset-Button and GND (Schematic will
120 be updated soon). Thanks to <a href="http://www.myevertool.de/">Dirk Büttner</a></li>
121 <li>24. Jan. 2006 - Information about how to program the AVR fuses with Ponyprog. Provided by Jeff Havens. Thank you, Jeff.
122 </li><li>2. Feb. 2006 - Added Step-by-Step guide for softare-installation on Evertool-LIGHT</li>
123 <li>8. Sept. 2006 - Evertool-based device with USB by Florian Schenk</li>
124 </ul>
125  
126  
127 <h3>License</h3>
128 <ul>
129 <li>The schematic is as free as ATMEL made their schematics freely available.</li>
130 <li>The layout is copyrighted. Free for non-commercial use. For commercial use please contact me by e-mail.</li>
131 <li>The bootloader is also copyrighted. Free for non-commercial use. For commercial use please contact me by e-mail.</li>
132 <li>It's also free to build yourself an Evertool for your work and just <b>use</b> the tool for programming/debugging.</li>
133 </ul>
134 <p>
135 Here commercial use is meant as: building and/or selling devices with the Evertool PCB-Layout with or without
136 a preinstalled Evertool-Bootloader or selling the Evertool-Bootloader itself without hardware
137 (as binary, source-code or programmed in a controller). Or just simply: If you earn money with my work,
138 you owe me a part of your profit.
139 </p>
140  
141  
142 <h3>Hardware</h3>
143  
144 <h4>Schematic</h4>
145  
146 <p>Evertool V 0.9 Schematic</p>
147  
148 <center>
149  
150 <table>
151 <tbody><tr>
152 <td>
153 <a href="http://www.siwawi.arubi.uni-kl.de/avr_projects/evertool/evertool_schem_0_9b.png">
154 <img src="index_soubory/evertool_schem_0_9b_small.jpg">
155 </a>
156 <br>
157 <a href="http://www.siwawi.arubi.uni-kl.de/avr_projects/evertool/evertool_schem_0_9b.png">enlarge (2400*1600 png-Graphics)</a>
158 </td>
159 <td>
160 <script type="text/javascript"><!--
161 google_ad_client = "pub-3972068798267869";
162 google_ad_width = 120;
163 google_ad_height = 240;
164 google_ad_format = "120x240_as_rimg";
165 google_cpa_choice = "CAAQo-WbzgEaCPNnEyuh612cKM3B93M";
166 //--></script>
167 <script type="text/javascript" src="index_soubory/show_ads.js">
168 </script><iframe name="google_ads_frame" src="index_soubory/ads_002.htm" marginwidth="0" marginheight="0" vspace="0" hspace="0" allowtransparency="true" frameborder="0" height="240" scrolling="no" width="120"></iframe>
169 </td>
170 </tr>
171 </tbody></table>
172  
173 </center>
174  
175 <!--
176 <p>Evertool V 0.3 Layout SMD (<b>preliminary</b>)</p>
177 <center>
178 <img src="evertool_layout_0_3_small.png">
179 </center>
180 -->
181  
182 <h4>Board</h4>
183  
184 <p>
185 </p><center>
186 <img src="index_soubory/evertool_0_6_pcb.jpg"><br>
187 Evertool V 0.6 JMP Board - Thanks to Mark Pepper for makeing the prototype-PCB. @0lmx:&nbsp;first ;-) )
188 </center>
189 <p></p>
190  
191 <p>Remarks:</p>
192 <ul>
193 <li> In this layout all "thru-hole"-parts are located on the backside. So a one-sided PCB with
194 some "wire-bridges" will do. Still around 100 holes to drill...</li>
195 </ul>
196  
197 <p>Florian Schenk has created a device based on the Evertool-design with an USB-Interface (FTDI232-IC) and created a layout. See <a href="#etusb">below</a>.
198  
199  
200 </p><p>Main Parts:</p><p>
201  
202 </p><ul>
203 <li>AVRISP-section
204 <ul>
205 <li>ATmega8535 or AT90S8535</li>
206 <li>MAX(3)232 (3,3V Version preferred)</li>
207 <li>2*5 pin-header</li>
208 <li>SUBD-9 Socket</li>
209 </ul>
210 </li><li>JTAGICE-section</li>
211 <ul>
212 <li>ATmega16</li>
213 <li>2 2*5 pin-headers</li>
214 </ul>
215 <li><a href="http://www.siwawi.arubi.uni-kl.de/avr_projects/evertool/partlist_0_5.txt">Complete Part-List the old Version 0.5.</a></li>
216 </ul>
217  
218  
219 <p>During development:</p>
220 <ul>
221 <li>any ISP capable AVR programmer (STK200-dongle, AVRISP, AVR910, STK500)</li>
222 </ul>
223  
224 <p>Since Evertool can be powered by the target-system the MAX<b>3</b>232 (or compatible
225 3.3V RS-232-interface-IC) is preferred for reliable programming and debugging of 3.3V target systems.
226 Some "5Volt-MAX232" (or compatible) ICs are known to work at 3.3V. But I do not
227 have any reliable source of information.</p>
228  
229 <p>Two remarks about low-voltage ("L"-type) AVRs:</p>
230 <ul>
231 <li><a href="http://www.robotgames.net/atmel/mega8_or_mega8l.htm">Here</a> is an information from
232 the AVR Technical support.</li>
233 <li>Another <b>non</b>-offical information: The datasheets state that only L-type AVRs
234 should be used for voltages below 4.5V. According to the information I've got from some "insiders"
235 (who do not work for ATMEL) there is no selection for "low-voltage" operation. The selection is done for
236 controllers which do not work reliably at 16MHz. Those are labeled as "L"-type. So there should be no
237 problem using "normal" (non-"L") AVRs with Evertool at 3.3V operation voltage. I have tested "normal"
238 AVRs with my prototypes and had no problems with Vcc=3.3V. Since XTAL-frequencies for both
239 Evertool-controllers are below 8MHz you may just select the type you can get cheaper.</li>
240 </ul>
241  
242 <!-- Text vom Link:
243 Is there actually a difference between the chips?
244  
245 Someone told me that the Mega8L chips were Mega 8L's that failed the 16MHz speed tests. I asked Atmel about this and this was their engineer's response:
246  
247 Dear Customer,
248 All versions are basically the same device. The only difference is that they are tested with different voltage levels and speed grads. There is no requalification of failing devices from one classification to another. As you can see by the definition of the voltage level and speed grades of the AVR devices, there is a clear relation between these settings. It is therefore very likely that a specific device from one classification will work within the specification limits of another classification. But this can never be guarantied from Atmel, due to the fact that that specific device is in production only tested within its own classification limits.
249 Best Regards,
250 Atmel AVR Technical Support
251  
252 So failed chips don't get sold off under a different label and it's very likely that a Mega8L will run at 16MHz and a Mega8 will run at 2.7V. Just note that they haven't been tested outside their specs and remember it's unlikely that either will run at 16MHz and 2.7V at the same time.
253  
254 Of course if you're buying a chip buy the one tested for the conditions you expect to use it under. For me the decision was easy because on a Robot voltage tolerance can be an issue. You don't want your Bot to coats to a halt in the middle of a bout because the voltage dipped below 4V. I also don't care about the higher speed because I plan on using the internal clock which only goes up to 8MHz anyway
255 -->
256  
257  
258 <h4>Development-Prototype-Board</h4>
259  
260 <center>
261 <img src="index_soubory/evertool_proto.jpg">
262 </center>
263  
264 <h4><a href="http://www.siwawi.arubi.uni-kl.de/avr_projects/evertool/gallery/index.html">Picture Gallery</a></h4>
265  
266  
267 <h3>Software</h3>
268  
269 <ul>
270 <li>The special Evertool-firmware (a "bootloader"). This bootloader
271 gets programmed into the ATmega16. The distribution-archive includes a
272 Windows batch-file for easier installation (see below). The installer
273 uses "AVRDUDE W32" which is also included. Make sure the driver
274 "give-io" is installed when a par-port-programmer (i.e. a
275 STK200-type-dongle) is used with WinNT/2k/XP. Give-io is also included.
276 Functions of the Evertool-bootloader: <ul>
277 <li>UART-Bootloader to upload the ATMEL JTAGICE firmware into
278 the flash of the ATmega16 on the Evertool-board thru AVRStudio/AVRProg.</li>
279 <li>AVR910-style
280 ISP programmer to program the ATMEL AVRISP firmware into the ATmega8535
281 on the Evertool-board thru AVRProg. The Evertool ATmega16 acts like the
282 AVR90S1200 in the original AVR910-design but the hardware UART and
283 hardware SPI of the ATmega16 are used instead of the "bit-bang" SPI and
284 software UART in the original design with an AVR90S1200. The Evertool's
285 bootloader programming support has only been tested with an ATmega8535
286 (also in AT90S8535-compatibility-mode) since this is the only Atmel
287 AVRISP/STK500 compatible controller.</li>
288 <li>High speed clock generation for rescue clock.</li>
289 </ul>
290  
291 Binary-distributions of the Evertool-bootloader. Only free for <b>non-commercial</b> use!
292 <ul>
293 <li><a href="http://www.siwawi.arubi.uni-kl.de/avr_projects/evertool/evertool_SW07_HW09_PB0_20050211.zip">Version 0.7_HW09</a> (Timestamp 20050211). For the Hardware-Versions 0.7-&gt;1.1.
294 </li><li><a href="http://www.siwawi.arubi.uni-kl.de/avr_projects/evertool/evertool_SW07_HW06_PA0_20050211.zip">Version 0.7_HW06</a> (Timestamp 20050211). For the Hardware-Version 0.6 JMP.
295 </li><li><a href="http://www.siwawi.arubi.uni-kl.de/avr_projects/evertool/evertool_0_2_bin_20040601.zip"><b>Old</b> Version 0.2</a>
296 (Timestamp 20040601). This version has two issues in the ATmega8535
297 programming-module: (a) Sometimes AVRProg looses sync. Just press the
298 OK-Button if the Sync-Dialog appears on the screen. (b) The ATmega8535
299 can't be erased from the Evertool-Bootloader which causes errors during
300 upgrade of the AVRISP-firmware when there is already some code in the
301 ATmega8535 flash. Both issues have no influence on the ATmega16
302 JTAG-firmware update and have been fixed in version 0.7 and 1.1a.</li>
303 </ul>
304  
305 Licensed users will find the commercial version 1.1a on the web-page mentioned in the Evertool manual.
306  
307 </li><li>ISP-Programming software compatible to the programmer you've got from your friend (AVRDUDE, ponyprog, STK500-plungin etc.).
308 To upload the bootloader into the ATmega16 and set the fuses and lock-bits in the ATmega8535 and ATmega16</li>
309 <li>AVRStudio 4 - AVRProg (from the tools-menu) is needed to upload the AVRISP-firmware and the JTAGICE-firmware which also
310 come with AVRStudio.</li>
311 </ul>
312  
313 <hr>
314 <center>
315 <script type="text/javascript"><!--
316 google_ad_client = "pub-3972068798267869";
317 google_ad_width = 728;
318 google_ad_height = 150;
319 google_ad_format = "728x90_as";
320 google_ad_channel ="";
321 google_color_border = "336699";
322 google_color_bg = "FFFFFF";
323 google_color_link = "336699";
324 google_color_url = "008000";
325 google_color_text = "000000";
326 //--></script>
327 <script type="text/javascript" src="index_soubory/show_ads.js">
328 </script><iframe name="google_ads_frame" src="index_soubory/ads_003.htm" marginwidth="0" marginheight="0" vspace="0" hspace="0" allowtransparency="true" frameborder="0" height="150" scrolling="no" width="728"></iframe>
329 </center>
330 <hr>
331  
332 <!--
333 There is a small error in the public bootloader-code (0.2): sometimes AVRProg looses sync. Just press the OK-Button if the Sync-Dialog appears on the
334 screen. In the commercial version of the bootloader this has been fixed.
335 <br>
336 There is another small error in the 0.2-Bootloader:
337 the ATmega8535 can't be erased from the Evertool-Bootloader which causes errors during upgrade of the AVRISP-firmware when there is already some code
338 in the ATmega8535 flash. Workaround for Version 0.2: use another programmer (a "ParPort-Dongle" and PonyProg or avrdude will do) and erase the ATmega8535
339 (Chip- or Flash-Erase) before uploading a new stk500-firmware (stk500.ebn) via the Evertool bootloader. The problem has been fixed in the commecial version
340 a while ago and a new non-commercial binary will be available here soon after some testing of the "backport". This is a non-issue for Evertool-light,
341 the internal ATmega16 "Application-Section-Erase" does work.
342 </li>
343 -->
344  
345  
346 <h3>Step-by-Step Guide to Software-Installation</h3>
347  
348 <ol>
349 <li>Build the board and double-check it.</li>
350 <li>Set the reset-select jumper near the ATMega16 to "ISP ATmega16".</li>
351 <li>Set the reset-select jumper near the ATMega8535 to "ISP ATmega8535".</li>
352 <li>Connect your programmer (STK200-dongle or whatever) to the ATmega16 ISP-Port.</li>
353 <li>Connect an external power supply to the Evertools board if STK200-PPI, AVRISP or AVR910-type programmer is used.</li>
354 <li>Upload the Evertool bootloader into the ATmega16 flash using
355 PonyProg or avrdude or whatever software can talk to you programmer.</li>
356 <li>Program the ATmega16 fuses and lock-bits (external high freq.
357 crystal, boot-reset, boot-size 1024 words, SPM in boot-section locked).</li>
358 <li>Connect your programmer (STK200-dongle or whatever) to the ATmega8535 ISP-Port.</li>
359 <li>Program the ATmega8535 fuses (external high freq. crystal, AT90S8535-compatibility flag (not needed - but can not do any harm)).</li>
360 <li>Set the reset-select jumper near the ATmega16 to "Normal/ATmega8535 programming".</li>
361 <li>Power-down the Evertool board.</li>
362 <li>Connect your PCs serial port to the Evertool board with a serial/RS232 cable.</li>
363 <li>Select the UART-Jumpers/Switch to connect to the ATmega16.</li>
364 <li>Close the "enable Bootloader (BL)" Jumper near the ATmega16.</li>
365 <li>Connect the ATmega16 ISP Pin-Header ("ISP mega16") to the ATmega8535 ISP Pin-Header ("ISP mega8535") with a 10-wire cable (You
366 will need such a cable to connect Evertool to you target boards - so this is no extra part).</li>
367 <li>Power-up the board.</li>
368 <li>Start AVRStudio, start Tools/AVRProg. <b>(2)</b></li>
369 <li>Select "ATmega16 boot" from the AVRProg device selection.</li>
370 <li>Select [Browse] and browse to /programs/Atmel/AVR Tools/JTAGICE in
371 the file-dialog, select the file Upgrade.ebn (set filter to *.*).</li>
372 <li>Press the [Program] button in the "Flash" frame. Now the JTAGICE
373 firmware gets uploaded into the ATmega16 via "self-programming" aka
374 bootloader-programming and verified from the Evertool-bootloader.</li>
375 <li>Select "ATmega8515 boot" (yes: no typo. It's 8515 not 8535) from the AVRProg device selection.<b>(3)</b></li>
376 <li>Select [Browse] and browse /programs/Atmel/AVR Tools/STK500, select the file stk500.ebn (set filter to *.*).</li>
377 <li>Press the [Program]-Flash button. AVRProg will ask to continue
378 since the Flash "overwrites boot", select "continue". The next message
379 box will ask if the file should be truncated: say "no". Now the
380 Evertool-bootloader uploads and verifies the AVRISP firmware into the
381 ATmega8535 via serial-(in-system-)programming.<b>(4)</b></li>
382 <li>Power-down the board</li>
383 <li>Remove the cable between ATmega16 ISP-connector and ATmega8535 ISP-connector.</li>
384 <li>Open the Bootloader-Enable ("enable BL") Jumper near the ATmega16</li>
385 <li>Set the reset-select jumper near the ATMega8535 to "normal/AVRISP mode"</li>
386 <li>Done.</li>
387 </ol>
388  
389 <b>Remarks:</b><br>
390 (1) n.t.<br>
391 (2) If the message box "No supported board found" appears on the screen
392 verify that no user software uses the COM-port, the UART-select
393 jumpers/switch are/is set to ATmega16/JTAG, the Evertool bootloader is
394 programmed into the ATmega16, the board is powered and the "enable
395 Bootloader"-jumper is set. You may also read the <a href="http://www.atmel.com/dyn/resources/prod_documents/DOC1021.PDF">AVRProg user guide</a>.<br>
396 (3) You may verify that the ISP connection between the ATmega16 and the ATmega8535 is established by pressing the [Advanced]
397 button while the device "ATmega8515 boot" is selected. The Advanced Screen should show the ATmega8535 device signature (see the
398 <a href="http://www.atmel.com/dyn/resources/prod_documents/doc2502.pdf">ATmega8535 datasheet</a>).<br>
399 (4) If you get verify-errors after the ATmega8535 programming first
400 verify that all connections and jumper settings are correct and
401 the signature-bytes can be read (Advanced Button). If there are still
402 problems press the Chip-Erase button in the advance stettings Chip
403 Erase for the Mega8535 is implemented in bootloader version 0.7 and
404 above.<br>
405  
406  
407 <p>The steps 1-10 are only needed for the first time to prepare the
408 "virgin" ATmegas. The binary-distribution of the Evertool bootloader
409 includes a setup-routine which will partly automate the steps 1-10
410 (flash upload and fuse-settings). All other steps are needed every time
411 the AVRStudio whants to update an AVRISP or JTAGICE to a new firmware.
412 Avoid letting AVRStudio do the updates automatically (it will not
413 work). Just cancel the "upgrade-dialogs" and follow the
414 "AVRProg-procedure" (Steps 11 to end) above.</p>
415  
416 <p>A description how to program the ATmega16- and ATmega8535-fuses with PonyProg provided by Jeff Havens can be found on
417 <a href="http://www.siwawi.arubi.uni-kl.de/avr_projects/evertool/Evertool_fuses_PonyProg.html">this page</a>.
418  
419 </p><p>The commercial version of the bootloader comes preprogrammed on
420 an ATMega16. No additional programmer ist needed for the initial
421 Evertool setup. There are no "overwrite" and "truncate" dialogs during
422 ATmega8535 programming when using the commercial version and the
423 ATmega8535 fuses are set to the correct values by the bootloader.</p>
424  
425 <h3>Operation</h3>
426  
427 <p>Depending on the UART-Jumpers/switch and the connection to the target the board now acts as an AVRISP or as a JTAGICE.</p>
428 <ul>
429 <li>Set the UART-jumpers to ATmega8535 and connect the target to the
430 ATmega8535 ISP pin-header (either 10pin "Kanda-standard" or 6pin "Atmel
431 standard") and the board will act as an
432 AVRISP/STK500-protocol-programmer which can be accessed from
433 AVRStudio's Tools-menue (or from AVRDUDE as programmer-type STK500).
434 See the Application-note <a href="http://www.atmel.com/dyn/resources/prod_documents/doc2521.pdf">AVR 042</a>
435 for pin-assigments.
436 avrdude 4.3.0 does not support the AVRISP/STK500 firmware version 2.x
437 which is shipped in the stk500.ebn-file of AVRStudio 4.11. An
438 experimental avrdude-Version with firmware version 2 support is
439 available from my <a href="http://www.siwawi.arubi.uni-kl.de/avr_projects/index.html#avrdudew32">AVR-projects-page</a>.</li>
440 <li>Set the UART-jumpers/switch to ATmega16 and connect the target to the JTAG-header and the board will act
441 as a JTAGICE which can be accessed from the AVRStudio Tools-menu.</li>
442 <li><b>Special "Rescue"-Mode</b>: When the Bootloader-Enable jumper is
443 set during power-up a clock-signal (0,73MHz) is available at the
444 "Rescue-Clock" pin-header. With this clock-signal connected to the
445 XTAL1-pin of an AVR a misconfigured controller can be accessed and
446 reprogrammed. (helps with fuses: external clock-signal instead of
447 external crystal/quarz et.). Use the AVRISP part of Evertool to
448 reprogram the fuses with the AVRStudio STK500/AVRISP plug-in (the
449 JTAGICE part is not available if the ATmega16 is in
450 bootloader/rescue-mode).</li>
451 </ul>
452  
453 The operation is described in the AVRStudio online-help. The AVRISP parts acts exactly as the original. The only extension is
454 the "Target Reset" button.<br>
455 The JTAGICE-Part <!-- may not show the target-voltage correctly but other functions (programming/debugging) work as expected and --> works as
456 described in the AVRStudio online-help. You may also use the JTAG-section with the <a href="http://avarice.sourceforge.net/">AVaRICE</a>
457 interface-software to the gnu-debugger (gdb) on non-MS-Windows machines.
458  
459  
460 <h3>Questions and Answers</h3>
461  
462  
463 <!--
464 <p><cite>Are printed circuit boards available?</cite><br>
465 Coming soon! A bundle of a PCB (Version 1.1) and an ATmega16 preprogrammed with an improved version of the Evertool bootloader will
466 be available soon. All needed parts are "thru-hole" (see picture below) and easily available. No additional programming-hardware
467 needed which means only the steps 12-end in the "step-by-step guide" above have to be done for firmware-installation. No additional
468 programming hardware needed. Kits with all needed parts and fully assembled and tested Evertools will follow.
469 Please "stay tuned" for further information.</p>
470 <center><img src="et_pdip.jpg"><br>Layout and Picture (c) 2004 <a href="http://www.ispf.de">www.ispf.de</a></center>
471 -->
472  
473 <p><cite>Are ready-made Evertools available?</cite><br>
474 Yes, see the <a href="http://www.myevertool.de/">Myevertool-Page</a>. The page is in German but you can contact
475 Mr. Büttner by e-mail in English. Myevertool is a sligthly modified version of the Evertool-design and has
476 a licensed version of the "commercial" Evertool-Bootloader preinstalled.</p>
477  
478 <p><cite>Are printed circuit-boards available?</cite><br>
479 Yes, see the <a href="http://www.myevertool.de/">Myevertool-Page</a>.
480 The page is in German but you can contact Mr. Büttner by e-mail in English (info (AT) myevertool [D O T] de).</p>
481  
482 <p><cite>Can I have the Eagle-files?</cite><br>
483 No, I do not offer Eagle-Files neither schematic nor layout.</p>
484  
485 <p><cite>Why two controllers?</cite><br>
486 Since the original Atmel firmwares are used, there have to be two
487 controllers. One for each task. It may be possible to extend the Evertool-bootloader
488 to emulate an STK500/AVRISP or AVR910-type programmer but I do not have enough
489 time and knowledge to keep this software up-to-date with every new AVR-device.</p>
490  
491 <p><cite>Why no USB interface?</cite><br>
492 An USB to serial (RS232) converter has been tested succesfully with the Evertool prototyp-board. This
493 converter is avaialable for only 13EUR inlcuding cable at www.reichelt.de. A FT232/245 with USB-socket
494 and cable is not cheaper in small amounts. For a device similar to the Evertool but with USB-Interace see <a href="#etusb">below</a>.</p>
495  
496 <p><cite>Why SMD?</cite><br>
497 Well, no reason. It's my first SMD-project. Thought Evertool might be "nicer" in SMD.</p>
498  
499 <p><cite>Does Evertool support Debugwire?</cite><br>
500 No. So far no MKII schematic is available for "inspiration" and the MKII Firmware coming
501 with AVRStudio seems to have another format than the ebn-files.</p>
502  
503 <p><cite>AVRProg shows "No supported board found" - what's wrong?</cite><br>
504 Please double check your board and double check that all configuration-steps
505 have been done as described above before sending me an e-mail. You can test
506 if the Bootloader is installed, the fuses are set correctly and the bootloader
507 is active by using a terminal software (Hyperterm, Bray Terminal...). Set the terminal
508 to: 19200, 8N1, no flowcontrol, mount the "enable Bootloader (BL)"-Jumper,
509 apply power to the board, make sure the RS232-level-shifter is connected to
510 the ATmega16 and send a S (capital S) to the Evertool.
511 If everything is o.k. the bootloader will answer with the characters:
512 AVRBOOT. If not: double check...</p>
513  
514  
515 <hr>
516 <a name="etlight"></a>
517 <h2>"Evertool-Light"</h2>
518 <p>"Evertool-Light" is a stripped down version of Evertool which emulates the JTAGICE only.
519 The design has been done by Rainer Rakow. The schematic is based on my Evertool design.
520 Basicly this is an extended version of the "BOOTICE"-design which can be found somewhere else. </p>
521  
522 <center>
523 <a href="http://www.siwawi.arubi.uni-kl.de/avr_projects/evertool/light/etl_schem.jpg"><img src="index_soubory/etl_schem_t.jpg"></a>
524 <a href="http://www.siwawi.arubi.uni-kl.de/avr_projects/evertool/light/smd_side.jpg"><img src="index_soubory/smd_side_t.jpg"></a>
525 <a href="http://www.siwawi.arubi.uni-kl.de/avr_projects/evertool/light/connector_side.jpg"><img src="index_soubory/connector_side_t.jpg"></a>
526 <br>Click on the images for higher resolution pictures.
527 </center>
528  
529 <p>
530 <a href="http://www.siwawi.arubi.uni-kl.de/avr_projects/evertool/light/evertool_light_rr.zip">zip-Archive including schematic and PCB-layout (Postscript-files) of Evertool-Light</a> (ca. 180kB)
531 <br>(9.Jul.2004: Message from Rainer: the free end of resistor R2 should be connected to GND in his layout.)
532 </p>
533  
534  
535 <h3>Software-Installation on Evertool LIGHT</h3>
536  
537 <ol>
538 <li>Build the board and double-check it.</li>
539 <li>Connect your programmer (STK200-dongle or whatever) to the ISP-Port.</li>
540 <li>Connect an external power supply to the Evertool-Light board if STK200-PPI, AVRISP or AVR910-type programmer is used.</li>
541 <li>Upload the Evertool bootloader (which can also be used for
542 Evertool-Light) into the ATmega16 flash using PonyProg or avrdude or
543 whatever software can talk to you programmer.</li>
544 <li>Program the ATmega16 fuses and lock-bits (external high freq.
545 crystal, boot-reset, boot-size 1024 words, SPM in boot-section locked -
546 lfuse:&nbsp;0xff hfuse:&nbsp;0xd8:m lock:&nbsp;0x2f).</li>
547 <li>Power-down the Evertool-Light board.</li>
548 <li>Connect your PCs serial port to the board with a serial/RS232 cable.</li>
549 <li>Close the "enable Bootloader (BL)" (JP3) Jumper</li>
550 <li>Power-up the board.</li>
551 <li>Start AVRStudio, start Tools/AVRProg. <b>(1)</b></li>
552 <li>Select "ATmega16 boot" from the AVRProg device selection.</li>
553 <li>Select [Browse] and browse to /programs/Atmel/AVR Tools/JTAGICE in
554 the file-dialog, select the file Upgrade.ebn (set filter to *.*).</li>
555 <li>Press the [Program] button in the "Flash" frame. Now the JTAGICE
556 firmware gets uploaded into the ATmega16 via "self-programming" aka
557 bootloader-programming and verified from the Evertool-bootloader.</li>
558 <li>Power-down the board</li>
559 <li>Open the Bootloader-Enable ("enable BL"/JP3) Jumper</li>
560 <li>Done.</li>
561 </ol>
562  
563 <b>Remarks:</b><br>
564 (1) If the message box "No supported board found" appears on the screen
565 verify that no user software uses the COM-port, the UART-select
566 jumpers/switch are/is set to ATmega16/JTAG, the Evertool bootloader is
567 programmed into the ATmega16, the board is powered and the "enable
568 Bootloader"-jumper is set. You may also read the <a href="http://www.atmel.com/dyn/resources/prod_documents/DOC1021.PDF">AVRProg user guide</a>.<br>
569  
570 <p>The steps 1-5 are only needed for the first time to prepare the new
571 ATmega16. The binary-distribution of the Evertool bootloader includes a
572 setup-routine which will partly automate the steps 1-5 (flash upload
573 and fuse-settings). All other steps are needed every time the AVRStudio
574 whants to update the JTAGICE to a new firmware. Avoid letting AVRStudio
575 do the updates automatically (it will not work). Just cancel the
576 "upgrade-dialogs" and follow the "AVRProg-procedure" (Steps 6 to end)
577 above.</p>
578  
579  
580 <center>
581 <script type="text/javascript"><!--
582 google_ad_client = "pub-3972068798267869";
583 google_ad_width = 728;
584 google_ad_height = 150;
585 google_ad_format = "728x90_as";
586 google_ad_channel ="";
587 google_color_border = "336699";
588 google_color_bg = "FFFFFF";
589 google_color_link = "336699";
590 google_color_url = "008000";
591 google_color_text = "000000";
592 //--></script>
593 <script type="text/javascript" src="index_soubory/show_ads.js">
594 </script><iframe name="google_ads_frame" src="index_soubory/ads_004.htm" marginwidth="0" marginheight="0" vspace="0" hspace="0" allowtransparency="true" frameborder="0" height="150" scrolling="no" width="728"></iframe>
595 </center>
596  
597  
598 <hr>
599 <a name="etusb"></a>
600 <h2>"Evertool-USB"</h2>
601  
602 <p>Florian Schenk has extended the Evertool with an USB-Interface (FTDI232-USB-to-serial IC). He has also created a layout.
603 The schematic and the Eagle-files (.brd and .sch) can be downloaded from <a href="http://www.siwawi.arubi.uni-kl.de/avr_projects/evertool/evertool_usb_v1.zip">[here]</a> (timestamp 20060908).
604 If you have questions you may ask Florian Schenk directly by e-mail (schenk (At) schema2000 (Dot) de).</p>
605  
606 <p>I (M.Thomas) do not offer any support for this ET-USB-design. I have
607 not reviewed the layout and I do not own such a device. Anyway, at
608 least a remark from my side: Take care about the voltage-supply. When
609 the jumper near the USB-connector of "ET-USB" is closed VCC for the
610 complete device is 5V and
611 the levels at the ISP- and JTAG-connectors are also near 5V. This is a
612 "no-no" when connecting to a 3,3V target. If in doubt leave the
613 supply-jumper near the USB-connector open and supply the ET-USB from
614 the target-board.</p>
615  
616  
617  
618 <hr>
619  
620 <p><a href="http://www.siwawi.arubi.uni-kl.de/avr_projects/index.html"> back to my AVR projects page</a></p>
621  
622 <hr>
623 Martin Thomas<br>
624 <img src="index_soubory/mtmailadr2.jpg" alt="e-mail: mthomas (AT) rhrk (D O T) uni-kl (DOT) de"><hr>
625 <p align="right">
626 <small>
627 <font color="#aaaaaa">
628 <br>21436 hits since
629 <br>Last mod.: Wednesday, 29-Aug-2007 03:27:24 CEST
630 <br><!-- # echo var="REMOTE_HOST" -->
631 </font>
632 </small>
633 </p>
634  
635 </body></html>