Cheap USBASP programmer which you china buy on ebay, ali and others. Official project WebPage: http://www.fischl.de/usbasp/
- JP1 – Supply Target – Choose between 5V and 3.3V.
- JP2 – Self Program – jumper on for self program, normally free
- JP3 – Slow SCK – Jumper on only if the target clock is lower than 1.5 MHz.
- LED R – Programmer communicating with target device
- LED G – Power on
- IDC pinout:
I will write how to solve:
avrdude: warning: cannot set sck period. please check for usbasp firmware update
You have to flash a new firmware version: usbasp.2011-05-28. Precompiled bin to flash is in \bin\firmware\ directory.
I’ve got USBASP with Atmega8 so I will use usbasp.atmega8.2011-05-28.hex and Arduino UNO R3 as ISP to flash it.
- First open ArduinoISP example in Arduino IDE 1.6.8 and upload the sketch (CTRL+U). Disconnect Arduino.
- Connect arduino to usb asp directly (without any adapter only cables) as follows:
ArduinoUSBASP
105 (RESET)
111 (MOSI)
129 (MISO)
137 (SCK)
5V2 (VCC +5V)
GND10 (GROUND) - Set jumper on JP2 (you can solder goldpins).
- Set power jumper for 5V (JP1)
- Connect only Arduino to USB and check which port com it use. You must not connect usbasp to usb!
- Download AVRDUDE avrdude-6.3-mingw32.zip: http://download.savannah.gnu.org/releases/avrdude/
- Copy correct hex file to avrdude.exe file directory.
- Check the connection with command:
avrdude -c avrisp -P COMX -b 19200 -p ATmega8 -v
avrdude: Version 6.3, compiled on Feb 17 2016 at 09:25:53
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg WunschSystem wide configuration file is “C:\WinAVR-20100110\bin\avrdude.conf”
Using Port : COM4
Using Programmer : avrisp
Overriding Baud Rate : 19200
AVR Part : ATmega8
Chip Erase delay : 10000 us
PAGEL : PD7
BS2 : PC2
RESET disposition : dedicated
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 4 20 128 0 no 512 4 0 9000 9000 0xff 0xff
flash 33 10 64 0 yes 8192 64 128 4500 4500 0xff 0x00
lfuse 0 0 0 0 no 1 0 0 2000 2000 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 2000 2000 0x00 0x00
lock 0 0 0 0 no 1 0 0 2000 2000 0x00 0x00
calibration 0 0 0 0 no 4 0 0 0 0 0x00 0x00
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00Programmer Type : STK500
Description : Atmel AVR ISP
Hardware Version: 2
Firmware Version: 1.18
Topcard : Unknown
Vtarget : 0.0 V
Varef : 0.0 V
Oscillator : Off
SCK period : 0.1 usavrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.04s
avrdude: Device signature = 0x1e9307 (probably m8)
avrdude: safemode: hfuse reads as D9avrdude: safemode: hfuse reads as D9
avrdude: safemode: Fuses OK (E:FF, H:D9, L:9F)avrdude done. Thank you.
replace COMX with correct com port for arduino.
- Set the fuses like on Readme file:
# TARGET=atmega8 HFUSE=0xc9 LFUSE=0xef
# TARGET=atmega48 HFUSE=0xdd LFUSE=0xff
# TARGET=atmega88 HFUSE=0xdd LFUSE=0xffwith command:
avrdude -c avrisp -P COM3 -b 19200 -p ATmega8 -v -e -u -U hfuse:w:0xC9:m -U lfuse:w:0xEF:m
- If it recognize the M8 you can flash it:
avrdude -c avrisp -P COMx -b 19200 -p ATmega8 -v -U flash:w:usbasp.atmega8.2011-05-28.hex
avrdude: Version 6.3, compiled on Feb 17 2016 at 09:25:53
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg WunschSystem wide configuration file is “C:\WinAVR-20100110\bin\avrdude.conf”
Using Port : COM4
Using Programmer : avrisp
Overriding Baud Rate : 19200
AVR Part : ATmega8
Chip Erase delay : 10000 us
PAGEL : PD7
BS2 : PC2
RESET disposition : dedicated
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 4 20 128 0 no 512 4 0 9000 9000 0xff 0xff
flash 33 10 64 0 yes 8192 64 128 4500 4500 0xff 0x00
lfuse 0 0 0 0 no 1 0 0 2000 2000 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 2000 2000 0x00 0x00
lock 0 0 0 0 no 1 0 0 2000 2000 0x00 0x00
calibration 0 0 0 0 no 4 0 0 0 0 0x00 0x00
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00Programmer Type : STK500
Description : Atmel AVR ISP
Hardware Version: 2
Firmware Version: 1.18
Topcard : Unknown
Vtarget : 0.0 V
Varef : 0.0 V
Oscillator : Off
SCK period : 0.1 usavrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.04s
avrdude: Device signature = 0x1e9307 (probably m8)
avrdude: safemode: hfuse reads as D9
avrdude: NOTE: “flash” memory has been specified, an erase cycle will be performed
To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file “usbasp.atmega8.2011-05-28.hex”
avrdude: input file usbasp.atmega8.2011-05-28.hex auto detected as Intel Hex
avrdude: writing flash (4700 bytes):Writing | ################################################## | 100% 7.34s
avrdude: 4700 bytes of flash written
avrdude: verifying flash memory against usbasp.atmega8.2011-05-28.hex:
avrdude: load data flash data from input file usbasp.atmega8.2011-05-28.hex:
avrdude: input file usbasp.atmega8.2011-05-28.hex auto detected as Intel Hex
avrdude: input file usbasp.atmega8.2011-05-28.hex contains 4700 bytes
avrdude: reading on-chip flash data:Reading | ################################################## | 100% 3.89s
avrdude: verifying …
avrdude: 4700 bytes of flash verifiedavrdude: safemode: hfuse reads as D9
avrdude: safemode: Fuses OK (E:FF, H:D9, L:9F)avrdude done. Thank you.
- Done. Disconnect Arduino.
USBASP Drivers on Windows 8, 8.1 and Windows 10
Read this: http://tosiek.pl/manual-install-drivers-and-disable-drivers-signing-policy-on-windows-10-8-8-1/
You have to first disable check signed drivers on windows 8, 8.1 and 10!
(pull Shift and click to restart > Troubleshoot > Advanced options > Startup Settings > Restart button again > On the Startup Settings screen press 7 or F7 to disable driver signature enforcement.)
Download: usbasp-windriver.2011-05-28
Then install it manually in device manager.
14.11.2016 at 18:22
it works for me thank you
27.01.2017 at 20:26
Witam
Po aktualizacji do tego oprogramowania mój USBasp przestał działać w Arduino mam teraz:
avrdude: error: program enable: target doesn’t answer. 1
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
wybrany port szeregowy
nie istnieje albo Twoja płytka nie jest podłączona
A próbuje już różnych sterowników pod moim win10 libusb-win, libusbK i tych usbasp-windriver.2011-05-28 programator przestał działać jako programator :/
27.01.2017 at 21:00
Zobacz w menedżerze urządzeń czy widać urządzenie. Nie wyłączyłeś pewnie wymuszania podpisów cyfrowych i możesz ich zainstalować.
Nie da się tej płytki uwalić, wgraj softa jeszcze raz przez Arduino as ISP i zdejmij zworkę do programowania.
11.06.2017 at 10:59
Cześć! Przechodzę cały proces bez żadnych problemów, dalej pojawia się jednak ten komunikat. Może jakieś pomysły co dalej z tym robić?
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: error: program enable: target doesn’t answer. 0
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
Błąd przy wgrywaniu bootloadera.
Przechodzę cały proces bez żadnych problemów, dalej pojawia się jednak ten komunikat. Może jakieś pomysły co dalej z tym robić?
12.06.2017 at 07:53
Źle podłączone przewody?
21.10.2017 at 17:14
I follow your step, but message:
avrdude: stk500_recv(): programmer is not responding
I use Nano 16Mhz instead of Uno, all boards are health.