Beberapa waktu yang lalu, sudah saya bahas mengenai cara burning/upload bootloader Arduino menggunakan board Arduino itu sendiri (menggunakan board Arduino Uno). Jadi ada dua macam Arduino di sini, satu sebagai programmer/burner/uploader-nya, dan yang satunya lagi sebagai target pemrogramannya alias target/tempat bootloader akan diisikan. Silahkan dibaca artikel berikut untuk lebih detailnya.
Nah, kali ini saya akan coba menjelaskan dan mempraktekkan alternatif lain mengupload bootloader ke IC Arduino (ATMega8/168/328). Kali ini saya akan menggunakan board USBASP, yakni semacam alat pengisi program ke IC mikrokontroller. Alat ini sangat popular di kalangan penggemar mikrokontroller karena kompak, harganya relatif murah dan handal. Bahkan Anda dapat membuatnya sendiri di rumah!. Anda hanya perlu membuat sistem minimum mikrokontroller ATMega8, menambahkan pinout SPI (Serial Peripheral Interface), yakni pin MISO, MOSI dan SCK (ditambah Reset, Vcc dan Gnd) dan mengisinya dengan program USBASP (freeware). Udah, selesai J. Tapi, kali ini saya tidak akan membahas lebih detail tentang USBSP ini, saya anggap Anda sudah memilikinya baik itu beli yang udah jadi atau bikin sendiri. Nantinya, kita akan memanfaatkan USBASP ini untuk mengupload bootloader ke IC Arduino (ATmega8/168/328).
Mengupload bootloader Arduino menggunakan USBASP ini prinsip kerjanya adalah memanfaatkan port komunikasi SPI yang dimiliki IC ATmega baik yang ada di USBASP maupun di IC Arduino target. Kemudian aplikasi IDE Arduino akan ‘menghubungi’ aplikasi/driver USBASP supaya mengupload bootloader Arduino ke papan target. Kurang lebih ilustrasinya sebagai berikut :
Alat dan bahan yang diperlukan :
– board USBASP + aplikasi/driver
– board Arduino (Uno) + IC ATMega8/168/328 yang masih kosong (blank) + apllikasi IDE Arduino
– kabel USB (2 bh)
Kemudian rangkai alat dan bahan di atas seperti gambar di bawah :
Koneksi kabel :
Perhatikan bahwa untuk koneksi SPI saya menggunakan port ICSP di board Arduino dan dihubungkan dengan pin MISO-MOSI di sisi board USBASP.
Dari sisi aplikasi IDE Arduino, yang perlu disetting adalah [1] di bagian menu Tool – Board (pilih sesuai board Arduino yang Anda gunakan) dan [2] menu Tool – Programmer (pilih USBASP)
Setelah settingan software sudah dilakukan dan koneksi hardware sudah benar, lakukan langkah terakhir dengan memilih [3] menu Tools – Burn Bootloader. Tunggu beberapa saat, dan IC mikrokontroller ATMega Anda sudah siap digunakan sebagai Arduino. Keuntungan menggunakan cara ini adalah lebih ringkas dan cepat dalam menyiapkan alat dan bahan buat burning/upload bootloader daripada cara yang pertama. Selamat mencoba ….
a Technopreneur – writer – Enthusiastic about learning AI, IoT, Robotics, Raspberry Pi, Arduino, ESP8266, Delphi, Python, Javascript, PHP, etc. Founder of startup Indomaker.com
bro udah ikutin toturnya… tapi gak bisa burn bootloader muncul error sck. ini pakai ic atmega8 yg di tancapkan ke board arduino uno yg asalnya atmega328. dimana ya salahnya?
khusus atmega8 ada sedikit settingan manual di file platform.txt dan boards.txt di folder ‘hardware’. Ntar sy tulis tutorialnya
silahkan, tutorialnya udah jadi…. fresh from the oven 🙂
http://saptaji.com/2015/12/16/upload-bootloader-arduino-ke-atmega8-dengan-usbasp/
oh gitu, berarti semua board tuh sama aja ya. nama board beda beda kaya uno, nano itu cuma berbeda ic nya az ya.
intinya sama aja, cuma nanti beda ic bisa beda ukuran RAM, ROM, pin I/O, sehingga functionality-nya jadi beda
Permisi mas numpang tanya. Fungsi Programmer pada bilah Tools di Arduino IDE itu utk pa y.? yg seperti gmbr di atas yg lingkar no 2. Saya make Arduino UNO. Yg umum di pake apa.? ArduinoISP atau AVR ISP.?
Makasih sebelumnya mas
yg dilingkari no 2 artinya tipe programmer yang digunakan untuk meng-upload bootloader ke ic mikrokontroller arduino (atmega series)
yg umum digunakan ArduinoISP atau USBASP
Mas tanya ya,
Kalo mau burn ic atmega 328 tapi yg smd gimana ya?
Kalo bikin converter dl dr smd ke yg tipe ic biasa apakah step2 nya sama dengan tutorial diatas nanti urutan burn nya?
1. pake converter mas atau bikin pcb-nya dulu
2. sama
Mas mau tanya apa ic atmega 16 atau seri keatas ini bisa menggunakan bootloadernya arduino? Dengan memakai tutorial di atas.
mungkin bisa ya, tapi belum pernah coba
mas mau tanya kalo untuk atmega2560 bisa tidak ?
Mas setelah berhasil botlable atmega 328 ,langkah selanjutnya misal mau program trs di masukan ke atmega yang 328 dengan usb asp bagaimana? #mohonbantuanya
Mas saya masi newbie di arduino mau coba tentang bootloader.. Boleh minta kontak nya mas? Balas ke [email protected]
silahkan pertanyaannya diposting di sini aja mas
Mas cara downloads program dari arduino yg sudah terprogram gmna ya dan pake alat apa?
pake USBASP bisa, tapi yang terbaca adalah versi HEX-nya (file biner atau sering kita sebut sebagai ‘bahasa mesin’)
mas, sy mw tnya nie.
smlm sy mw upload program, tp knp tiba2 muncul pesan Error, dan di tandai pda board Arduino lampu led L dket pin 13 menyala terus.
avrdude: stk500_getsync(): not in sync: resp=0x00
klo blh th, solusi nya gmn yach, mas…
gagal upload itu mas. Coba cek port COM-nya
mas, klo muncul avrdude: initialization failed, rc=-1 gmn ya??
gagal inisialisasi mas, bisa karena kabelnya, bisa karena salah signature tipe chi mikrokontrollernya
bos bisa ndak ,, aku pnya 2 arduino , yang 1 ada isinya yg 1 kosong, yg ada isinya itu di copy ke arduino yang kosong , dengan sofware apa kalaw bisa,
belum pernah nyoba mas, kalo sy lebih suka bikin program sendiri daripada copy punya orang (menghormati hak kekayaan intelektual orang lain)
Work ! Terima Kasih sudah berbagi ilmu nya mas.
itu di gambar IC yang kosong di taruh di board arduino gan?
trs di board usbaspnya itu ic apa gan yang isinya apa?
minta dijelasin gan
thanks
itu di gambar IC yang kosong di taruh di board arduino gan? –> iya
trs di board usbaspnya itu ic apa gan yang isinya apa? –> program usbasp, bisa beli yg udah jadi
apakah buat arduino leonardo bisa?
bisa mas, cuma nanti pilih bootloader buat leonardo ya
ok bro tanks
Mau nanya mas, penyebab di menu tool usbasp tidak ke detek kenapa yaa ?
Padahal di driver sudah terinstal
Terimakasih..
yg ngga kedetect itu usbasp-nya atau ic targetnya mas?
Usbaspnya mas..
drivernya coba instal lagi mas, posisi ic target dilepas dulu