«

»

Feb 17 2013

AVRDUDESS – A GUI for AVRDUDE

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 & Mac OS X



Downloads
LATEST
Download
setup-AVRDUDESS-2.4.exe (914.73 kB)
AVRDUDESS (Windows installer)
Downloaded 3784 times
MD5: CF83912B3368D65FA9FCA80C7EC2CE5D

LATEST
Download
avrdudess_20140805.zip (509.63 kB)
AVRDUDESS (Binaries, any OS)
Downloaded 1695 times
MD5: D410555B5E82655533E885BFD2D25111

Source available on GitHub

Requirements
Windows
Requires .NET Framework 2.0 SP1 or newer.
Latest .NET can be found here.

AVRDUDE requires LibUSB
LibUSB should really be installed the normal way as a driver for a LibUSB device, but if you don’t have any such devices then you will need to download this.
Extract libusb-win32-bin-1.2.6.0/bin/x86/libusb_x86.dll to where you have avrdude.exe placed and rename libusb_x86.dll to libusb.dll

Linux & Mac OS X
Can be ran using Mono
Has not been tested on OS X, but should work.

Installing on Ubuntu 13.10
Install Mono (this is the minimum required, you can do mono-complete for a full install)
sudo apt-get install libmono-winforms2.0-cil

Install AVRDUDE
sudo apt-get install avrdude

Run AVRDUDESS with mono, you might have to run as root (sudo) so avrdude runs as root if you havn’t changed any rules.d stuff
mono avrdudess.exe

avrdudess4

145 comments

8 pings

