UPDATE: Atmel AVRprog.exe v1.40!

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

Hello community

Atmel released a beta version of the AVR Studio, the v4.11.401. Reference: http://www.atmel.com/dyn/product...

Among other things, Atmel updated the STK500/AVRISP firmware, and the popular stand alone interface of the AVR910 programmer, the AVRprog.exe.

The version of the new AVRprog.exe is 1.40 against the older v1.37, and supports a few more AVR chips, such as the mega169, mega64 and mega8535.

The complete list of the supported AVR Device-Codes to update your programmers, is:

0x10 AT90S1200rev.A
0x11 AT90S1200rev.B
0x12 AT90S1200rev.C
0x13 AT90S1200
0x20 AT90S2313
0x28 AT90S4414
0x30 AT90S4433
0x34 AT90S2333
0x38 AT90S8515
0x3A ATmega8515
0x3B ATmega8515 BOOT
0x41 ATmega103
0x42 ATmega603
0x43 ATmega128
0x44 ATmega128 BOOT
0x45 ATmega64
0x46 ATmega64 BOOT
0x48 AT90S2323
0x4C AT90S2343
0x50 ATtiny11
0x51 ATtiny10
0x55 ATtiny12
0x56 ATtiny15
0x58 ATtiny19
0x5C ATtiny28
0x5E ATtiny26
0x60 ATmega161
0x61 ATmega161 BOOT
0x64 ATmega163
0x65 ATmega83
0x66 ATmega163 BOOT
0x67 ATmega83 BOOT
0x68 AT90S8535
0x69 ATmega8535
0x6C AT90S4434
0x70 AT90C8534
0x71 AT90C8544
0x72 ATmega32
0x73 ATmega32 BOOT
0x74 ATmega16
0x75 ATmega16 BOOT
0x76 ATmega8
0x77 ATmega8 BOOT
0x78 ATmega169
0x79 ATmega169 BOOT

Regards,
Giorgos.

I hope for nothing; I fear nothing; I am free. (Nikos Kazantzakis)

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

DARN...I spend some time last night to find out the new device codes :( ...Didn't read your full post... The Mega 8535 shows the 8515 compatibility fuse...I guess they are pretty much the same chip and I have programmed a M8535 with the M8515 setting.

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

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

Hi John.
I am sorry. I guess I did not do a good job, advertising this update information!

Though I searched into the new AVRprog.exe for its chip support and updated my '910 programmer, I have not yet tested it because I do my programming using the ATAVRISP and my boot-loaders. I find the latter much easier and faster to work with.

Both the chips you mention, the m8515 and m8535, have equal memory size, and the same fuses at the same positions. The only difference is this particular fuse name.
Anyway, you could always use the m8515 and the m8515-Boot to program the mega8535, even before this update.
I think that Atmel's main reason for the AVRprog.exe update, was the support of mega169, the chip of Butterfly.

I believe that there are more people out there than anybody can immagine, that use the AVR910 programmer.
In my humble opinion, Atmel could add support for the mega162 fuses, the new megas, and the new page-mode tinies; there are still a lot of free slots between the device-code 0x00 and 0x7F in this executable...

Regards,
Giorgos.

I hope for nothing; I fear nothing; I am free. (Nikos Kazantzakis)

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

Quote:
there are still a lot of free slots between the device-code 0x00 and 0x7F in this executable...

And a lot more from 0x7f to 0xff, only a few have been used there for the x51 type of chips.

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

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

Do I need to do anythign to get the Mega64 o show up in the device drop-down list ? I upgraded to 4.11/1.40 but I don't see the Mega64 there. I think support for the tiny26 is new though ??

Thanks.

Mike Adams
ADI Development, Inc.
http://www.adidev.com

... When it has to actually work.

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

Hi. I think that support for the tiny26 came a couple of years ago, with the v1.37 release.

You need to edit the avr910.asm, update it with the device list posted above, and reprogram your hardware.
The AVRprog.exe shows only the devices that the programming hardware can support.

Be careful with the devices programmed in page-mode.
Search the forum and the academy for "avr910" and "avrprog". There is a lot of info.

PS. Always keep a working backup chip for your programmer, when updating the firmware...

Giorgos.

I hope for nothing; I fear nothing; I am free. (Nikos Kazantzakis)

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

OK...it's about time I posted an update to the programmer. Here's V3.2 which includes the 3 new devices. Also it is modified for the newer conditional assembler as it has both the Silicon chip's pinout and the standard pinout. Use silicon_chip=1 if you want to use it with the Australian version of the kit or silicon_chip=0 for the standard pinout for Mosi and Miso. ***** Leave the crystal at 4 MHZ**** I use the 8MHZ only because the board I may be testing may have an 8MHZ Xtal. I have commented out devices that cannot be used with this programmer.
P.S. I would like to see some sort of table for the chips that are known to work, perhaps we could use this thread to add known working chips. I have done a small list for the www.serasidis.gr site.

Attachment(s): 

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

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

js wrote:
OK...it's about time I posted an update to the programmer. Here's V3.2 which includes the 3 new devices. Also it is modified for the newer conditional assembler as it has both the Silicon chip's pinout and the standard pinout. Use silicon_chip=1 if you want to use it with the Australian version of the kit or silicon_chip=0 for the standard pinout for Mosi and Miso. ***** Leave the crystal at 4 MHZ**** I use the 8MHZ only because the board I may be testing may have an 8MHZ Xtal. I have commented out devices that cannot be used with this programmer.
P.S. I would like to see some sort of table for the chips that are known to work, perhaps we could use this thread to add known working chips. I have done a small list for the www.serasidis.gr site.

Dammit I downloaded v3.1 yesterday and hacked it to work with the mega8 as the chip in the programmer (because I had a couple spare I wanted to use), Ill download the 3.2 version and see if I canget that to go too, do you want me to post my changes if I get that going as well.

Phill.

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

Don't see any reason why it should not just drop into the M8, or any other chip same size or larger than the 2313, just change the definition file for the chip. By all means post your code, it will help someone that may want to do the same thing.

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

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

js wrote:
Don't see any reason why it should not just drop into the M8, or any other chip same size or larger than the 2313, just change the definition file for the chip. By all means post your code, it will help someone that may want to do the same thing.

No it was pretty easy, took all of 5 minutes :) Main thing was some defines to take acount of the two registers for baud rate generation that the m8 has. Also redefines the pins so that they matched the ones used by the built in SPI on the m8, though still using the software one. I'll update to the latest version and post code when I'm at home tonight.

