Search code examples
linuxavravrdude

Can't flash with avrisp mkII in avrdude Version 6.0.1


I have had problems with this programming board. It is set up correctly seems to be an AVRISP MKII.

I received the following error messages upon flashing with avrdude:

(trusty)chandran@localhost:~$ avrdude -c avrispmkii -p t85 -vv
avrdude: Version 6.0.1, compiled on Oct 21 2013 at 15:55:32
     Copyright (c) 2000-2005 Brian Dean, h ttp://www.bdmicro.com/
     Copyright (c) 2007-2009 Joerg Wunsch
     System wide configuration file is "/etc/avrdude.conf"
     User configuration file is "/home/chandran/.avrduderc"
     User configuration file does not exist or is not a regular file, skipping

     Using Port                    : usb
     Using Programmer              : avrispmkii
avrdude: usb_open(): cannot read serial number "error sending control 

message: Connection timed out"

avrdude: usbdev_open(): Found AVRISP mkII, serno: [unknown]

avrdude: usbdev_recv_frame(): usb_bulk_read(): error submitting URB: No 
such file or directory

avrdude: stk500v2_recv_mk2: error in USB receive

avrdude: usbdev_recv_frame(): usb_bulk_read(): error submitting URB: No such file or directory

avrdude: stk500v2_recv_mk2: error in USB receive

avrdude: stk500v2_getsync(): timeout communicating with programmer
         AVR Part                      : ATtiny85
     Chip Erase delay              : 4500 us

     PAGEL                         : P00

     BS2                           : P00

     RESET disposition             : possible i/o

     RETRY pulse                   : SCK

     serial program mode           : yes

     parallel program mode         : yes

     Timeout                       : 200

     StabDelay                     : 100

     CmdexeDelay                   : 25

     SyncLoops                     : 32

     ByteDelay                     : 0

     PollIndex                     : 3

     PollValue                     : 0x53

     Memory Detail                 :


                              Block Poll               Page                       Polled
       Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
       ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
       eeprom        65     6     4    0 no        512    4      0  4000  4500 0xff 0xff
       flash         65     6    32    0 yes      8192   64    128  4500  4500 0xff 0xff
       signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00
       lock           0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
       lfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
       hfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
       efuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
       calibration    0     0     0    0 no          2    0      0     0     0 0x00 0x00

     Programmer Type : STK500V2
     Description     : Atmel AVR ISP mkII
     Programmer Model: AVRISP mkII
avrdude: usbdev_recv_frame(): usb_bulk_read(): error submitting URB: No such file or directory

It is hard to identify the issue since my version of the programming board doesn't have such great documentation.

Thanks in advance!


Solution

  • This bug was causing the problems. I simply reverted to the previous version of avrdude (5.11.1) and it worked. By now there is an even newer version of avrdude (6.3), this bug might no longer be a problem in latest version.

    Here are some steps:

    1. Revert to an older version of avrdude either by using sudo apt-get install <package-name>=<package-version-number> OR sudo apt-get install <package-name>=<package-version-number>
    2. Check if it works: avrdude -p <your part name> -c <your programmer name (avrispmkII)>
    3. You might have to specify a port. Use something like ''watch ls /dev/tty*'' to find your device if you get an error like this one:

      (trusty)chandran@localhost:~$ avrdude -c avrispmkII -p t85
      avrdude: ser_open(): can't open device "/dev/ttyS0": No such file or directory

      avrdude done. Thank you.

    Here is what it will look like when you get it right:

    (trusty)chandran@localhost:~$ avrdude -c avrispmkII -p t85 -P usb -vv
    
    avrdude: Version 5.11.1, compiled on Oct 30 2011 at 10:37:28
             Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
             Copyright (c) 2007-2009 Joerg Wunsch
    
         System wide configuration file is "/etc/avrdude.conf"
         User configuration file is "/home/chandran/.avrduderc"
         User configuration file does not exist or is not a regular file, skipping
    
         Using Port                    : usb
         Using Programmer              : avrispmkII
    avrdude: usb_open(): cannot read serial number "No error"
    avrdude: usbdev_open(): Found AVRISP mkII, serno: [unknown]
    avrdude: usbdev_open(): using read endpoint 0x83
             AVR Part                      : ATtiny85
             Chip Erase delay              : 4500 us
             PAGEL                         : P00
             BS2                           : P00
             RESET disposition             : possible i/o
             RETRY pulse                   : SCK
             serial program mode           : yes
             parallel program mode         : yes
             Timeout                       : 200
             StabDelay                     : 100
             CmdexeDelay                   : 25
             SyncLoops                     : 32
             ByteDelay                     : 0
             PollIndex                     : 3
             PollValue                     : 0x53
             Memory Detail                 :
    
                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           eeprom        65     6     4    0 no        512    4      0  4000  4500 0xff 0xff
           flash         65     6    32    0 yes      8192   64    128  4500  4500 0xff 0xff
           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00
           lock           0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
           lfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
           hfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
           efuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
           calibration    0     0     0    0 no          2    0      0     0     0 0x00 0x00
    
         Programmer Type : STK500V2
         Description     : Atmel AVR ISP mkII
         Programmer Model: AVRISP mkII
         Hardware Version: 0
         Firmware Version Master : 1.255
         Vtarget         : 3.3 V
         SCK period      : 8.00 us
    
    avrdude: AVR device initialized and ready to accept instructions
    
    Reading | ################################################## | 100% 0.00s
    
    avrdude: Device signature = 0x1e930b
    avrdude: safemode: lfuse reads as 62
    avrdude: safemode: hfuse reads as DF
    avrdude: safemode: efuse reads as FF
    
    avrdude: safemode: lfuse reads as 62
    avrdude: safemode: hfuse reads as DF
    avrdude: safemode: efuse reads as FF
    avrdude: safemode: Fuses OK
    
    avrdude done.  Thank you.
    

    If this doesn't fix your problem, you might want to look at some other solutions: https://electronics.stackexchange.com/questions/78302/avrisp-mkii-not-reading-device-signature/189488

    https://electronics.stackexchange.com/questions/67757/why-does-my-avrisp-mkii-programmer-not-work

    AVRISP MKII doesn't work with AVRDUDE on Linux

    https://electronics.stackexchange.com/questions/74298/how-does-avrdude-with-avr-isp-mkii-respond-when-no-target-board-is-connected

    Good luck!