Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

[Solved] Arduino Leonardo nie działa

TheKocur 20 Jan 2019 20:42 1377 22
  • #1
    TheKocur
    Level 8  
    Witam , mam problem z Arduiono podczas wgrywania wyskakuje taki błąd.



    Arduino:1.8.8 (Windows 7), Płytka:"Arduino Leonardo"

    Szkic używa 4130 bajtów (14%) pamięci programu. Maksimum to 28672 bajtów.
    Zmienne globalne używają 149 bajtów (5%) pamięci dynamicznej, pozostawiając 2411 bajtów dla zmiennych lokalnych. Maksimum to 2560 bajtów.

    avrdude: butterfly_recv(): programmer is not responding
    avrdude: butterfly_recv(): programmer is not responding
    avrdude: butterfly_recv(): programmer is not responding
    avrdude: butterfly_recv(): programmer is not responding
    avrdude: butterfly_recv(): programmer is not responding
    Found programmer: Id = "ţ"; type = Č
    Software Version = (.
    Do you have a problem with Arduino? Ask question. Visit our forum Arduino.
  • #5
    TheKocur
    Level 8  
    Jeżeli trzymam ciągle reset wyskakuje mi:
    Szkic używa 3620 bajtów (12%) pamięci programu. Maksimum to 28672 bajtów.
    Zmienne globalne używają 149 bajtów (5%) pamięci dynamicznej, pozostawiając 2411 bajtów dla zmiennych lokalnych. Maksimum to 2560 bajtów.
    Nie można znaleźć płytki na wybranym porcie. Sprawdź czy wybrałeś odpowiedni port. Jeśli port jest poprawny spróbuj nacisnąć przycisk reset zaraz po zainicjowaniu wgrywania.
    Płytka na porcie COM4 jest niedostępna.

    A jak wrzucić nowy bootloader ?
  • Helpful post
    #6
    LChucki
    Level 31  
    Wojciech. wrote:
    Rozumiem że trzymasz reset aż do momentu kompilacji i sygnale wgrywania programu?

    Wtedy w Leonardo nie działa USB, jak więc ma się wgrać program?
  • Helpful post
    #9
    Wojciech.
    Level 35  
    LChucki wrote:
    Wtedy w Leonardo nie działa USB, jak więc ma się wgrać program?


    TheKocur wrote:
    Jeżeli trzymam ciągle reset wyskakuje mi:


    Nie ciągle tylko trzymasz do momentu kiedy nastąpi wgrywanie programu i puszczasz reset. Nastąpi reset bootloadera i powinno chwycić. U mnie przeważnie to działa.
  • Helpful post
    #12
    khoam
    Level 41  
    Pod tym linkiem jest opisany trick z "odblokowaniem" Leonardo (reset.py), ale to już wymaga trochę gimnastyki. Sprawdzone i działa.

    W ostateczności będziesz musiał się zaopatrzyć w programator np. usbasp i wgrać bootloader.
  • #14
    TheKocur
    Level 8  
    Wojciech. wrote:
    Komputer wykrywa leonardo?

    Nie muszę tłumaczyć jak wgrać bootloader bo tego jest multum w sieci. Najlepiej jak masz USBasp.


    Wykrywa.

    LChucki wrote:
    Po co USBasp, skoro ATMEGA z USB można programować FILP-em?

    Pobrałem FLIP'a ale nie wiem jak to zrobić.


    khoam wrote:
    Pod tym linkiem jest opisany trick z "odblokowaniem" Leonardo (reset.py), ale to już wymaga trochę gimnastyki. Sprawdzone i działa.

    W ostateczności będziesz musiał się zaopatrzyć w programator np. usbasp i wgrać bootloader.

    Według mnie nie jest zablokowany.

    Tutaj jeszcze raz błąd, tym razem cały.

    avrdude: butterfly_recv(): programmer is not responding
    avrdude: butterfly_recv(): programmer is not responding
    avrdude: butterfly_recv(): programmer is not responding
    avrdude: butterfly_recv(): programmer is not responding
    avrdude: butterfly_recv(): programmer is not responding
    Found programmer: Id = "ţ"; type = Č
    Software Version = (. ; Hardware Version = .O
    avrdude: butterfly_recv(): programmer is not responding
    avrdude: butterfly_recv(): programmer is not responding
    avrdude: error: buffered memory access not supported. Maybe it isn't
    a butterfly/AVR109 but a AVR910 device?
    avrdude: initialization failed, rc=-1
    Double check connections and try again, or use -F to override
    this check.
    avrdude: butterfly_recv(): programmer is not responding
    avrdude: error: programmer did not respond to command: leave prog mode
    avrdude: butterfly_recv(): programmer is not responding
    avrdude: error: programmer did not respond to command: exit bootloader
    avrdude: error: programmer did not respond to command: exit bootloader
  • Helpful post
    #15
    kaczakat
    Level 33  
    Zamiast kręcić się w kółko zacznij od wgrania bootloadera - użyj USBASP, to 15zł z wysyłką na Allegro, możesz zrobić sobie programator z innego Arduino, na forum jest opisane jak używać ArduinoISP, poczytaj jakie inni mieli bóle to unikniesz swoich, a tu jest opisane jak zrobić programator klon MKII z Arduino MICRO/LEONARDO: https://www.elektroda.pl/rtvforum/topic3516592.html #4 post.
  • Helpful post
    #16
    emarcus
    Level 38  
    TheKocur wrote:
    Wojciech. wrote:
    Komputer wykrywa leonardo?

    .


    Wykrywa.

    LChucki wrote:
    Po co USBasp, skoro ATMEGA z USB można programować FILP-em?

    Pobrałem FLIP'a ale nie wiem jak to zrobić.



    Skoro nie wiesz, to odłóż tą idea na późniejszą okazję.
    Tymczasem kup nową płytkę, a w tą z rzekomym defektem, kol. 'Chucek' ci wpisze nowy bootloader poprzez zablokowany port, mimo że istniejący w niej bootloader nie jest uszkodzony i ma się dobrze(!) - Inaczej płytka "Leo' nie byłaby wykrywana przez Device Manager ani też w Arduino IDE >Tools>Port./
    Poczytaj tą dyskusję:
    https://www.avrfreaks.net/forum/arduino-leonardo-and-flip-bootloader
    . . . i jeżeli jesteś gotowy na ten process to możesz kontynuowac z FLIP./
    Problem twój nie jest wyjątkowy , lecz powtarza się relatywnie często w tych urządzeniach z Mega32U4. Powoduje go błędny program - ostatni wpisany do flash, którego trudno jest się pozbyc(!)
    Jednym (lecz nie jedynym!) rozwiązaniem jest wpisanie nie tyle 'nowego' bootloadera, lecz ponownym jego wpisaniem. Podczas tej procedury następuje wykasowanie całkowitego obszaru pamięci flash, zawierający istniejacy (dobry bootloader) ale take ten program powodujący blokadę od wewnątrz zajmując port. ( Po Reset, Port COM pokazuje się na moment, a później znika bo jest zajęty!)

    Dokładniejszy, alternatywny sposób przywrócenia funkcjonalności LEO' jest w przstępnej formie podany tu:
    https://www.lattepanda.com/topic-f10t8342.html
    Scroll stronę do samego dołu do nagłówka "RESOLVED"
    Czytaj uważnie ze zrozumieniem. Musisz to robic dostatecznie szybko, bo nie wiele jest czasu na marginesie opieszałóści

    e marcus
  • #17
    TheKocur
    Level 8  
    Nie działa ten drugi sposób.
    U mnie port COM jest ciągle widoczny.
    Chwile po tym jak zacznie się wgrywanie słychać dźwięk odłączania USB
    Dodam jeszcze ,że płytka nigdy nie działała dobrze :( mam ją z pól roku i od samego początku problemy.
  • Helpful post
    #18
    emarcus
    Level 38  
    TheKocur wrote:


    U mnie port COM jest ciągle widoczny.

    Powinieneś znac dwa numery portów związanych z Leonardo;
    Jeden , ten co jest wyświetlany ciągle, a drugi ukazujący sie po "RESET"....
    Mając otwarty 'Device Manager' podłacz LEO do USB; - powinen ci sie ukazac ten 'stały' (ciągle widoczny) Port COM(x)
    Naciśnij "RESET" na LEO ; - powinien ukazac się jeszcze inny port, ten który używa bootloader, przez który winien byc wgrywany nowy program, czyli ten winien byc wybrany w Arduino >Tools > Port.
    Jeżeli na tym porcie nie ma aktywności przez krótki okres czasu , to ta łącznośc zostaje porzucona i dlatego masz :
    cyt: "- Chwile po tym jak zacznie się wgrywanie słychać dźwięk odłączania USB"
    Aktualnie, wgrywanie nie zostało rozpoczęte, bo w IDE jest ustawiony inny port niż ten, przez który chce bootloader..


    TheKocur wrote:


    Dodam jeszcze ,że płytka nigdy nie działała dobrze :( mam ją z pól roku i od samego początku problemy


    To jest cały urok tych płytek z tymi processorami.
    Processor w sumie jest troche lepszy niż ma Uno , płytka jest o wiele tańsza w produkcji (!) (prawie nic na niej ne ma) , lecz wymaga o wiele więcej uwagi podczas programowania. Z tego powodu programowanie staje się do pewnego stopnia kłopotliwe wymagające sprawdzania ustawionych numerów portu.
    Z czasem, gdy juz opanujesz ten process; nie będzie aż tak źle....

    e marcus
  • Helpful post
    #19
    wacek.wacek
    Level 29  
    Mam promikro na tym samym procesorze które też płata figle ale to kwestia ustawienia. A ja nie trzymam resetu jak wciskam programowanie tylko raz pyknę go i program wchodzi jak wyskakuje błąd. Trochę cierpliwości trzeba niestety.
  • #20
    TheKocur
    Level 8  
    Po podłączeniu LEO do USB w "menedżer urządzeń" pojawia się port COM i jest ciągle widoczny.
    Po naciśnięciu RESET czekam chwilkę i słychać dźwięk odłączania USB ale żaden nowy port COM się nie pojawia,... i mogę naciskać ile chce i tak się nie pojawi i ciągle będzie dźwięk odłączania.
    Gdy dłużej przytrzymam RESET aż do dźwięku odłączenia usb, wtedy znika ten port COM "stały" i po chwili dźwięk podłączania i się pojawia.
  • Helpful post
    #21
    emarcus
    Level 38  
    TheKocur wrote:
    Po podłączeniu LEO do USB w "menedżer urządzeń" pojawia się port COM i jest ciągle widoczny.
    Po naciśnięciu RESET czekam chwilkę i słychać dźwięk odłączania USB ale żaden nowy port COM się nie pojawia,... i mogę naciskać ile chce i tak się nie pojawi i ciągle będzie dźwięk odłączania.


    Pomyśl przez moment....
    Jeżeli ci się coś odłacza po chwili, a ten "stały " port nie znika , to chyba coś innego przed tym musiało się właczc; coś czego nie zauważyłeś...
    Nic tu nie piszesz o zainstalowanym driverze(!)
    Czy chociaz wiesz który driver masz zainstalowany?

    Dla pewności:
    1. Odinstaluj ten driver, który figuruje w Device manager z opcją 'delete' - nic nie gubisz, bo i tak nie pracuje...
    2. Odszukaj w miejscu instalacji Arduno plik :"Old_Arduino_Drivers.zip"
    Jeżęli to standardowa instalacja, to zwykle jest to w tej lokacji:
    C:\Program Files (x86)\Arduino\drivers
    3. Unzip (dekompresuj) ten plik do dowolnego folderu na dysku, tak abyś znał do niego ścieżkę (!) Później go wykasujesz.
    4. Po ponownym podłączeniu USB cabla z Leo, Windows zechce instalowac nowy driver.....
    5. Zainstaluj driver do Leonardo: - NIE WYBIERAJ (!) auromatycznego wyszukiwania lecz wskaż ten folder z rozwinętym plikiem 'Old_Arduino_Drivers'.

    e marcus
  • #23
    TheKocur
    Level 8  
    Witam. Kupiłem USB asp i próbowałem wypalić bootlander na najnowszej wersji arduino , ale się nie dało. Na starszej wersji się udało i teraz działa.
    Dzięki wszystkim za pomoc!