Phill.

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

Of course you can be bold and try to use the real SPI and let us know how it works :-) seeing that you have one already available on your chip. :wink:

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

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

js wrote:
Of course you can be bold and try to use the real SPI and let us know how it works :-) seeing that you have one already available on your chip. :wink:

Heheh Yeah I may have a go at that at some point, for now here's the code modified to use the Mega 8. I have also implemented the switching of pin 3 of the 10 pin ISP header, so that this may be used with the Kanda STK 200/300 boards. This is needed because the kanda boards have a 4053 that is used to either route the programming port signals to the ISP header, or to the normal pin functions, a low on pin 3 is used to select programing mode, a high normal functions.

Attachment(s): 

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

What are the codes for the Mega162 ?

Thanks :)

Mike Adams
ADI Development, Inc.
http://www.adidev.com

... When it has to actually work.

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

Quote:
What are the codes for the Mega162 ?

Unknown :( If it's not on the list then it's not supported by AVRprog....HOWEVER.. you may find that using say the M161 setting will work. If you are willing to try it out please let us know if it works. :D

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

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

Hmm... Somehow it was working with the 1.37 release. i.e. I had been programming Mega162's and this is the only ISP programmer I have. Unfortunatly, I didn't save the hex file on the 2313 before I updated to 3.2 :( I'm pretty sure the Mega161 setting will work for the flash and eeprom. But the fuses...
I tried hand editing the hex file and enabling codes 0x62 and 0x63 which SEEMED like logical canidates. but no luck :(

Good thing I put a JTAG header on my boards :)

Thanks... I hope someone smarter ( or more persistant ) than me figures it out...

Mike Adams
ADI Development, Inc.
http://www.adidev.com

... When it has to actually work.

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

I have tried all codes from 0-ff and the ones in the assembler files are the ones that work. The only ones close to th m162 are the M16, M161, M163 perhaps you were using one of those settings. I havent used any of the m16x chips but isn't the m162 just a m16 with 2 serial ports? The fuses should be the same, unless you can enable/disable the second USART with the fuses.

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

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

Hi. Sorry guys, the m162 is not supported yet. Not by the AVRprog v1.40.

To be more precise, selecting the mega161, the mega163 or the m16 you can program the the m162 FLASH and EEPROM only.
That's because, all the chips above share the same FLASH_Size (= 16384B) and FLASH_Page_Size (= 128B).
Regarding EEPROM, they also share the same EEPROM_Size (= 512B) and in SPI mode can all be programmed byte-by-byte. The m162 EEPROM can additionally be programmed page-by-page, selecting to be programmed as the m16.

It is useless to try any random Device-Codes. Before I start this thread, I wrote a piece of code to scan the AVRprog.exe v1.40 for the AVR devices it supports, and posted them all.

As you can see in my wish list, in my second post of this thread, the mega162 Fuses are not supported. The m162 has three Fuse_Bytes (Low, High and Extended) instead of two. To program the m162 Fuses you can use the AVRdude as the front-end; or the ATAVRISP/ATSTK500.

We can also wait for Atmel to update this very usefull and practical little program...

EDIT: Last minute revision.
I forgot about the lately added mega169 support! Comparing the m162 fuses against the m169 ones, we have a match! Or, an almost match...

Explaining myself:
On both the chips above, the LOW and HIGH-Byte fuses are exactly the same, and reside at the same addresses. As for the Extended_Byte of Fuses, the only difference is at the 0x10 fuse-bit, the "ATmega161 compatibility mode" on the mega162, that does not exist on the m169.
The mega162 fuses can be programmed, selecting the mega169 on the AVRprog. As for the "ATmega161 compatibility mode" fuse bit, it will never be read, because it does not exist at the m169. Writing the m162 fuses, this particular fuse-bit will always be written as 0b1, disabling the "mega161 compatibility mode".

In short, in a new mega162 design, where the m161_compatibility_mode is unnesessary, AVRprog.exe v1.40 can fully support the mega162 chip, declaring it as a mega169.

Please, keep in mind that all the above are nothing but logical assumptions of mine, and have not been tested yet.

Kind regards,
Giorgos.

I hope for nothing; I fear nothing; I am free. (Nikos Kazantzakis)

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

And there was much rejoicing :)

Mike Adams
ADI Development, Inc.
http://www.adidev.com

... When it has to actually work.

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

:D hi everybody, does anybody know if by only modifying the AVR910 code can i have support for the Tiny 2313?

because as you know old 2313 is becoming extinc.

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

Quote:
if by only modifying the AVR910 code can i have support for the Tiny 2313?
Unfortunately not with AVR Studio as we rely on Atmel's releasing new device codes and it looks like they are no longer supporting AVRPorg for newer devices. You can use othere programmers software like the one that comes with Codevision or AVRDude (and others??) that support the Tiny2313. Codevision's porgrammer seems to work well.

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

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

well I see, the if no support from Atmel to AVR prog, then perhaps something can be done using the AVRProg OSP, i think that will be the best option.

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

hi all,
could you please provide me with a direct download link for Atmel AVRprog.exe v1.40 or upload it anywhere or send it to me (john111smith@gmail.com)

thanks in advance

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

It's likely to be a component of the "command line tools" on:

http://www.atmel.no/beta_ware/

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

It's part of Studio. Not upgraded for a while and will no longer be updated AFAIK.

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

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

Hi all :)
i need some help because i want to program a tiny24 chip with AVRprog but i can't find this model in the droplist.
do you know if there is some updates of this software or if i can use similar parts?

