Jak wgrać bootloader Arduino z USBasp?

Wielokrotnie może zdarzyć się, że będziesz potrzebował wgrać nowy Bootloader do Twojego Arduino. Albo zostanie uszkodzony w trakcie prac, albo płytka, która przyjdzie będzie miała go w starszej wersji. Zawsze warto mieć wgrany najnowszy Bootloader. W tym artykule skupię się na płytkach opartych o mikrokontrolery AVR, czyli między innymi:

Jednym z najczęściej pojawiającym się błędem w Arduino IDE jest:

avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x45
avrdude: stk500_recv(): programmer is not responding

Jeśli zobaczysz więc taki błąd w Twoim Arduino IDE, to prawdopodobnie potrzebny będzie Ci nowy bootloader. Jak wgrać bootloader do Arduino?

Sprzęt potrzebny do wgrania bootloadera Arduino

Do wgrania nowego Bootloadera będziesz potrzebował programatora. Jako programator może posłużyć inna płytka Arduino. My natomiast skupimy się na dedykowanym programatorze USBasp. Programator ten przychodzi w zestawie z tasiemką. Do niego warto dokupić przejściówkę z 10 na 6 pinów, która niesamowicie ułatwi nam cały proces. Najnowsze sterowniki do USBasp możesz zainstalować używając programu Zadig.

W przykładzie posłużymy się płytką NANO v3.0 z mikrokontrolerem ATmega328P oraz złączem USB-C. Do tej płytki będziemy potrzebowali oczywiście przewodu USB-C.

Mając wszystko możemy przejść do podłączenia. Do wgrania samego bootladera wystarczy podłączyć tylko USBasp. On skutecznie zasili nasze Nano. Złącze na płytce NANO V3.0 niestety nie jest opisane. Podłącz adapter zgodnie ze zdjęciem poniżej.

Następnie połącz taśmą IDC adapter z programatorem USBasp. Tutaj taśma ma tylko jedną możliwość. Tak podłączony programator wepnij do portu USB Twojego komputera. Sprzęt jest gotowy do programowania 👍

Błąd USBasp – przygotowanie AVRDUDE

Wypalanie nowego Bootloadera robimy z poziomu Arduino IDE. Skorzystam ze starszego i wciąż bardzo popularnego Arduino IDE v1.8.19. Niestety próbując zaprogramować mikrokontroler na płytce NANO V3.0 napotkamy na błąd:

avrdude: Warning: cannot query manufacturer for device: No such file or directory

avrdude: Warning: cannot query product for device: No such file or directory

avrdude: error: could not find USB device with vid=0x16c0 pid=0x5dc vendor='www.fischl.de' product='USBasp'

AVRDUDE zawarty domyślnie w Arduino IDE nie potrafi wykryć USBasp. Ale poradzimy sobie z tym! Należy podmienić AVRDUDE znajdujący się w instalacji Arduino IDE. Należy wrzucić mu najnowszą wersję, która nie ma problemów z najnowszymi sterownikami do USBasp.

Najnowsze AVRDUDE pobierzesz stąd: https://github.com/mariusgreuel/avrdude/releases. Wybierz wersję pod swoją architekturę. W środku interesują nas pliki conf i exe. Musimy je podmienić w Arduino IDE w miejscu instalacji.

Plik avrdude.conf wklejamy w lokalizacje:
C:\Program Files (x86)\Arduino\hardware\tools\avr\etc
C:\Program Files (x86)\Arduino\hardware\arduino\avr\bootloaders\gemma

Plik avrdude.exe wklejamy w lokalizacje:
C:\Program Files (x86)\Arduino\hardware\tools\avr\bin

Jest to domyślna ścieżka instalacji. Jeśli instalowałeś Arduino IDE gdzie indziej, to początek będzie inny.

Po wklejeniu plików możemy uruchomić Arduino IDE (lub zrestartować jeśli miałeś uruchomione) i przejść do programowania.

Wypalenie bootloadera Arduino

Sprzęt mamy podłączony i gotowy. AVRDUDE podmienione. Nie pozostaje nam nic innego jak wypalić nowy Bootloader Arduino.

Musisz wybrać swoją płytkę. U mnie będzie to Arduino Nano. W procesor wybierz “ATmega328P“. Jako programator: “USBasp“. Poniżej cała konfiguracja.

Teraz wystarczy kliknąć “Wypal bootloader” i poczekać. Po chwili dostaniesz komunikat z sukcesem.

Bootloader został wypalony i teraz możesz ponownie używać swojego Arduino.

Płytki Arduino w sklepie msalamon.pl

W naszej ofercie znajdziesz wiele modeli oryginalnych płytek Arduino oraz ich klonów. Do tego programatory USBasp, które pomagają w pracy z mikrokontrolerami AVR.

Podobne wpisy

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *