AVRDUDE(1) General Commands Manual AVRDUDE(1) (NAME) avrdude - AVR (SYNOPSIS) avrdude [-p --part part] [-b --baud baudrate] [-B --bitclock clock] [-c --programmer pgm] [-C --config file] [-C --config +file] [-N --noconfig] [-A --keep-trailing-0xff] [-D --noerase] [-e --erase] [-E --exitspecs exitspec[,exitspec]] [-F --force] [-i --isp-clock-delay delay] [-l --logfile file] [-n --test-memory] [-O --osccal] [-P --port port] [-r --reconnect] [-q --quell] [-T --command cmd] [-t --terminal] [-U --memory mem:op:file:fmt] [-v --verbose] [-x --extended extended_param] [-V --noverify-memory] [--version] [-h --help] (DESCRIPTION) Avrdude Atmel AVR . Avrdude STK500 Atmel AVRISP AVRISP mkII Atmel STK600 Atmel JTAG ICE Atmel ( mkI mkII 3 ISP ) AppNote AVR910 AVR109 ( Butterfly) BSD ppi(4) parport(4) . AVR . (MCU) ppi(4) MCU `/RESET ' `SCK ' `SDI' `SDO' SPI AVR MOSI SDO MISO SDI . MCU (passive) . LED / 74LS367 ( 74HCT367) . MCU (in-system programming) . (bit-bang) Ponyprog DASA DASA3 uisp(1) . . USB . GPIO ( ) - SDO SDI RESET SCK AVR linuxgpio . sysfs GPIO . . GPIO . - 74HC244. SPI GPIO Raspberry Pi ``linuxspi'' . SPI GPIO . GPIO SPI (chip select) . SPI SPI . SPI/GPIO . GPIO avrdude reset linuxspi . (pull-up) AVR Vcc . Vcc SPI AVR . -P portname /dev/spidev0.0:/dev/gpiochip0 . STK500 Atmel . 1.x 2.x ( ) . ( stk500pp stk500hvsp). Wiring ( Arduino Mega 2560 Rev3) STK500 V2.x DTR/RTS . ``wiring'' . -D . STK500 1.x ``arduino'' . Arduino Uno Rev3 AVR Optiboot . Urprotocol STK500 1.x STK500 v1.x urboot https://github.com/stefanrueger/urboot . ``urclock'' urboot . arduino urclock . ( avrdude) -x bootsize= urclock . / EEPROM -x eepromrw avrdude -c urclock . BusPirate AVR . BusPirate AVR . (extended parameters) . STK600 Atmel ISP USB . ATxmega STK600 PDI . ATtiny4/5/9/10 STK600 AVRISP mkII TPI . AVR910 Atmel AVR109 Atmel ( AVR Butterfly ) . JTAG ICE Atmel ( mkI mkII 3) AVR ( ). JTAG ICE mkII JTAG debugWIRE ISP 4.14 () . JTAGICE3 JTAG debugWIRE ISP . debugWIRE . ATxmega JTAG ICE mkII PDI 5.37 () . ATxmega JTAGICE3 PDI . Atmel-ICE (ARM/AVR) (JTAG PDI Xmega debugWIRE ISP UPDI) . XplainedPro Atmel EDBG ( CMSIS-DAP) "jtag3" . XplainedMini Atmel mEDBG "jtag3" . AVR Dragon (ISP JTAG HVSP PP debugWIRE) . JTAG debugWIRE AVR Dragon JTAG ICE mkII . ISP AVR Dragon AVRISP mkII ( JTAG ICE mkII ISP) . Dragon ISP -B bitclock ISP . ATxmega AVR Dragon PDI 6.11 () . USBasp ISP USBtinyISP avrftdi CH341A avrdude libusb . USBasp ISP USBtinyISP USB ATmega8 ( ATmega88) ATtiny2313 . CH341A AVR . SPI . . AVR . : AVR . -c ch341a . libftdi avrdude avrftdi 2232C/D/H 4232H FTDI MPSSE ( ) SCK SDO SDI . . Atmel DFU FLIP ( *AT90USB *ATmega*U) ( Xmega) . FLIP . MPLAB(R) PICkit 4/5 MPLAB(R) SNAP JTAG TPI ISP PDI UPDI . Curiosity Nano UPDI . "PICkit on Board" pkobn_updi . SerialUPDI pymcuprog https://github.com/microchip-pic-avr-tools/pymcuprog Microchip DxCore Spence Konde https://github.com/SpenceKonde/DxCore . USB->UART . UPDI . texinfo . jtag2updi AVR UPDI . jtag2updi AVR jtagice mkii avrdude . https://github.com/ElTangas/jtag2updi Micronucleus V1 V2 . -V AVRDUDE . Micronucleus (extended parameters) . Teensy AVR . -V AVRDUDE . Teensy (extended parameters) . Intel Hex Motorola S-Record. asl(1) avr-objcopy(1) GNU AVR. avrdude libelf(3) ELF . () ELF . Avrdude EEPROM ROM AVR . . avrdude ( -U ) ( dump write ) . ( ) . <<>> (terminal) MCU . (Terminal mode) . (Options) avrdude. . -p --part partname (MCU) . . ? partname . ? "?" \? . -v . -p . -p ? ( -c ) () . . : AT90S1200 ISP AT90S1200 AVR . . (bitbang) STK500v2 . AT90S2343 AT90S2323 ATtiny22 . ATmega2560, ATmega2561 . ATtiny11 ATtiny11 (high-voltage serial) . -p --part wildcard/flags (wildcard) . : avrdude -p m328p/S AVRDUDE MCU ATmega328P avrdude -p x/h . -b --baud baudrate (override) (baud rate) RS-232 default_baudrate ${HOME}/.config/avrdude/avrdude.rc ${HOME}/.avrduderc . -r --reconnect -r . "1200bps touch" Arduino Leonardo Arduino Micro/Pro Micro Arduino Nano Every . -r . -B --bitclock bitclock (bit clock period) JTAG PDI TPI UPDI ISP. . "Hz" "kHz" "MHz" . . . . / . 'default_bitclock' ${HOME}/.config/avrdude/avrdude.rc ${HOME}/.avrduderc . Microchip bitclock . << >> (AVRISPmkII AVR Dragon JTAG ICE mkII STK600) << >> (JTAGICE3 Atmel ICE Power Debugger) . << >> (PICkit 4 MPLAB SNAP) bitclock . -c --programmer programmer-id . ( -C ). avrdude Atmel AVR . 'default_programmer' ${HOME}/.config/avrdude/avrdude.rc ${HOME}/.avrduderc . ? programmer-id . ? "?" \? . -c ? ( -p ) () . . -c --programmer wildcard/flags (wildcard) . : avrdude -c usbtiny/S AVRDUDE usbtiny avrdude -c x/h . -C --config file . avrdude . ${PREFIX}/etc/avrdude.conf, . file +file . . . -N --noconfig ~/.config/avrdude/avrdude.rc ~/.avrduderc avrdude . -A --keep-trailing-0xff 0xFF AVR . 0xFF 0xFF . -A . -c arduino -A . -D --noerase . -U --memory avrdude (chip erase) . . ATxmega UPDI ( AVR8X) . . -D -A. . -e --erase (chip erase) . ROM EEPROM `0xff', (lock bits) . ATxmega UPDI ( AVR8X) ROM . `1' `0'. . -U, -T -t . -U, -T -t -T erase . -e -D avrdude . avrdude -U -T erase . . EEPROM . -E --exitspecs exitspec[,exitspec] exitspec . exitspec . exitspec avrdude -E help ... . -F --force avrdude (device signature) . ( ) . Atmel STK500 STK600 ( ) -t (terminal mode) . . -i --isp-clock-delay delay (bitbang) delay . ( RC ) ISP / CPU . (spin-loop delay) . () avrdude . Win32 . -l --logfile file file stderr . ( ) stderr . -n --test-memory : (MCU) -U ( avrdude ). . -O --osccal RC Atmel AVR053 . STK500v2 AVRISP mkII JTAG ICE mkII . EEPROM . -P --port port port . spi linuxgpio BSD . -P default_serial, default_spi, default_linuxgpio default_parallel . . USB avrdude.conf .avrduderc . -P . -c pickit2 -P . USB -P usb[::][:] () / . (:) . JTAG ICE mkII JTAGICE3 SNAP PICKit5 CH341A teensy avrftdi -P . CH341A teensy . avrdude libserialport avrdude.conf .avrduderc ch340 ft232r. ft232r:12345678. USB . ( USB ) . / (...) . ft232r:1234 ft232r:...5678. USB avrdude USB usb:0x2341:0x0043 usb:2341:0043:12345678. -P ?s . avrdude -P ?sa . ? "?" \?. Win32 lpt1 lpt3 0x378 0x278 0x3BC . C ( `0x' ). JTAG ICE mkII JTAGICE3 avrdude libusb port usb[:serialno]. . avrdude USB . serialno JTAG ICE mkII USB . (:) . avrdude -v -P usb:xyz -c jtag2 -p ... 2>&1 | grep ^Found JTAG ICE USB (Example Command Line Invocations) pdf . AVRISP mkII USB . USB AVR-Doper HID avrdoper. . libhidapi Mac OS . AVR-Doper https://www.obdev.at/products/vusb/avrdoper.html . USBtinyISP USB -P usb:: . USBasp -P usb:: -P usb: . (Troubleshooting) pdf . XBee ZigBee XBeeBoot . ZigBee XBee port `@' XBee ( ). : 0013a20000000001@/dev/tty.serial. XBeeBoot . . ( ) port net:host:port. . TCP (TCP) port host . IPv6 host ( net:[2001:db8::42]:1337). . (no parity) STK500. : IPv6 ( ) (Posix) . -q --quell ( ) . . -T --command cmd cmd -t -T -U . cmd . . -t --terminal avrdude -t -T -U . -U --memory memory:op:filename[:format] -t -T -U . memory . 8.0 flash,eeprom; Intel Hex Motorola S-Record AVRDUDE . ALL all . etc all; signature,etc signature . all,-calibration. part . flash, eeprom, signature lock, lockbits . signature . lock / flash . lock (chip erase) . / . flash NOR . flash . (chip erase) EEPROM . AVRDUDE -U flash . ATxmega UPDI ( AVR8X) (page erase) AVRDUDE -e ( ) -D ( ) . -e flash ATxmega UPDI . : https://github.com/avrdudes/avrdude/blob/main/avrdude.pdf op : r w v (verify) filename . format . Format : i Intel Hex I Intel Hex AVR s Motorola S-Record r (raw binary) (little-endian) flash e ELF (Executable and Linkable Format ) m (immediate mode) filename -U . . a (auto detect) stdin . d (decimal) . . h (hexadecimal) 0x . o (octal) 0 . b (binary) 0b . m, d, h, o b . . write (short integer) (long integer) (long long integer) (floating point) (double precision) C nul C '' . (little-endian) . 0x 0b 0x002a 0x2a 0x00 0x01234 . write . Intel Hex . avrdude elf (:e) Intel hex (:I :i) Motorola S-Record (:s) elf (:e ) . filename format format . flash ( Xmega) 0xFF () . . -A . -U filename -U flash:w:filename:a. . filename . flash urboot: urboot . -c dryrun -U urboot:help . AVRDUDE : https://github.com/avrdudes/avrdude/blob/main/avrdude.pdf urboot:... flash -U . -v --verbose (verbose). -v . -V --noverify-memory (verify) AVR -U. --version . -x --extended extended_param extended_param . . avrdude -x help ... . -h --help . (Terminal mode) avrdude MCU . readline(3) . addr len dump read disasm write save erase perl python . [start, end] sz : addr len ------------------------------------------------------------------------ 0/pos pos [addr, addr+len-1] : len = end-start+1 0/pos neg [addr, sz+len] |len| sz neg pos [sz+addr, |addr| sz+addr+len-1] neg neg [sz+addr, sz+len] any 0 empty set addr [-sz, sz-1] . [start, end] end-start + 1 . End dump read disasm (wrap around) . sz 0x800 () : addr len ------------------------------------------------------------------------ 0x700 12 [0x700, 0x70b] 1024 -257 [0x400, 0x6ff] 0x800 -512 512 [0x600, 0x7ff] -256 -1 [0x700, 0x7ff] 0 49 [0, 48] 0 -49 [0, 1999] = |len+1| 0 -1 [0, 0x7ff] 2046 4 [0x7fe, 0x801] 2046 4096 [0x7fe, 0x17fe] 0x7fd -1 -1 [0x7ff, 0x7ff] 0x7ff -1 -2 [0x7ff, 0x7fe] : -1 -3 [0x7ff, 0x7fd] : : dump memory addr len ( ) (hexadecimal) (ASCII). dump memory addr memory addr dump memory addr len ( ) . dump memory (dump) dump memory . dump dump dump . dump memory addr ... addr ( : dump memory addr -1 ). dump memory ... ( : dump memory 0 -1 ). read (alias) dump . disasm [opts] [arguments] dump disasm (opcodes) AVR . dump disasm disasm ( ). dump : disasm disasm . disasm (case) . disasm . disasm : -g avr-gcc: -sOFQ (preamble) .text main -G () -g . -A -a () . -O (opcode) -o () opcode . -C -c () . -f SREG ---SVNZC sbiw -F () SREG . -q -Q () . -n subtract immediate from word sbiw -N () . -e Rd+1:Rd <-- Rd+1:Rd - K sbiw -E () . -S AVR: r31:30 r30 -s () avr-gcc . -L -l () jump/call . -U -u () (tagged) . -d (undocumented) -D () . -z (zap) (jumps calls) . -t= tagfile ( ) . tagfile (ASCII) (L) (P) / (M) . (#) tagfile disasm . tagfile : --------------------------------------------------------------- 0x7f54 L putch Outputs a char # L are code labels 0x7ffe P W 1 version16 A word integer # P are PGM data 0x7f80 P A 4 headings Column headers # Auto-aligned strings 0x0100 M B 2048 sram 2 kB SRAM # Memory address --------------------------------------------------------------- L goto . : L disasm . P M B W ( ) (multiplicity count) . P ( M) ( ) long ( ) quad ( ) octa ( ) C L Q O nul A S . A/S . A S A nul . P M disasm . P tagfile disasm .byte .word .asciz .ascii . L P M . tagfile disasm . . elf2tag .elf : $ elf2tag file.elf >file.tag elf2tag avr-objdump -d L avr-nm M . write memory addr data[,] {data[,]} addr, . flash EEPROM bootrow usersig (cache) . . flash EEPROM . data C . data . :f . . urboot: urboot . write flash urboot:help . AVRDUDE : https://github.com/avrdudes/avrdude/blob/main/avrdude.pdf ...:urboot flash ( -U). : HH H/S L LL . D double F float float . . 0x1.8D float D 0x1.8p0D . U . 0x 0b . +0x -0x +0b -0b U . 2^64-1 . n C -n . [2^63-1, 2^63-] . 0x 0b n ( ) / n- . . . : 255U [127, 128-] . - 1-U 0xFFFFffffFFFFffffU . data (copy & paste) . write memory data . data . write memory file . write memory addr len data[,] {data[,]} ... ... addr len data (pad) . . save memory {addr len} file[:format] :format . :r (raw binary) . . . Motorola S-Record (:s) Intel Hex (:i :I) . Avrdude ELF . . - avrdude (stdout) . backup memlist file[:format] . :r ( ) :I (Intel Hex ) . Memlist -U. backup . restore memlist file[:format] . : NOR ( flash ). erase ( ) . - . Memlist -U. restore . . verify memlist file[:format] . Memlist -U. verify . erase (chip erase) flash EEPROM bootrow. EESAVE ( ) EEPROM . erase memory . erase memory addr len . flush flash EEPROM bootrow usersig . flash ( EEPROM ) NOR () . NOR . Usersig . NOR ( PDI/UPDI) EEPROM flash EEPROM flash . . abort flush quit, EOF . abort flash EEPROM bootrow usersig . config {<-f|-a|-v>} (mnemonic) . . -f . Config -a . () . -v config . config {<-f|-v>} {<-f|-v>} . ( ) . config {<-f|-v>} = {<-f|-v>} ( = ). () . . config {<-f|-v|-c>} = {<-f|-v|-c>} . . ( ) . . -v . -v -c . <<>> (brick) : (here be dragons). factory reset ( EEPROM ). F_CPU MCU . avrdude F_CPU/4 . factory reset . regfile {} regfile (register file) io, : ( ISP TPI) . -a / (I/O) -m lds/sts I/O . -s -v . regfile {} {} regfile reg reg . (wildcard) . module.name module.instance.name . reg porta.out porta.outdir. reg instance.name name instance.name name . porta.out* regfile {} = {} reg value . ( UPDI) io (reset) . include [] . . include -e (verbosity) . sig . part (variants). -m -v . verbose [level] ( level ) (verbosity). -v . quell [level] ( level ) (quell). . . -q . help . quit avrdude. ! (subshell) !ls *.hex. . allow_subshells = yes; ${HOME}/.config/avrdude/avrdude.rc ${HOME}/.avrduderc . # ( ). d r w q ? dump read write quit help . . cmd -? cmd . : pgerase memory addr . send b1 b2 b3 b4 AVR. AVR avrdude avrdude . SPI . spi SPI. pgmled (chip select) . USBtiny . pgm ( SPI). vtarg voltage voltage . STK500 STK600 . varef [channel] voltage voltage . Aref STK500 . Atmel STK600 channel ( ) . STK500 STK600 . fosc freq[M|k] freq . M 1E6 k 1E3 . STK500 STK600 . fosc off . STK500 STK600 . sck period SCK period . Microchip bitclock . -B bitclock . parms . (Default Parallel port pin connections) ( -c ) (Pin number) (Function) 2 - 5 Vcc ( MCU) 7 /RESET ( MCU) 8 SCK ( MCU) 9 SDO ( MCU) 10 SDI ( MCU) 18 - 25 GND DebugWIRE (DebugWIRE limitations) debugWIRE ( ) Atmel AVR `/RESET' . debugWIRE `DWEN' . / . flash ROM EEPROM . (signature) . . (chip erase) debugWIRE flash ROM flash ROM . JTAG ICE mkII ( AVR Dragon) . debugWIRE JTAG ICE mkII ( AVR Dragon) debugWIRE ISP . JTAG ICE mkII AVR Dragon ISP ISP . FLIP (FLIP version 1 idiosyncrasies) FLIP . Flash EEPROM . (security mode) ( AVR ) . (chip erase). . -U . 0xFF . avrdude -F . (chip erase) EEPROM . (Programmers accepting extended parameters) dryrun dryboot dryrun dryboot . : init . Flash . :I hex -U flash:r:-:I . flash AVR / (I/O) . seed . init= -x init -x seed= ( ) random . Flash . flash I/O SRAM flash . seed . random= -x random -x seed= seed= time(NULL) . n > 0 avrdude . help . JTAG ICE mkII JTAGICE3 Atmel-ICE Power Debugger PICkit 4 MPLAB SNAP AVR Dragon JTAG ICE mkII JTAGICE3 Atmel-ICE PICkit 4 MPLAB SNAP Power Debugger AVR Dragon JTAG : jtagchain=UB,UA,BB,BA JTAG UB UA BB BA AVR . AVR (shift) . JTAG . hvupdi Power Debugger PICkit 4 UPDI UPDI RESET GPIO . -x hvupdi UPDI . vtarg . vtarg=VALUE Power Debugger . help . PICkit 4 MPLAB SNAP mode=avr AVR AVR mode= MPLAB PIC PICkit 4 MPLAB SNAP avrdude AVR . -x mode=avr AVR -x mode=mplab () MPLAB . vtarg . help . PICkit 5 PICkit 4 (PIC mode) vtarg . vtarg= . . . VTG . AVRDUDE . 0 V . XMEGA . . hvupdi UPDI UPDI RESET GPIO . UPDI -x hvupdi . HV RST UPDI . help . Xplained Mini (ISP and UPDI) suffer=VALUE, suffer SUFFER mEDBG . -x suffer . Bit 7 ARDUINO: LED Bit 6..3: ( ) Bit 2 EOF: USB Bit 1 LOWP: mEDBG Bit 0 FUSE: . . vtarg_switch=VALUE, vtarg_switch . -x vtarg_switch . . Xplained Nano . help . Curiosity Nano vtarg=VALUE, vtarg . -x vtarg . help . STK500 STK600 vtarg=VALUE, vtarg . -x vtarg . fosc=VALUE[MHz|M|kHz|k|Hz|H], fosc . -x fosc . varef=VALUE, varef . -x varef . varef[0,1]=VALUE, varef[0,1] STK600 . -x varef0 -x varef1 . attemps[=<1..99>] STK500V1 . . xtal=VALUE[MHz|M|kHz|k|Hz|H] XTAL . STK500 . avrdude fosc sck . help . AVR109 autoreset RTS/DTR . help . AVR910 devcode=VALUE VALUE . VALUE `T' . VALUE C . no_blockmode . no_blockmode AVR910 . help . Arduino attemps[=<1..99>] . . noautoreset RTS/DTR . help . Urclock showall . -x show... ( ) . showid Urclock EEPROM . id=.. Urclock (little-endian) Urclock EEPROM . -x id=.. . E EEPROM F . addr EEPROM . len Urclock . showdate . stdin . urclock -x nometadata . showfilename ( ) . title= . / (nul) . showapp . showstore . showmeta . showboot . showversion . showvector . (Reset) VBL_ADDITIONAL_VECTOR . showpart . bootsize= . Urboot urclock . . vectornum= . Urboot urboot . ( urboot ) . . eepromrw / EEPROM. urboot / EEPROM . emulate_ce urboot (chip erase) urclock . urclock 0xff . urclock . . restore . . . -x restore AVR . . initstore 0xff . nofilename ( ) . nodate ( ) . nostore 0xff . . noautoreset RTS/DTR . nometadata . . 0xff . -x nometadata urclock ( ) . -x nometadata -x nostore avrdude -x showall . -x showall -x nometadata . delay= . . . strict Urclock -c arduino stk500v1 -x strict . help . buspirate reset=cs,aux,aux2 CS BusPirate RESET AVR . AVR BP SDI SDO SCK . RESET AVR CS BusPirate RESET AVR AUX BusPirate BusPirate AUX2 ( BusPirate v1a . ) RESET AVR . (3-state bus buffer) SPI BusPirate AVR . 74HC125 74HC244 (cs aux aux2) . SPI AVR . spifreq=<0..7> SPI SPI Bus Pirate: 0 .. 30 kHz () 1 .. 125 kHz 2 .. 250 kHz 3 .. 1 MHz 4 .. 2 MHz 5 .. 2.6 MHz 6 .. 4 MHz 7 .. 8 MHz rawfreq=<0..3> SPI "raw-wire" Bus Pirate : 0 .. 5 kHz 1 .. 50 kHz 2 .. 100 kHz ( +v4.2) 3 .. 400 kHz (v4.2+) "raw- wire" SPI . . ascii ASCII BinMode ( ) . BinMode . BinMode BinMode . ASCII reset=, spifreq= rawfreq= . ASCII . nopagedwrite . SPI AVR . . nopagedread SPI AVR . "Bulk Memory Read from Flash" . . cpufreq=<125..4000> AUX n . AUX XTAL1 . CPU SPI . serial_recv_timeout=<1...> . avrdude (prompt) BusPirate . ascii . . . help . Micronucleus bootloader wait[=] . timeout . AVRDUDE . help . Teensy bootloader wait[=] . timeout . AVRDUDE . help . Wiring Wiring : snooze= AVRDUDE snooze / (snooze) . snooze DTR/RTS . delay= DTR/RTS . . . noautoreset RTS/DTR . help . PICkit2 PICkit2: (AVR) (PICkit2) RST - VPP/MCLR (1) VDD - VDD Target (2) -- AVR GND - GND (3) SDI - PGD (4) SCLK - PDC (5) SDO - AUX (6) clockrate= SPI ( ). -B -i . timeout= USB ( ). help . USBasp section_config -e ( / chip erase) . TPI ( ATtiny 4/5/9/10/20/40) . help . xbee xbeeresetpin=<1..7> DIO<1..7> XBee `/RESET' . DIO . (3) DIO3 ( XBee) XBee . XBee - DOUT XBee ( ) `RXD' DIN XBee ( ) `TXD' . help . jtag2updi serialupdi rtsdtr=low,high RTS/DTR low high . UPDI . / . help . linuxspi disable_no_cs SPI_NO_CS SPI . CS . help . serprog cs (CS) . 0x16 serprog CS (0) . CS ( ...) AVR . help . exitspec (Programmers accepting exitspec parameter) flip2 linuxspi linuxgpio raspberry_pi_gpio pickit4_mplab pickit5 stk200 dapa exitspec . . exitspec . flip2 linuxspi linuxgpio raspberry_pi_gpio (Parallel port programmers) help . reset `/RESET' low MCU . AT90S1200 `/RESET' MCU MCU avrdude . noreset `/RESET' MCU . (Parallel port programmers) vcc ( high) `Vcc' (MCU) . novcc `Vcc' (pull down) . d_high . ( high) d_low . ( low) Pickit 4 (MPLAB) Pickit 5 vcc avrdude . . (FILES) /dev/ppi0 avrdude.conf (Windows) . ../etc/ ${PREFIX}/etc/avrdude.conf . ${XDG_CONFIG_HOME}/avrdude/avrdude.rc ( ) avrdude.conf . ${XDG_CONFIG_HOME} ${HOME}/.config/ . ${HOME}/.avrduderc ~/.inputrc readline(3) /share/doc/avrdude/avrdude.pdf (DIAGNOSTICS) avrdude: jtagmkII_setparm(): bad response to set parameter command: RSP_FAILED avrdude: jtagmkII_getsync(): ISP activation failed, trying debugWIRE avrdude: Target prepared for ISP, signed off. avrdude: Please restart avrdude without power-cycling the target. AVR debugWIRE ( DWEN ) ISP /RESET . JTAG ICE mkII ISP avrdude debugWIRE . AVR ISP ( ). ISP . (SEE ALSO) avr-objcopy(1), ppi(4), libelf(3), readline(3) AVR : https://www.microchip.com/en-us/products/microcontrollers-and-microprocessors/8-bit-mcus/avr-mcus (AUTHORS) Avrdude Brian S. Dean . Joerg Wunsch Hans Eirik Bull Stefan Ruger . (BUGS) : https://github.com/avrdudes/avrdude/issues JTAG ICE ROM . ROM (terminal mode) . EEPROM JTAG ( -U) (chip erase) . EEPROM JTAG . STK500 STK600 . USBasp USBtinyISP . USBtinyISP SPI (Chip Select) (low) . avrftdi vid,pid (usbsn) (usbvendor) (usbproduct) lsusb USB . . H MPSSE . 'A' . Linux 6.12.107+deb13-amd64 January 15, 2023 Linux 6.12.107+deb13-amd64