thank you for your help.

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

Look for AVROSPII. Otherwise Codevision has a programmer that may work (free demo version).

Which programmer are you using?

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

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

thank you for theses infos.
i use a homebuilt usb programmer from http://www.radiokot.ru/lab/contr...

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

Well if you scroll down the page it shows the Codevision programmer inerface as I pointed above.

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

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

i not understand what you say.
in codevision the atiny24 is not in the drop list

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

It is on mine (CV V2 demo) when I select the AVR910 programmer. Second from the top.

Attachment(s): 

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

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

ok i understand. you are right about codevision but this method is really slow.
the avrprog from avrstudio is really faster than codevision program.
but in avrprog from avrstudio the at tiny24 is not in the droplist.
thank you for your help.

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

I would guess that CodeVision driving the AVR910 programmer will be no faster or slower than AvrProg.

I assume that your AVR910 runs at a fixed 115200 baud and is relatively recent software.

Connect to the AVR910 by setting your CV terminal to the relevant COM number and 115200 baud. Type "p" then "i" and see the response. It may say 90S2313 and not a 90S1200. You may have to try again at 38400 or 19200 baud.

Alternatively just click Advanced on AvrProg and report back with the Software version.

avrdude should also be able to program your Tiny chip.

Just how long is your programming ? Please quote the # secs for the # words ( or # bytes) in your program.

David.

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

Just to note that Avrprog uses 19200 in fact. (or at least it does when it's talking to a Butterfly)

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

It autobauds. 115200, 38400, 19200. Avrdude will try 9600 as well.

David.

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

Hi community

The Version of AVRprog.exe is reported as 1.2.7.0, when i look at the .exe properties (in Windows).
The Version reports as V1.40 when i run it :?

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

Quote:
The Version reports as V1.40 when i run it
That was the last version releasd a few years ago. No new releases available.

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly