AVRDUDESS is a GUI for AVRDUDE, a tool for programming Atmel microcontrollers.

Some key features:

  • Supports all programmers and MCUs that AVRDUDE supports
  • Supports presets, allowing you to change between devices and configurations quickly and easily
  • Drag and drop files for easy uploading
  • Automatically lists available COM ports
  • Cross-platform with the use of Mono for Linux & macOS
Like AVRDUDESS? Leave a tip!


AVRDUDESS-2.13-setup.exe (1.95 MB)
AVRDUDESS 2.13 (Installer for Windows Vista and newer)
Downloaded 54493 times
MD5: FC1C306CCA78D5FB3A1058F35EA44A46

AVRDUDESS-2.13-portable.zip (596.72 KB)
AVRDUDESS 2.13 (Portable for any OS)
Downloaded 21954 times
MD5: 42A5DD458425F18F82C82AE30A4D5934

Source available on GitHub

Requires .NET Framework 2.0 SP1 or newer. All systems since Windows Vista will have the required version already installed.

Linux & macOS
Can be ran using Mono.
Has not been tested on macOS, but should work. Might need the --arch=32 argument.
mono --arch=32 avrdudess.exe

Installing on Ubuntu 18.04
Install Mono (this is the minimum required, you can use mono-complete for a full install):
sudo apt-get install libmono-system-windows-forms4.0-cil
On older versions of Ubuntu you might need to use libmono-winforms2.0-cil instead.

Install AVRDUDE and AVR-GCC (for avr-size):
sudo apt-get install avrdude gcc-avr

Run AVRDUDESS with mono, you might have to run as root (sudo) so that AVRDUDE can access ports if you haven’t changed any permissions or rules.d stuff:
mono avrdudess.exe


36 pings

