Novinky: Pridal som novú sekciu na webe - Turistika
Sitepoint logo

Oživenie Arduino UNO R3, ktoré sa nezobrazovalo v správcovi zariadení

Pri práci na jednom projekte pre zákaníka sa mi odporúčalo moje prvé, pôvodné UNO, kúpené za plnú cenu cca 35€. Mám tu okolo seba síce 10 ďalších replík z ebay (Pro Mini, Pro Micro…), ale projekt bol postavený na shielde pre UNO, tak som ho chcel/musel opraviť. Prvý krát som prepóloval 12V n a RAW vstupe a odniesol si to len stabilizátor NCP1117-ST50 v puzdre SOT-223, opravil som, doplnil schootky na vstup aby sa to neopakovalo.

Druhý krát sa odporúčalo z nezistenej príčiny, prestalo sa hlásiť vo Windowse, žiaden virtuálny COM port, nič. Reštart, iný USB port, iný kábel, nič. Zelená LED svietila, ale to bolo všetko. Pomeral som napätia na MEGA238P aj na MEGA16U2, všetko hralo. Skúšobne som išiel nahrať nejaký program cez FTDI kábel (VCC, GND, D0, D1, RESTART) ale nešlo to. Bolo jasné, že bootloader alebo celý procesor je v čudu, iný som po ruke nemal, tak som začal pátrať a objavil som super návod ako využiť DFU režim MEGA16U2.

dfu-modePo resetnutí MEGA16U2 sa v správcovi zariadení zobrazil, nahral som ovládač, objavil sa ako ATmega16U2, ale v programe FLIP sa mi nedarilo, firmware Arduino-COMBINED-dfu-usbserial-atmega16u2-Uno-Rev3.hex sa nechcel zmestiť do bufferu, Arduino-usbserial-atmega16u2-Uno-Rev3.hex sa síce zmestil, ale pri uploade vždy vybehla chyba že nevie skontrolovať čo zapísal (verify).

dfu-rangeTu už mi trochu zredlo a obával som sa že MEGA16U2 je kaput. Nádej mi na druhej strane dodávalo, že išiel prepnúť do DFU režimu…

Ako ďalšia možnosť sa ukázalo použiť ISP programátor a využiť ISP piny priamo na doske. AVR programátor doma nemám, ale zistil som že je jednoduché si ho vyrobiť – Mini Pro -> ISP programátor. Potom stačí nahrať do Mini Pro obligátny sketch ArduinoISP a použiť príkazový riadok.mini-ispDo adresára \arduino\hardware\tools\avr\bin treba skopírovať súbor \arduino\hardware\tools\avr\etc\avrdude.conf a súbor Arduino-COMBINED-dfu-usbserial-atmega16u2-Uno-Rev3.hex a spustiť príkaz:

COM port upravte podľa seba, Enter a je to.

Ešte som musel podobným spôsobom preflashnúť aj bootloader na MEGA328P, čiže druhý ISP konektor a iný HEX súbor

a hotovo, UNO rev3 funguje ako predtým.

Napísať komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *