Odtworzenie bootloadera w Arduino Uno z wykorzystaniem programatora AVRISP mkII
Jeżeli dotknie nas nieszczęście spalenia mikrokontrolera na płytce Arduino Uno lub po prostu jakimś dziwnym trafem z naszego układu „zniknie” bootloader, próba zaprogramowania zakończy się niepowodzeniem i komunikatem o błędzie pokazanym na rysunku 1:
avrdude: stk500_getsync(): not in sync: resp=0x00

Rys. 1. Przy usuniętym bootloaderze próba zaprogramowania zakończy się komunikatem błędu
W przypadku uszkodzenia mikrokontrolera ATmega328, niestety trzeba go wymienić na inny egzemplarz. Natomiast w obu wymienionych wyżej sytuacjach konieczne jest wgranie do mikrokontrolera odpowiedniego bootloadera. Mogłoby się wydawać, że zaprogramowanie układu bootloaderem jest operacją trywialną, gdyż w środowisku Arduino IDE przewidziano do tego odpowiednią funkcję – w menu Tools pozycja Burn Bootloader (rysunek 2). Niestety opcja ta prawidłowo działa w przypadku wykorzystania programatorów USBasp czy Arduino ISP (zestaw Arduino pracujący jako programator). Natomiast próba zaprogramowania bootloadera popularnym programatorem AVRISP mkII często kończy się niepowodzeniem pokazanym na rysunku 3:
Error while burning bootloader. avrdude: usbdev_open(): did not find any USB device "usb"

Rys. 2. W Arduino wyróżniono funkcję do zaprogramowania bootloadera

Rys. 3. Próba wgrania bootloadera programatorem AVRISP mkII zwykle kończy się komunikatem o błędzie
Wynika to z tego, że Arduino IDE używa do współpracy z programatorem AVRISP mkII sterownika libusb , natomiast niemal każdy użytkownik mikrokontrolerów AVR ma zainstalowane środowisko AVR Studio lub Atmel Studio, które do współpracy z programatorem AVRISP mkII wykorzystuje sterowniki firmy Jungo (rysunek 4 ). Można oczywiście odinstalować sterownik firmy Jungo, jednak w takim przypadku nie będzie można korzystać z programatora w środowisku firmy Atmel.

Rys. 4. Po zainstalowaniu środowiska AVR Studio lub Atmel Studio do obsługi programatora AVRISP mkII jest przeznaczony sterownik firmy Jungo, z który nie współpracuje Arduino

Tajemnica pierwiastka z 6 i liczby 29, czyli generatory z przesuwnikiem fazy CR
Zamienniki układów interfejsu I2C od Sensylink
Dlaczego niezawodność jest ważniejsza niż wydajność w systemach wojskowych? 


![https://www.youtube.com/watch?v=kmvM5hVSzCM Piata już edycja konferencji Hardware Design Masterclasses dla elektroników zaskoczyła frekwencją, tym bardziej, że spotkanie było dwudniowe. Film jest krótką relacją z wydarzenia, bazującą na wypowiedziach prelegentów. [materiał redakcyjny] Zapraszamy do obejrzenia!](https://mikrokontroler.pl/wp-content/uploads/2026/01/Rafal-tytulowe.png)