Skip to comment form

  1. Beautiful program! I must ask though, is it open? I’d definitely love to hack on it!

    1. Yup, source is in the download.

    • Hemal on February 19, 2013 at 11:49 am
    • Reply

    Its a great GUI, support many programmers and devices,
    If its not too much to ask for, can you please make a linux port?
    Thank You.

    1. Hmm, perhaps, I’ll see what I can do.

    2. It works in Linux with mono with out any changes, just need to copy the avrdude binary around, I’ve updated the main post with how to do it.

  2. I didn’t see the ATtiny4313 listed in the supported uC list…


    Great job BTW – nicely done!

    1. Thanks
      The ATtiny4313 isn’t in the supplied avrdude.conf file (conf seems to have been last updated 2010-01-15, apart from me adding the ATmega328 non-P), updating the avrdude.conf file will add it to the drop down list.
      Link – Extract avrdude.conf.in, rename to avrdude.conf and replace the old one.

      Seems the new avrdude.conf has a few extra things that the supplied avrdude.exe doesn’t support, you’ll probably have to compile the new avrdude as well.

      Actually just deleting the lines avrdude moans about seems to be ok.

    • ROHIT on February 20, 2013 at 3:11 pm
    • Reply

    Nice Work! This would save me headaches with command prompt! Thanks! 🙂

    • Alastair D'Silva on February 21, 2013 at 8:53 pm
    • Reply

    Great work.

    You can get the latest AVRDude for Win32 from the MHV AVR Tools distribution that I maintain:

    I’d like to include your work in the next release of MHV AVR Tools.

    Has anyone tried it using Mono under OSX/Linux? It would be nice if it ran under all the platforms I support.

    1. Hey, thanks for the link, I’ll include the latest avrdude in the next release. Including AVRDUDESS in your tools distro is fine.
      I’ve just tried it in Ubuntu 12.10 with mono and it works :D, you just need to copy the avrdude binary around, I’ll make it so you don’t have to do that for the next release.

    • s1cK on March 2, 2013 at 2:10 pm
    • Reply

    Hey man, nice work. I’m using an USBasp that I bought from ebay and I get this.

    avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
    avrdude.exe: error: programm enable: target doesn’t answer. 1
    avrdude.exe: initialization failed, rc=-1
    Double check connections and try again, or use -F to override
    this check.

    avrdude.exe done. Thank you.

    Can you tell me any possible solution to this? Thanks in advance.

    1. avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
      You need to update the firmware LINK, to do so you will need another programmer (another USBasp, Arduino as ISP etc).

      avrdude.exe: error: programm enable: target doesn’t answer.

      Make sure you’ve connected right. Once you’ve updated the USBasp firmware try setting bit clock to 32.

        • Arpy on May 9, 2013 at 11:20 am
        • Reply

        USBasp wants to use too fast SCK for MCUs with 1MHz clock (8 MHz internal oscillator with div 8 – many AVR’s deafult setting).
        On the chinese USBasp version, they forget to put on the PCB a slowSCK pinhead (madness – it’s already there on the original version).
        So if you pull down the programmer’s PC2 pin to GND, it will work with slowSCK option.
        (If you are interested, the original version: http://www.fischl.de/usbasp/ )

        Regards, Arpy

    • neptune on March 31, 2013 at 3:07 am
    • Reply

    Thanks for your hard work – clearly much better than the other GUI’s that I was struggling with.

    Is there any way for the selected preset and associated settings to be “sticky” ie: load automatically when I restart the program?

    1. Thanks :). Not at the moment, but if you want to edit the source a quick hack to get close to what you want would be to add cmbPresets.SelectedIndex = 3; at the end of the Form1_Load() method, that will load whatever preset is at position 3 in the drop down list (starting at 0) when the program loads. I’ll add sticky settings for the next version.

    • s1cK on June 20, 2013 at 4:27 pm
    • Reply

    A new version of AVRDUDE has been released on May 8th. Can you replace your program with the newer version? I got my chinese USBASP updated and it worked fine with atmega8L and atmega328P, however, it didn’t work with atmega328 (non pico power version). Thanks in advance.

    1. To get the ATmega328 non-P working on older versions of avrdude you only need to modify the avrdude.conf file, which I’ve done and included with the download. If you want the newer version of avrdude you can replace the avrdude.exe and avrdude.conf files.

        • Phil on February 20, 2014 at 1:42 pm
        • Reply

        Yet again, claims that it is oh so easy to handle Atmega328s but, I am afraid that you are wrong! There are a few people out there that claim to have got over the problem by simply editing the avrdude.conf file and there are others who say that the new version of AVRDUDE fixes the problem. Well, I can state that this simply isn’t rue unless they have some strange combination of AVRDUDE/avrdude.conf that only exists in another universe.

        The new AVRDUDE V6.x.x has serious problems with some AVR programmers including the AVRISP MKII and the author of AVRDUDE admits this. Yes, the new avrdude.conf file includes an entry for the Atmega328 but… this config file will not work with older versions of AVRDUDE. So, please do not set false hope. Atmega328s are still a problem for most people but, luckily, not for me as I have written some code which overcomes the AVRDUDE problem and I have also modified the ArduinoISP sketch to suit both 328s and 328Ps.

        1. This thread was created when AVRDUDESS was using AVRDUDE v5.11.1. I’ve not had any problems with AVRDUDE 5.11.1 or 6+ when using a USBasp programmer (like OP) with 328 or 328P, perhaps this quick fix doesn’t work with other programmers, but for OPs needs it does the trick.

    • Zolee on July 9, 2013 at 5:36 pm
    • Reply

    Hi, Zak!

    MONO and avrdude are installed. Run with MONO the avrdude can’t find the avrisp mkII. Okay, run as root the program, but I don’t know, how can I this (I’m a Linux-beginner). I use the Kubuntu 12.04.

    Thank you!

    1. To run as root use sudo mono avrdudess.exe.

        • Zolee on July 10, 2013 at 4:49 am
        • Reply

        Hi, Zak!

        The avrdude’s reply:

        avrdude: stk500v2_ReceiveMessage(): timeout

        If I try this in terminal, the avrisp mkII works fine:

        sudo avrdude -c avrispmkii -p x128a1 -P usb -v

        What”s wrong?

        1. Did you put ‘usb’ into the Port option in avrdudess and does the command line box at the bottom of the avrdudess window show the same parameters as what you’re giving avrdude directly?

            • Zolee on July 14, 2013 at 8:24 am

            “Did you put ‘usb’ into the Port option in avrdudess”

            Cannot be found in the list any usb port, but the programmer is connected. If I connect an FT232RL, the usb port is appear in the list, but this no the avrISP’s port.

            “and does the command line box at the bottom of the avrdudess window show the same parameters as what you’re giving avrdude directly?”

            Yes, it’s work.

            The avrISP MKII is available in a terminal with the usage of the avrdude directly.

          1. The port drop down only lists available serial ports, for non-serial ports like usb and parallel you need to manually type it in to the box.

            • Zolee on July 14, 2013 at 6:25 pm

            Thanks, Zak!

            It’s work now.

          2. No problem 😉

    • bill rowe on July 12, 2013 at 8:53 pm
    • Reply

    Excellent gui but I’m not sure on the fuses/lock bits. When I press “read from device” does it always read or does it depend on the check box below the button?

    1. The check box is only for writing the fuse and lock bits when you press the ‘Start!’ button. Pressing ‘Read from MCU’ will always read.

    • Mart Lang on October 4, 2013 at 4:33 am
    • Reply

    hello is there a way to enlarge the programmers selection window, would be nice to read a little bit more …

    great software, at last a better gui

    1. The source is in with the download (in src folder) so you can edit the GUI as you wish. You’ll need Visual Studio to open the project and compile etc.

    • Mart Lang on October 5, 2013 at 1:31 am
    • Reply

    thanks but i have no knowledge about Visual Studio … was hoping for a quick fix loll

    • Dean on October 17, 2013 at 2:59 am
    • Reply

    I’ve been using this for sometime. Works flawlessly on Windows 7 and my USBtiny programmer.
    A few suggestions/wishes:

    1. Wish that the console is integrated on the main window so that both can be quickly accessed with just one mouse click
    2. A separate button just to flash the fuse would be nice instead of going through the start and flashing everything up again.


    • Kamrul Hussain on October 29, 2013 at 8:02 am
    • Reply

    It is a nice GUI for AVRdude. I have been using it with USBasp to program ATmega series. But I would like to know if its possible to use usbasp for programming ATxmega series with this one in PDI format. usbasp hardware needs an interface which is pretty easy to build. But at the same time avrdude needs a patch for it. May be the following link can be useful to explain my field of interest.

    1. AVRDUDESS doesn’t need to be changed, only avrdude and USBasp need to be modified, everything seems to be explained in that link.

    • Richard markham on October 30, 2013 at 8:07 pm
    • Reply

    Hi Zak,
    Have you tried AVRDUDESS with AVRDUDE 6? It gets a bit stuck with Xmega devices as these are listed differently in the conf file now.

    In the device drop down, you just get a single Xmega entry saying “AVR XMEGA family common values”

    Is there a way around that?


    1. Hey,

      Some changes are needed to correctly parse the new config, if you’re up to editing the code and recompiling in Visual Studio you can replace the code at the bottom of the loadConfig() method in Form1.cs with this:

      (Code by Uwe Tanger, I’ve not tried it yet)

                  for(int i=0;i<lines.Length;i++)
                      int pos;
                      string s = lines[i].Trim();
                      if ((s.StartsWith("part") || s.StartsWith("programmer")))
                          pos = lines[i].IndexOf('=');
                          if (pos>0)
                              if (lines[i].Substring(1, pos - 1).Trim().ToString() == "id")
                                  string id = lines[i].Substring(pos + 1).Trim(new char[] { ' ', '"', ';' });
                                  pos = lines[i].IndexOf('=');
                                  if (pos > 0)
                                      if (lines[i].Substring(1, pos - 1).Trim().ToString() == "desc")
                                          string desc = lines[i].Substring(pos + 1).Trim(new char[] { ' ', '"', ';' });
                                          if (s.StartsWith("part"))
                                              mcus.Add(new MCU(id, desc));
                                              programmers.Add(new Programmer(id, desc));
    • Richard markham on November 2, 2013 at 6:14 pm
    • Reply

    I have also found that using version 5 of avrdude caused some issues on an old XP machine whereas avrdude 6 worked ok.

    • Anthony Andriano on November 12, 2013 at 12:15 am
    • Reply

    Why is the source not on github? If you’re going to make it available, you should make it easier for people to see branches and commits as well as make comments about them. There are definitely things I want to add, but I don’t want to throw away my time by making changes to a repo that will never be distributed.

    1. I can’t remember why I decided not to put the source on GitHub. v1.3 will be ready in a week or 2 so I’ll move the source for its release. So far I’ve had a few people email me their changes which I’ve added.

    • Kyr on November 20, 2013 at 2:43 pm
    • Reply

    Hi Zak, thanks for this GUI. Very useful!
    I found some bugs to report.

    1. Issue with ATtiny85 lock bits. Doesn’t seem to write them(I was able to read back the whole FLASH content) and reading them returns an error.
    This one was also in previous versions of your GUI but I believe it’s a legacy error in AVRdude conf file.
    By replacing the Attiny85 lock section in avrdude.conf file with the below text (which I created based on ATtiny85 datasheet serial programming commands), it didn’t fix it. The same issue probably exists for many other tinys and other AVRs in avrdude.conf.

    memory "lock"
    size = 1;
    write = "1 0 1 0 1 1 0 0 1 1 1 1 1 1 0 0",
    "x x x x x x x x 1 1 1 1 1 1 i i";

    read = "0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0",
    "x x x x x x x x x x x x x x o o";
    min_write_delay = 9000;
    max_write_delay = 9000;

    2. Minor mis-spelling on error pop up window. It says: […error occored…] should be […occured…]

    1. Writing the lock bits with the default conf seems to work alright for me, adding your read lines also makes reading the lock bits work. I’m not sure why it’s not working for you. You should submit something here requesting the read lines to be added.

      Typos have now been corrected for v2.1 (the errors should also be fixed) 🙂

        • Kyr on November 21, 2013 at 10:21 am
        • Reply

        Stupid, stupid and more stupid windows 7.

        I had the avrdudess folder copied into C:\program files folder (which I created after installing windows), with my modified conf file, set the rights for the folder and the contents, run as admin etc and still produces the error. I tried numerous configuration for the access rights, no luck.

        Running the exe with the avrdudess folder in another partition or outside of the program files folder and works ok. Hurray!!!! Finally! My sanity was in jeopardy.

        Your latest packed avrdude (in v2.1) has still the old conf file. I guess you have to distribute it as is and any changes should be done in the official avrdude releases, to comply to the license. It’s weird that avrdude has those silly bugs in many AVRs configs for years and even the last update doesn’ fix them. Nobody has complained before to avrdude contributors? Even the ATmega328/P had bugs for a long time and they are maybe the most used AVRs among the hobbyist avrdude users because of the Arduino hype.

        By the way, the original write lock bits command in conf file suggested that the last 5 bits of the second byte are don’t care(x) values and it seem to be correct, since my modification is working, but the most correct command according to the datasheet seem to be this one (which works also):

        memory “lock”
        size = 1;
        write = “1 0 1 0 1 1 0 0 1 1 1 0 0 0 0 0”,
        “x x x x x x x x 1 1 1 1 1 1 i i”;

        read = “0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0”,
        “x x x x x x x x x x x x x x o o”;
        min_write_delay = 9000;
        max_write_delay = 9000;

        Again, thanx for your efforts. Great GUI!

        Did I mention that Windows are stupid?

    • Brutus on December 4, 2013 at 7:35 pm
    • Reply

    Fantastic tool, the interface is great and the possibility to save presets is awesome!

    However, the bit selector for the ATMega 328P I’m using is wrong, since the BOOTSZ bits are not on the E fuse, but on the H fuse.
    Is there a documentation somewhere to explain how to change that in the .conf file appart from reading the source code?
    I will send you the modified file once it works, of course.

    Once again, thanks for that great tool!

    1. Glad you like the program 🙂
      The fuse bits are not stored in the .conf file, but are hard coded into the program here https://github.com/zkemble/AVRDUDESS/blob/master/src/avrdudess/FusesAndLocks.cs#L325
      At some point I’ll be making it load from a file instead.
      If you’ve got a GitHub account you can fork the project, fix it that bit, then do a pull request.

        • Brutus on December 10, 2013 at 4:52 pm
        • Reply

        Hello Zak,

        Can you include the following on your next version?
        signature=”1e950f”; // ATmega328P
        lockbits.Add(signature, “LB1,LB2,BLB01,BLB02,BLB11,BLB12,,”);
        fusebitslo.Add(signature, “CKSEL0,CKSEL1,CKSEL2,CKSEL3,SUT0,SUT1,CKOUT,CKDIV8”);
        fusebitshi.Add(signature, “BOOTRST,BOOTSZ0,BOOTSZ1,EESAVE,WDTON,,DWEN,RSTDISBL”);
        fusebitsext.Add(signature, “BODLEVEL0,BODLEVEL1,BODLEVEL2,,,,,”);

        This should correct the problem.


        1. Thanks, fix has been committed 🙂

    • Cary on December 5, 2013 at 6:01 pm
    • Reply

    Will not work with Windows 7. Comes up with message cannot locate a DLL File.

    Any help?


    1. If it’s saying that libusb0.dll is the file that is missing then you will need to download THIS. Extract libusb-win32-bin- to the folder you’re running AVRDUDESS from and rename it to libusb0.dll

    • Spiki on December 6, 2013 at 3:45 pm
    • Reply

    Hello Zak,
    I’m using your SW and I’m really really satisfied with it, but I think that there is a bug in BIT CLOCK (-B) settings: when I select 1.5MHz BitClock, in command line is shown “-c usbasp -P USB -B 0.5”, and when I select -B 500Hz, in command line is shown “-c usbasp -P USB -B 1500.0”.

    1. Not a bug, that’s how it’s meant to work :P. The bit clock is the time of each clock cycle in microseconds. 0.5us = 2MHz, which gets rounded down to the nearest supported frequency which is 1.5MHz. 1500us = 666Hz, which when rounded down is 500Hz.

    • irwant on December 6, 2013 at 6:00 pm
    • Reply

    hai i’m newbie on ubuntu 13.10..
    i’m can’t open avrdude.
    Cannot open assembly ‘avrdudess.exe’: No such file or directory.
    please helpme 🙂

    1. You need to install AVRDUDE first – sudo apt-get install avrdude

    • perry-m on December 17, 2013 at 3:40 am
    • Reply


    How can I change the list of programmers?

    I need the folowing pinout

    id = “ftbb”;
    desc = “FT232R Synchronous BitBang”;
    type = ft245r;
    miso = 3; # CTS(11 PIN FT232R)
    sck = 5; # DSR(9 PIN FT232R)
    mosi = 6; # DCD(10 PIN FT232R)
    reset = 7; # RI (6 PIN FT232R)

    Is the list hardcoded?


    1. Hey, AVRDUDESS gets all the programmers and MCUs from avrdude.conf. I believe the programmer you are looking for is called “Arduino: FT232R connected to ISP”.

      • perry-m on December 17, 2013 at 4:01 am
      • Reply

      I’v made this config

      -c ftbb -p m8515 -P /dev/ttyUSB0 -b 9600 -U flash:r:”/home/perrym/Downloads/111.hex”:i

      In /etc/ avrdude.conf i found analog og ftbb – FT232 Synchro.. bitbang

      But i still get message Unable to detect MCU

      The same config works under Win7 from command line avrdude.exe

      1. Try running the config from command line in Linux and see what it says. The version of AVRDUDE that most Linux distros have in their repositories is older than the one I’ve supplied with AVRDUDESS for Windows, so that may be problem.

          • perry-m on December 17, 2013 at 6:09 am
          • Reply

          I added below placed text at the end of avrdude.conf and run it in console mode:

          id = “ftdi”;
          desc = “SparkFun FTDI Basic Breakout”;
          type = ft245r;
          miso = 3; #
          sck = 5; #
          mosi = 6; #
          reset = 7; #

          So i got pass:

          root@perrym:/etc/avrdude/avrdude-5.10# sudo ./avrdude -C avrdude.conf -c ftdi -p m8515 -P /dev/ttyUSB0 -b 9600 -U flash:r:111.hex:i
          avrdude: BitBang OK
          avrdude: pin assign miso 3 sck 5 mosi 6 reset 7
          avrdude: drain OK

          ft245r: bitclk 230400 -> ft baud 115200
          avrdude: AVR device initialized and ready to accept instructions

          Reading | ################################################## | 100% 0.00s

          avrdude: Device signature = 0x1e9306
          avrdude: reading flash memory:

          Reading | ################################################## | 100% 1.48s

          avrdude: writing output file “111.hex”

          avrdude: safemode: Fuses OK

          avrdude done. Thank you.

          But the same settings with the same avrdude.conf in the AVRDUDESS gave me fail: Unable to detect MCU

          1. Ah, AVRDUDESS uses a slightly different config when detecting MCU, see what this outputs –
            avrdude -C avrdude.conf -c ftdi -P /dev/ttyUSB0 -b 9600 -p m8

            Make sure to keep -p set to m8. Normally the MCU is not known, but AVRDUDE still needs -p set to something for it to work.

          • perry-m on December 17, 2013 at 6:34 am
          • Reply

          Thank you for answer . I found the another solutiobn. I’ve download sources for avrdude 5.10 and took avrdude ELF and avrdude.conf from there.
          After replacing them in system AVRDUDESS returns expected result!

          Thanks a lot for good program!

  3. Thank you this saved us a lot of time. We want to customize it, we will update you whenever we do that

  4. Thanks for such a great programm.
    I’ve was searching a long time to find an easy way for writing lockbits under Xubuntu – now i’ve found it.
    Thanks again.

    • fikri on February 3, 2014 at 9:03 am
    • Reply

    is that support avr910 ? like downloader k125r . .

    1. Yeah AVR910 is supported, set the programmer to “Atmel Low Cost Serial Programmer” and it should work.

    • chipwitch on March 19, 2014 at 4:39 pm
    • Reply

    One thing that might give users a problem, like it did me…

    The dropdown port is pre-populated with possible ports to use. In my case, they were all CAPS. Avrdude is case sensitive and kept throwing an error. An easy code fix.

    Until then, you can just type over it in small caps as the dropdown also allows you to enter your own port in addition to those displayed.

    1. Hi, what OS are you using? Caps or not should only effect Linux, though port names are taken straight from the /dev/ file name so there shouldn’t be any issues there.

    • chipwitch on March 19, 2014 at 6:28 pm
    • Reply

    Hi Zak, now that I’ve successfully used Dudess, I really like it. Should have mentioned that to begin with.

    I’m running Win 7-64. I know very little about Linux, but I did know about case sensitivity. While the OS isn’t case sensitive, I’m guessing avrdude is recognizing the distinction when they parse. Afterall, they use same letter flags that are case sensitive. (-p -P, for example).

    1. Glad you like it then 😀 I just tried COM, com, LPT and lpt and they all seemed to work for me on Win 7 x64, so I’m not sure why they’re not working on your setup. I don’t think avrdude does any checks or parsing on the port name, it just passes it on to the OS to deal with finding etc. and since it’s Windows it shouldn’t matter whether it’s caps or not.

        • chipwitch on March 19, 2014 at 7:21 pm
        • Reply

        Zak, I don’t know what to say. I just tried it again. It will NOT work when I select USB from the dropdown, but typing it in, fixes it. You’re welcom to email me if you have any further questions and feel like chasing it down. It really is a bug. Something in my system parameters somewhere perhaps, but those are the joys of software distribution…. so many system configurations to take into account.

        I even tried it in WinAVR. Using “usb” I can upload sketches. Hit (eliminate the chance for typos), cursor back, change “usb” to “USB” and I get –> ser_open(): can’t open device “USB”: the system cannot find the file specified.

        Maybe it has something to do with libusb? I’m using that to drive an AVRisp mkii.

        1. Ah, USB, I don’t have any programmers that need to have the port set to USB so I wasn’t able to test that one, but it definitely seems that one needs to be lower case. I’ll get that fixed, thanks 🙂

        • chipwitch on March 19, 2014 at 7:25 pm
        • Reply

        Should have also mentioned, I MUST include the -P usb in avrdude. It’s supposed to default to my usb connection from what I understand but I get the same error if I omit the -P flag. Maybe this is really an avrdude problem, but it does affect your program 🙂

    • chipwitch on March 20, 2014 at 2:18 am
    • Reply

    Zak, fyi… I just tried the previously mentioned, case sensitivity in avrdude with regard to the “usb” vs “USB” on a different computer. Both my Win 7-64 AND my WinXP require the right case for “usb.”

    1. Yeah, seems ‘usb’ is a special one with avrdude. Lower case ‘usb’ will make avrdude use libusb, otherwise it tries to open it as a file/port.

        • Ceddy on July 12, 2014 at 4:59 am
        • Reply

        Are you going to update the USB to lower case? Or is there a work around? I couldn’t find it in the .xmls. And I’m having the same issue.

        Also in [Options] it isn’t parsing the path correctly.

        C:\Program Files (x86)\AVRDUDESS

        Its stopping at the first space after Program.

        1. Uppercase USB fix has been on GitHib for a while, I hadn’t made a new release for it since it has an easy work around of just manually typing lower case usb into the port box. However I’ll make a new release tomorrow with the USB fix and a fix for spaces in the paths.

    • Benik3 on April 28, 2014 at 11:32 pm
    • Reply

    Nice GUI, but I got “avrdude.exe program stopped working”.
    I have Windows 8.1 x64 and I use USBasp programmer.
    Any idea? Thanks :/

    1. See if updating AVRDUDE fixes it – http://download.savannah.gnu.org/releases/avrdude/avrdude-6.1-mingw32.zip
      The files in the zip go in the AVRDUDESS install folder.

    • Albert T on May 4, 2014 at 4:57 pm
    • Reply

    Your Version 2.2 compiled download above does not seem to have the fix to make USB option appear in lower case to avrdude described in Github. For some reason the DRAGON used as a programmer needs the lower case while my USBasp does not. As a temporary fix if I type lower case USB in the Port (-P) box instead of using the pull down it works.

    To all those having problems with the Dragon used as a programmer I also found that since Atmel installs Jungo drivers for the Dragon you need to go to http://sourceforge.net/projects/libusb-win32/files/libusb-win32-releases/

    And download the release that has “filtered” in it. Install on top of the Jungo AVR drivers. This allows the Dragon to continue working with Atmel software.

    You will also want to locate your winavr bin folder, and change the name of the libusb0.lib to .bak or likewise

    1. The GitHub changes are not in the compiled 2.2 because they’re for the next release. You can see all the changes since 2.2 here.
      AVRDUDE ignores the -P option when USBasp is set as the programmer, which is why the upper case USB works for it and not the DRAGON.

    • Roland on May 25, 2014 at 3:23 pm
    • Reply

    Hi Zak, thanks for this GUI. Very useful!

    MONO and avrdude are installed.

    I found some bugs to report.

    `menu_proxy_module_load’: mono: undefined symbol: menu_proxy_module_load

    (mono:3516): Gtk-WARNING **: Failed to load type module: (null)

    windows error –>> arv-size is missing ?

    my options avr-size : /home/roland/avrdudess

    I use the Linux Mint 12.04.

    Great job BTW – nicely done!

    1. Thanks 🙂

      The ‘menu_proxy_module_load’ GTK stuff might be fixed with
      sudo apt-get install appmenu-gtk

      The avr-size supplied with AVRDUDESS is the Windows only .exe. You need to set the location to where the Linux avr-size binary is for your system.
      This command might help:
      sudo find / -name 'avr-size'

        • Roland on May 27, 2014 at 2:50 pm
        • Reply

        Thank you for answer

        It’s work now.

        Once again, thanks for that great tool!

    • Hector on June 2, 2014 at 2:23 am
    • Reply

    Hi Zack, thanks for this GUI. (was) very useful! (for me)
    I was using your 20140102 version (but not regularly). Today I noticed your 2.2 version
    AVAST antivirus does not let me download 2.2 from your blog. Also when I tried to run your 20140102 version AVAST did not allowed me to run AVRDUDESS AND ERASED it. Also asked some questions about if I trust the program.
    Any thoughts? and sorry for this writing but I like and need AVRDUDESS

    1. Hey Hector,
      I’ve no idea why AVAST is detecting it as a virus, you can check all the code on GitHub and compile it for your self if you want to.
      Virustotal seems to think it’s ok – LINK1 LINK2 LINK3 though one of the tests seems to think the installer is bad :/

      The 20140102 .zip is 2.2, it’s just a zip with all the stuff in if you don’t want to use an installer or if you’re on Linux. If there is a newer version than the one you’re using you should get a pop up telling you about it when you run the program.

        • ankit on August 5, 2014 at 4:47 pm
        • Reply

        Same here. Avira is picking up a virus in the latest 2.3 version as well

        1. Ah, found the problem, the update checker feature is making AV have a fit probably due to the way it works (makes a new thread, waits for a bit then sends out a web request). I’ll see what I can do so it doesn’t get incorrectly detected as bad.

    • STK200 on June 15, 2014 at 3:15 pm
    • Reply

    STK200 is not work at windows 7 x64,
    Unable to detect MCU

    avrdude.exe: can’t open device “giveio”

    avrdude.exe: failed to open parallel port “LPT1”

    1. I’m not too familiar with the STK200, try googling “stk200 avrdude”. AVRDUDESS is just a GUI for AVRDUDE.

    • Jayanth D on June 16, 2014 at 4:12 pm
    • Reply


    Please tell me how to program a .hex and .eep file to a Arduino Nano V3.0 using AVRISP mk II programmer and AVRDUDESS.
    I am trying it since a day and it gives timeout error.

    1. What settings have you set in AVRDUDESS?

    • Jayanth D on June 16, 2014 at 6:07 pm
    • Reply

    The AVRDUDESS doesn’t list the COMx port which is used by my AVRISP mkII. What should I do? I have installed the right driver and it shoews as AVRISP mk II in Device manager.

    1. From what I can tell the AVRISP mk II isn’t a serial (COMx) device which is why it’s not showing in the port drop down. Try typing “usb” (no quotes, lower case only) into the port box.

    • arcel on June 30, 2014 at 9:26 am
    • Reply

    I use Avrdudess on Linux.
    The program works well.
    There is no manual AT89SXX51, AT89SXX.
    It would be great if they add this service.
    Yet one thing is missing:
    fusebits service. That’s all.
    If it were added it would be a perfect program.
    Proszę o dodanie obsługi AT89SXX51 i AT89SXX
    oraz ustawienia fusebits.

    1. AVRDUDE doesn’t seem to offically support AT89 controllers, but I did find this which might help, add it to avrdude.conf.

    • Marcel on June 30, 2014 at 4:16 pm
    • Reply

    Yes, avrdude supports AT89SXX.
    But the list does not have these AVRDUDESS MCU.
    Could be there to be found 🙂
    Besides, even FusBits and LockBits editor.
    Nothing more needed.

    AVRDUDES is a great solution for Linux users 🙂 I would be very happy if the author was able to post in the next version AT89SXX and AT89SXX51 the list and add fusebits and LockBits editor. Many users would give a sigh of relief.
    Linux user.

    • Marcel on June 30, 2014 at 4:29 pm
    • Reply

    Whoops fact, does not support AT89SXX has only entries but may be you could add AT89SXX, AT89SXX51? It would be great … 🙂 And Fusebit, LockBits editor. Regards

    • Marcel on July 2, 2014 at 8:13 am
    • Reply

    Hello again
    Something long moderator checks my entries.
    When you add an entry in the forum, which the Lord gave to
    avrdude.conf no AT89SXX listed in AVRDUDESS 🙁
    If possible then please by adding support
    AT89SXX and AT89SXX51. It would be nice also if you added more fusebits editor and Lockbits, so as not to look on the internet, only to have everything on the local computer in the AVRDUDESS. I think these changes many people
    will be useful to the users of Windows and Linux.
    Thanks in advance.

    1. Even if I add it to avrdude.conf I will have no idea if it will actually work or not since I don’t have any AT89Sxx chips around to test. A local fuse editor is on the to-do list, not sure when it will be done though.

    • Marcel on July 2, 2014 at 7:57 pm
    • Reply

    I understand how to give advice to add support for these 89S please put the trial version on this forum with a note AT89S or the like and I’ll try to test it or 89S will work when added to AVRDUDESS and avrdude.conf.
    If I may suggest it might
    council would make such an editor as in mkAvrCalculator link: http://www.atnel.pl/mkavrcalculator.html
    I look forward to editor fusebits and Lockbits in
    AVRDUDESS. This is a great frontend for avrdude and it would be good to develop it, the more it works on different systems.


    1. The link I posted earlier (link) works, it shows AT89S52 in AVRDUDESS.
      I’ll have a look at mkAvrCalculator.

        • Marcel on July 3, 2014 at 6:00 am
        • Reply

        Hello again

        I do not want to be pushy or anything, but just
        once I added another entry from which the Lord gave me
        to avrdude.conf and do not show me this MCU on the list.
        I do not know, maybe the fault of the system … As I said earlier I use Linux, and Windows can go. Anyway, it would be better as to the Lord added support for these AT89SXX51 and AT89SXX, just in case.

        1. Did you put the AT89 stuff in the correct avrdude.conf? AVRDUDE and AVRDUDESS on Linux uses /etc/avrdude.conf by default.
          The avrdude.conf in the AVRDUDESS folder is mainly for Windows.

            • Marcel on July 4, 2014 at 7:50 am


            He’re right, etc / avrdude.conf.
            And I was adding the folder where avrdudess is.
            Now I have the list in avrdudess. Clever solution.
            Where can I still find when such entries avrdude.conf?
            I mean, AT89S2051, AT89S4051, AT89S51, AT89S53.

          1. Ah good 🙂

            I don’t know, try googling something like “avrdude AT89S4051”.

    • Marcel on July 7, 2014 at 6:42 pm
    • Reply


    Yeah … well 🙂
    What to AT89S4051 but it’s up to me an error avrdude still crashes. Will fight some more.
    Anyway, thank you very for your help.
    I’m waiting for version AVRDUDESS editor fusebits and Lockbits. Thank you again. Please develop this project, much needed many person 🙂

  1. […] AVRDUDESS is a GUI for AVRDUDE, a tool for programming Atmel microcontrollers. […]

  2. […] For more details plaese go into the source.  […]

  3. […] Software: AVRDudess (Free) This is actually a GUI for AVRDude, a command line driven programmer. It has a great […]

  4. […] AVRDUDESS is a GUI for AVRDUDE from Zak Kemble. It is a open Source project and we can download software with source code from here. […]

  5. […] AVRDUDESS is is a open Source project from Zak Kemble and we can download software with source code from here. […]

  6. […] You may have use the avrdude a lot, but you may not like the command line like us. So the avrdude GUI tool saved a lot of typing work, and give the options to choose directly. Here we recently found a new and better avrdude GUI tool here, called Avrdudess, which covers all the AVR chips and programmers, and using the latest avrdude version. So you can get this best version and drop all the others. See the screenshot and auther’s link here. […]

  7. […] 4. Scaricate ed installate AVRDUDESS (http://blog.zakkemble.co.uk/avrdudess-a-gui-for-avrdude/) […]

  8. […] can be done using AVRdude. I prefer using a GUI and used AVRDUDESS. Write the .hex to the chip as per the screenshot below and you are […]

Leave a Reply to Simon Cancel reply

Your email address will not be published.

Are you human? *