O Arduino Software (IDE) de código aberto facilita a escrita de código e o upload para a placa. Este software pode ser usado com qualquer placa Arduino.
avrdude é utilizado para baixar / carregar / manipular o conteúdo de microcontroladores AVR (Arduino Uno) utilizando programadores ISP.
Arduino Uno
Arduino Uno é uma placa microcontrolada que possui o chip atmega328p que vem com um bootloader que possibilita a atualização do código utilizando a porta USB.
Também possui um header de 2×3 com os pinos para gravar o firmware utilizando programadores ISP.
ISP programmer
USBasp é um programador de microcontroladores AVR como o chip atmege328p. Possui uma saída com o padrão ISP com header 2×5, com cabo e adaptador para 2×3 que conecta já placa do Arduino Uno.
Depois de conectar o USBasp no computador é possível utilizar o avrdude para controlar o programador e passar o firmware para o mcu atmega328p.
Vídeo
Segue um vídeo que mostra como transferir o firmware que foi criado pelo Arduino IDE e passar utilizando um script feito em batch (.bat) e o avrdude com o gravador usbasp.