Skip to comment form

  1. George Hahn

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

    1. Zak Kemble

      Yup, source is in the download.

  2. Hemal

    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. Zak Kemble

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

    2. Zak Kemble

      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.

  3. Rick Winscot

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

    http://www.nongnu.org/avrdude/user-manual/avrdude_4.html#Option-Descriptions

    Great job BTW – nicely done!

    1. Zak Kemble

      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.

      EDIT
      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.

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

  4. ROHIT

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

  5. Alastair D'Silva

    Great work.

    You can get the latest AVRDude for Win32 from the MHV AVR Tools distribution that I maintain:
    http://www.makehackvoid.com/project/mhvavrtools

    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. Zak Kemble

      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.

  6. s1cK

    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. Zak Kemble

      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.

      1. Arpy

        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

  7. neptune

    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. Zak Kemble

      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.

  8. s1cK

    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. Zak Kemble

      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.

      1. Phil

        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. Zak Kemble

          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.

  9. Zolee

    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. Zak Kemble

      To run as root use sudo mono avrdudess.exe.

      1. Zolee

        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. Zak Kemble

          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?

          1. Zolee

            “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.

          2. Zak Kemble

            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.

          3. Zolee

            Thanks, Zak!

            It’s work now.

          4. Zak Kemble

            No problem ;)

  10. bill rowe

    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. Zak Kemble

      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.

  11. Mart Lang

    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. Zak Kemble

      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.

  12. Mart Lang

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

  13. Dean

    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.

    Dean

  14. Kamrul Hussain

    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.
    http://ketturi.kapsi.fi/2013/05/programming-xmega-with-usbasp-avrdude/

    1. Zak Kemble

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

  15. Richard markham

    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?

    Cheers.

    1. Zak Kemble

      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")))
                      {
                          i++;
                          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[] { ' ', '"', ';' });
                                  i++;
                                  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));
                                          else
                                              programmers.Add(new Programmer(id, desc));
                                      }
                                  }
                              }
                          }
                      }
                  }
      
  16. Richard markham

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

  17. Anthony Andriano

    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. Zak Kemble

      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.

  18. Kyr

    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. Zak Kemble

      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) :)

      1. Kyr

        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!

        P.S.
        Did I mention that Windows are stupid?

  19. Brutus

    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. Zak Kemble

      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.

      1. Brutus

        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.

        Cheers.

        1. Zak Kemble

          Thanks, fix has been committed :)

  20. Cary

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

    Any help?

    Cary

    1. Zak Kemble

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

  21. Spiki

    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. Zak Kemble

      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.

  22. irwant

    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. Zak Kemble

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

  23. perry-m

    Hi,

    How can I change the list of programmers?

    I need the folowing pinout

    #FTDI_Bitbang
    programmer
    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?

    Thanks

    1. Zak Kemble

      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”.

    2. perry-m

      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. Zak Kemble

        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.

        1. perry-m

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

          programmer
          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. Zak Kemble

            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.

        2. perry-m

          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!

  24. sandeep

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

  25. Guenther-L. Haelke

    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.

  26. fikri

    is that support avr910 ? like downloader k125r . .

    1. Zak Kemble

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

  27. chipwitch

    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. Zak Kemble

      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.

  28. chipwitch

    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. Zak Kemble

      Glad you like it then :D 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.

      1. chipwitch

        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. Zak Kemble

          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 :)

      2. chipwitch

        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 :)

  29. chipwitch

    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. Zak Kemble

      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.

      1. Ceddy

        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. Zak Kemble

          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.

  30. Benik3

    Hi.
    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. Zak Kemble

      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.

  31. Albert T

    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. Zak Kemble

      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.

  32. Roland

    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. Zak Kemble

      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'

      1. Roland

        Thank you for answer

        It’s work now.

        Once again, thanks for that great tool!

  33. Hector

    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. Zak Kemble

      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.

      1. ankit

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

        1. Zak Kemble

          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.

  34. STK200

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

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

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

    1. Zak Kemble

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

  35. Jayanth D

    Hi

    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. Zak Kemble

      What settings have you set in AVRDUDESS?

  36. Jayanth D

    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. Zak Kemble

      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.

  37. arcel

    Welcome.
    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.
    Regards
    Marcel

    1. Zak Kemble

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

  38. Marcel

    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

  39. Marcel

    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

  40. Marcel

    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.
    Regards
    Marcel

    1. Zak Kemble

      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.

  41. Marcel

    Hello
    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.

    Regards
    Marcel

    1. Zak Kemble

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

      1. Marcel

        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.
        Regards
        Marcel

        1. Zak Kemble

          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.

          1. Marcel

            Hello

            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.
            Regards
            Marcel

          2. Zak Kemble

            Ah good :)

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

  42. Marcel

    Hello

    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 :-)
    Regards
    Marcel

  43. Mike

    Hello Zak,
    Thanks for the great work! I have tested avrdudess with avrdude.exe / .conf latest version 6.1 without problems. I programmed ATmega xx8 and xxx4, ATtiny x4, x5, x61 and x313.
    I can not, however, to use the technique BitBang with Arduino 2009, or other FT232RL based circuit. It only works if I use avrdude.exe / .conf (http://nmj.sumomo.ne.jp/suz-avr/serjtag/) with programmer BitBang FT232 synchronous.
    You can tell me something?
    Thanks very much
    Best regards

    1. Zak Kemble

      It looks like some of the pin numbers are different. You will have to check the .conf files to see the differences.

      1. Mike

        No, the problem is that all configurations BitBang of AVRDUDE 6.1 (synchronous BitBang FT232R, FT232R-alias for Arduino, Arduino FT232 connected to ISP) give error libusb.dll and unfortunately your suggestion does not solve it.

        1. Zak Kemble

          Ah, was the error this
          avrdude.exe: error: no libftdi or libusb support. Install libftdi1/libusb-1.0 or libftdi/libusb and run configure/make again. ?

          If so then AVRDUDE needs to be compiled with libftdi support. Have a look at this.

          1. Mike

            Hello,
            unfortunately I was not able to compile AVRDUDE, you think you do it in a future update?
            Thank you.
            Sincerely

          2. Zak Kemble

            Ok then, I’ll see about compiling with FTDI support, not sure when that will be though.

          3. Mike

            OK, then I stay tuned. Thank very much ;-)

          4. SuperCow

            I use the avrdude-serjtag04e.zip
            Can find it here: http://diyduino.blogspot.nl/2012/08/ft232r-bitbang-programmer.html

            Set AVRDUDESS (options) to that avrdude and the conf file.

            Do mind the conf file is a a bit old.
            I had to add some new atmega’s to it
            The use FT232R Synchronous BitBang (there two in it, one works)
            As port use ft0

          5. Mike

            Hello, I already know this method, but I would only work with avrdude 6.1, instead use avrdude avrdude-serjtag04e 5.2.

  44. Marcel

    I welcome you again.

    So I searched and searched the internet some alternative gui for avrdude from editor Fusebits and Lockbits that would work under Linux. I found very similar to AVRDUDESS gui editor Fuse and Lock. Interestingly, running on Mono on Linux, but there is a small problem. It only works with avrdude.exe links to avrdude on Linux.
    Perhaps would you do Fusebits editor and Lockbits as the GUI link: http://www.avr-elektronika.tk/index.php?page=pdi-programmer.
    Or perhaps you can do to trick somehow gonna use this overlay with avrdude in linux?

    Regards
    Marcel

    1. Zak Kemble

      I don’t know when the fuse calculator will be done yet, it’s been on the to-do list for a while, just haven’t got around to doing it yet.

      You could create a symlink make that GUI use the Linux avrdude:
      ln -s /usr/bin/avrdude /home/(where ever the GUI is looking for avrdude.exe)

      1. Marcel

        Hello

        I do not really know how to make a symbolic link.
        Yesterday I struggled with this and I could not.
        But I’ll wait for version avrdudes editors.
        Thank you for your help.
        Regards
        Marcel

  45. DougG

    Zak, this looks like a really cool GUI you’ve written. However, I’ve been unable to use it primarily due to the lack of a means to do so. I was looking for a GUI for AVRDude that had been compiled, or source available, on Raspbian. The problem is, it looks like when I downloaded the binary files they were already compiled for Windows. Is there any chance that in the future you’ll compile on the Pi? I’d love to have a go at it with the GPIO.

    1. Zak Kemble

      Hey Doug, from what I can tell Mono is available for RPi, which should mean you can run the AVRDUDESS .exe binary on RPi once you’ve installed Mono.
      sudo apt-get install mono-complete

      mono avrdudess.exe

      1. DougG

        Zak, I think I found the problem. I had tried to apt-get prior to posting. It looked as though the repository had taken down mono. I apt-get update, and it seems to have good links now. So once I get it installed, I’ll see if I can run the program. And if all thinks align, I may program a ATmega8 tonight just to do a proof of concept.

        1. DougG

          Zak, it looks like a no go. This is a portion of what I’m seeing in Terminal.

          Thread 1 (Thread 0xb6f75000 (LWP 6316)):
          #0 0xb6ea5a3c in waitpid () from /lib/arm-linux-gnueabihf/libpthread.so.0
          #1 0x000b2148 in mono_handle_native_sigsegv (signal=, ctx=) at mini-exceptions.c:2299
          #2
          #3 0xb6d6bbfc in raise () from /lib/arm-linux-gnueabihf/libc.so.6
          #4 0xb6d6f97c in abort () from /lib/arm-linux-gnueabihf/libc.so.6
          #5 0x000136fc in ?? ()
          Cannot access memory at address 0x0
          #6 0x000136fc in ?? ()
          Cannot access memory at address 0x0
          Backtrace stopped: previous frame identical to this frame (corrupt stack?)

          =================================================================
          Got a SIGABRT while executing native code. This usually indicates
          a fatal error in the mono runtime or one of the native libraries
          used by your application.
          =================================================================

          Aborted

          1. Zak Kemble

            That looks like an issue with Mono, no idea how to go about fixing it.

  46. Jean-Marie

    Thank you for the GUI which has much more programmers than the others.
    I use it to program an Arduino UNO R3 though USB (COM port : 5).
    AVRDUDESS is able to detect the MCU.
    However I have a problem with reading the fuses. If I clik on the “Read” button, avrdude seems to read each fuse and write it in a file.
    i.e. : avrdude.exe: reading lfuse memory:

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

    avrdude.exe: writing output file “C:\Documents and Settings\JMCo\Local Settings\Temp\e2598b80-9a13-40d9-9d19-6b049a9d3def.TMP”

    But the fuses stay 0x00 on the screen and the files do not exist in the Directory.

    If I use an AVRISP mkII though the ICSP pins of the same UNO board, I can read the fuses on the screen but the files are still missing.

    1. Zak Kemble

      Fuses can only be read and written to with an ICSP. The .TMP files are deleted once the fuse value has been read from them. So everything is working as expected :P

      1. Jean-Marie

        Thank you for your quick answer, Zak.
        I didn’t know that.

      2. Eduardo

        Hi Zak. I’m using an arduino nano as an ICSP to programa another arduino nano but I’m having the same problem of Jean-Marie. The fuses and the lock bits return 0x00. Do you have any ideia what’s going on? Thanks!

        1. Zak Kemble

          Did you set the baud rate to 19200 in AVRDUDESS?

  47. Jean-Marie

    I forgot to tell you that I use Windows XP SP3

  48. RICHARD

    ARE THE FUSES FOR A CHIP AS 328P TQFT ARDUINO NANO 16MHz?

    1. Zak Kemble

      The fuse settings in the “Arduino Uno (ATmega328P)” preset should also work for the Nano.

  49. SHAUN

    HI, I am having an unusual problem because the presets have been deleted (with the intent of creating new ones), and I cannot find any way of making new ones. The data in presets file has not changed and even re-downloading the entire folder does not fix it. This is version 2.4 in portable form on windows 7, This problem does not exist with version 1.2 that I found in my backups.
    clicking save with v1.2 would ask for a new name for the preset, but with 2.4 it only changes the existing one, which has since been deleted and now “Can’t change “default”” is what comes up. this is suggesting that version 2.4 is ignoring the presets file.

    1. Zak Kemble

      AVRDUDESS uses the .xml files in %APPDATA%\AVRDUDESS. If they don’t exist then it copies the files from the .exe directory, so deleting or editing the files in that directory won’t have any effect.
      To create a new preset type the name in the drop down box and click save. I need to change the way saving presets is done, it’s not very intuitive (was an attempt at dealing with presets without having all the pop up boxes which someone said about removing).

  50. SHAUN

    Thanks, Zak
    I now have it working

  51. Santosh Kumar Gupta

    Hi ,
    I use avrdoper in HID mode which is not listed in the programmer list.

    1. Zak Kemble

      avrdoper seems to be STK500 compatible, so see what happens when you set the programmer to one of the “Atmel STK500″ options and the Port to “usb”.

  52. Mr. Virus Check

    Hello,
    What You think about this:
    SHA256: 51201c4a3f0e40594da5d0f70983dcfaea6e90a03679d78f159242ff85dff730
    File name: avrdudess.exe
    Detection ratio: 16 / 51

    https://www.virustotal.com/en/file/51201c4a3f0e40594da5d0f70983dcfaea6e90a03679d78f159242ff85dff730/analysis/1414321882/

    REgards

  53. Mr. Virus Check

    Latest:
    https://www.virustotal.com/en/file/41b2ce98fe5f20333496c10c7df2d86c167a02be99059025e5f6a18dac35f947/analysis/1414322407/

    SHA256: 41b2ce98fe5f20333496c10c7df2d86c167a02be99059025e5f6a18dac35f947
    File name: avrdudess.exe
    Detection ratio: 4 / 53
    Analysis date: 2014-10-26 11:20:07 UTC ( 0 minutes ago )

    Copyright
    Copyright © 2014 Zak Kemble

    Publisher Zak Kemble
    Product AVRDUDESS
    Original name avrdudess.exe
    Internal name avrdudess.exe
    File version 2.4.0.0
    Description AVRDUDESS
    Comments A GUI for AVRDUDE

    Regards

    1. Zak Kemble

      Yeah, I’ve no idea why it’s being detected as a virus. I’ve submitted it to all the AV vendors that detected it and they’ve confirmed it was a false positive, apart from those last 4 who never replied or don’t seem to have anyway of submitting a file.

  54. benny

    Hi Zak,
    Great program! thanks. I must be doing something wrong but I cant get the Lockbits to set correctly in the Atmega328P on an Arduino Uno board. I have one Arduino set up as an ISP, and I am using this to program a second Arduino Uno. I am just trying to load the simple blink program (so I have a simple visual feedback verification method) and lock it so it cant be read back.

    -c stk500v1 -p m328p -P COM2 -b 19200 -e -U flash:w:”C:\ben\Blink.hex”:i -U lfuse:w:0xFF:m -U hfuse:w:0xDE:m -U efuse:w:0x05:m -U lock:w:0x00:m

    this works and even appears to write and verify the fuses and lock

    I then connect the second Arduino to check if I can read it back….

    -c arduino -p m328p -P COM4 -b 115200 -U flash:r:”C:\ben\Blinkrd.hex”:i

    I can successfully read the file and change to another program and when I put the blinkrd.hex file back in I see it LED13 blinking again.

    I have tried all sorts of combination of the LockBits with no success. What am I doing wrong?

    THANKS again for such a great tool.

    1. Zak Kemble

      Hmm, have you tried different lock bits, like 0x01 (reprogramming flash not allowed, but can read flash)? Might be the programmer not actually programming the lock bits and just returning 0x00.

      1. benny

        Sorry to waste your time. It actually works just fine. It appears to read and even confirms the read, but when I compare the actual hex files the value for the flash is something like 6262626262 repeating for the flash sectors. So even though it goes through the read sequence the chip apparently returns garbage, so it really is protected. Sorry I should have looked closer at the actual files before I bothered you. Great Program.

  55. Simon

    Hi Zak,
    Today I have been attempting to get the Dudess running on an W7 system. And failed. Miserably. The frustration is mile-high. As an “after party” I tried to install AvrDudess on an XP system and that also fails. As programmer I use an AVRISP2 look-alike from Olimex. Normally I develop in an Linux environment with no problems. Windows is alien to me.
    I have installed LibUSB and renamed libusb_x86.dll to libusb.dll. It sits in the \Program Files\AVRDUDESS\ directory where I also find avrdude.exe. When I plug in the programmer I hear the ping sound of a coupling USB device and in the hardware overview it shows as a perfectly happy usb device.
    However; two problems:
    1. When I start AVR dudess it fail right away with an awful pop-up that would translate to something like: Application error and Cannot initialize the application correctly (0xc0000135). Click to terminate application. Is this informing me that I do not have .NET installed? How can I check what I have installed?
    2. I tried to use just avrdude and that results in: “error in USB receive” repeated many times. The original Atmel avrisp2 does not show the problem.
    I hope you can shed some light on this matter.
    Regards,

    Simon

    PS: And thumbs up for the application! Thanks.

    1. Zak Kemble

      1. Yup, you need to install .NET, see the blog post about requirements.
      2. Don’t know what’s happening there.

      What issues were you having with Windows 7? It should just work straight away with a fresh Win7 install.

  56. Djoko

    Hello, nice to meet you
    I’ve been installing the program, when the streets get out a message like this “The application failed to initialize properly (0xc000007b). Click on OK to terminate the aplication.”

    approximately where the error occurs huh? please solution
    Thank you very much
    greeting

    1. Zak Kemble

      Seems that error can be caused by a number of things, see this LINK.

  1. AVRDUDESS – A GUI for AVRDUDE « adafruit industries blog

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

  2. AVRDUDESS – A GUI for AVRDUDE | A Maker's Dream Factory

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

  3. AVR Programming in 64-bit Windows 7 » SWHarden.com

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

  4. AVRDUDESS – GUI for AVRDUDE | TinyLAB Electronics

    […] 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 - GUI for AVRDUDE | TinyLAB Electronics

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

  6. AVRDUDESS – A better Avrdude GUI Tool | Electrodragon Blog

    […] 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. Aggiornare firmware USBasp con Arduino | Black Stuff Labs

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

  8. Fixing the Arduino MEGA 2560 | brightbulb

    […] 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

Your email address will not be published. Required fields are marked *


+ 1 = 2

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>