Przesyłanie Arduino Nano powoduje błąd: avrdude: stk500_recv (): programista nie odpowiada

19

Mam Arduino Nano (Sainsmart) , do którego próbuję wgrać szkic. W Arduino IDE wybranym urządzeniem było Arduino Nano w/ ATmega328.

Jednak przesłanie szkicu powoduje błąd

avrdude: stk500_recv(): programmer is not responding

Próbowałem obu portów USB ( /dev/tty.usbserial& /dev/cu.usbserial), ale ten sam błąd nadal występuje. Arduino jest podłączone do Macbooka Air kablem USB, a PWRdioda LED na Arduino jest włączona, a Ldioda wskaźnika miga. Nie było problemu z przesłaniem do Arduino Uno.

Ponowiono próbę po zainstalowaniu najnowszych sterowników FTDI (MAC OSX, x64, v2.2.18, FTDIUSBSerialDriver_10_4_10_5_10_6_10_7.mpkg) ze strony http://www.ftdichip.com/Drivers/VCP.htm . To jednak nie pomogło.

Co mogło pójść nie tak?

Nyxynyx
źródło

Odpowiedzi:

5

Ten komunikat o błędzie pojawia się w zasadzie w przypadku każdego problemu z komunikacją, więc sam w sobie nie jest aż tak pouczający. Arduino Nano powinien mieć automatyczny reset, ale może twój klon nie? W takim przypadku musisz nacisnąć przycisk resetowania na tablicy tuż przed rozpoczęciem przesyłania.

mikrotherion
źródło
Zgodnie z opisem urządzeniaFeatures: Automatic reset during program...
alexan_e
5
Tak, ale zgodnie z komentarzami na stronie Amazon, niektórzy ludzie, którzy to kupili, dostali jeszcze jedną markę klonów, więc wydaje mi się, że zdrowa dawka sceptycyzmu wobec wszelkich roszczeń w dokumentacji jest w porządku, szczególnie jeśli można je łatwo zweryfikowane za pomocą eksperymentu.
microtherion
Nie czytałem komentarzy, ale w takim przypadku możesz mieć rację.
alexan_e
1
Podczas uderzenia w resetu tylko praca może właściwym czasie (może to potrwać kilka prób), z klonów Nano to prawie zawsze zmiana bootloadera prędkością szeregowego przez oficjalnych twórców Arduino.cc który jest przyczyną problemu. Ta odpowiedź z większym prawdopodobieństwem da wiarygodny wynik: Narzędzia → Procesor → ATmega328P (Old
Bootloader
36

Wiem, że to jest stare, ale natknąłem się na to podczas wyszukiwania Nano (V3), które nie jest przesyłane, więc myśl może pomóc komuś innemu. Problemem jest bootloader - Arduino IDE ALE Znalazłem łatwe rozwiązanie (tuż pod moim nosem).

Zdałem sobie sprawę, że moje nano ładowały się dobrze, a potem w końcu zaktualizowałem Arduino AVR Boards z 1.6.20 do 1.6.21. Nie sądziłem, że były jakieś problemy, ponieważ po zmianie nadal pokazywałem moje Nano i ATmega328 itp. W menedżerze zarządu.

Ale nowy menedżer płyt ma nowy wybór procesora ATmega328 dla Nano. Zmieniłem procesor: W Arduino IDE wybierz TOOLS> PROCESSOR> rozwijanego menu z ATmega328P do "ATmega328P (Old Bootloader)".

Od tego czasu bez problemu przesłałem wiele programów do kilku różnych Nano V3 (chipset Prolofic interace).

Goofy Brained
źródło
@sa_leinad - nie zmieniaj znaczenia postów innych osób. To, co plakat powiedział, że zaktualizowali, to pakiet płyt AVR, a nie IDE. Ten konkretny błąd wersji został zgłoszony w innym miejscu.
Chris Stratton
6
Pomogło mi to jednak rozwiązać problem!
Ewout,
2
Rozwiązanie nadal działa, przetestowałem go na Arduino IDE 1.8.7 Stabilny, 1.8.8 Kompilacja godzinowa (Nightly) 2018/11/05 23:59 GMT i 1.9 Beta Build-87 z tablicami Arduino AVR 1.6.23
Nieznany123
Zmiana programów ładujących została upubliczniona wraz z wydaniem Arduino IDE 1.8.6: github.com/arduino/Arduino/releases/tag/1.8.6 Więcej informacji na arduino.stackexchange.com/questions/51866/... ISP (lub inny Arduino) jest potrzebny do aktualizacji bootloadera: arduino.stackexchange.com/questions/66806/...
uchwyt
Dzięki, zmiana na ATmega328P (Old Bootloader)pomogła mi rozwiązać stk500_recv(): programmer is not responding stk500_getsync() attempt 1 of 10: not in sync: resp=0x79problem. Właściwie mam wrażenie, że wcześniej korzystałem ze starszej wersji GUI, która domyślnie miała tę opcję.
dma_k
4

Mam podobny problem z moim Sainsmart Nano.

Pod Preferenceszaznaczeniem „Pokaż pełne dane wyjściowe podczas przesyłania [x], a następnie podczas przesyłania, powinieneś otrzymać czerwony ślad:

avrdude: Version 5.11, compiled on Sep  2 2011 at 18:52:52
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2009 Joerg Wunsch

         System wide configuration file is "/Applications/Arduino.app/Contents/Resources/Java/hardware/tools/avr/etc/avrdude.conf"
         User configuration file is "/Users/johannes/.avrduderc"
         User configuration file does not exist or is not a regular file, skipping

         Using Port                    : /dev/tty.usbserial-A403MRTP
         Using Programmer              : arduino
         Overriding Baud Rate          : 57600
avrdude: Send: 0 [30]   [20] 
avrdude: Send: 0 [30]   [20] 
avrdude: Send: 0 [30]   [20] 

Zauważysz małą „pauzę” tuż przed pierwszym wierszem avrdude: Send: 0 [30] [20]. Spróbuj przesłać ponownie i przygotuj palec na fizycznym przycisku resetowania Nano. Na chwilę przed pierwszym avrdude: ...pojawieniem się naciśnij przycisk resetowania.

Gdy ci się powiedzie, zobaczysz, że ekran wypełnia się wszelkiego rodzaju bełkotem, a po kilku sekundach kończy się coś takiego:

[78] . [00] S [53] h [68] o [6f] u [75] l [6c] d [64]   [20] b [62] e [65]   [20] 0 [30] x [78] 4 [34] 9 [39] D [44] 4 [34] . [00] . [01] . [00] . [00] . [00] . [02] . [00] . [03] . [00] . [04] . [00] . [00] . [00] . [00] . [00] . [e6] . [06] . [b5] . [06] n [6e] . [06] w [77] . [06] . [8c] . [06] . [9d] . [06] . [00] . [00] . [00] . [00] . [02] . [0d] . [aa] . [0d] . [95] . [0c] . [c9] . [0c] . [a9] . [0c] . [f2] . [0c] . [00] 
avrdude: Recv: . [10] 
# | 100% 3.71s

avrdude: verifying ...
avrdude: 8824 bytes of flash verified
avrdude: Send: Q [51]   [20] 
avrdude: Recv: . [14] 
avrdude: Recv: . [10] 

avrdude done.  Thank you.
kontur
źródło
Oznacza to, że dane Arduino (lub podrzucenie) nie resetuje się automatycznie przed przesłaniem i należy to zrobić ręcznie, naciskając przycisk.
kontur
4

Miałem ten sam problem i dostałem ten sam komunikat o błędzie. Okazuje się, że te płyty nie są wyposażone w preinstalowany bootloader. Jeśli masz jakieś zworki i inne działające arduino, możesz skorzystać z tego samouczka, aby zainstalować program ładujący i powinien on działać świetnie, przynajmniej mój! :)

wiolonczela elektryczna
źródło
3

Ostatnio miałem ten sam problem z 3 płytami Nano, które właśnie kupiłem w Amazon. Mogę potwierdzić, że sugerowana poprawka (zmiana na „stary program ładujący”) rozwiązała mój problem.

Myślę, że głównym problemem jest prędkość wysyłania. Wersja „starego programu ładującego” została pomyślnie przesłana przy 57600, ale domyślna „nowa” wersja próbuje załadować przy 115200 i kończy się niepowodzeniem.

Curtg
źródło
Tak, to też był mój problem. Znalazłem wyjaśnienie tutaj arduino.stackexchange.com/a/51874/47260
Arindam
1
To tylko duplikat wcześniej opublikowanej odpowiedzi.
Chris Stratton
2

Miałem również ten komunikat o błędzie. Myślę, że istnieje wiele możliwych przyczyn, więc spieszę się, by sprecyzować mój szczególny przypadek.

Mam hackintosha z systemem OS X Yosemite 10.10.2, oprogramowaniem Arduino 1.0.6 i Funduino UNO. Pierwsze przesłanie przykładu dla Serial.write () zakończyło się pomyślnie. Następnie większość przesyłania nie powiodła się. Nawet jeśli przesyłanie się powiedzie, monitor szeregowy nie zawsze wyświetla dane wyjściowe.

Wydawało mi się, że jest to spowodowane błędną komunikacją na porcie USB. Musiałem wielokrotnie resetować funduino, odłączać i ponownie podłączać kabel USB, a nawet restartować system. Podczas podłączania kabla USB czasami mój system zawiesza się.

Przeglądając go znalazłem rozwiązanie „Włożenie urządzenia USB powoduje zawieszenie się Mavericks 10.9.1”. Odpowiedź nr 12 na stronie tonymacx86.com w zasadzie instruuje, aby usunąć plik GenericUSBXHCI.kext z katalogu / System / Library / Extensions.

Z przyjemnością informuję, że po usunięciu tego tekstu nie mam problemów z przesłaniem przykładu i monitorowaniem wyników. Ponieważ nie muszę ponownie podłączać kabla USB, nie wiem, czy to rozwiązuje problem z zawieszaniem się systemu. Nie jestem nawet pewien, czy to zawieszenie systemu, ponieważ mój system mógł przestać reagować na klawiaturę i mysz USB.

Jan E. Jonker
źródło
2

Czy pamiętasz, aby powiedzieć IDE, że typ płytki to Nano?

Tools-> Board=>Arduino Nano ...

To daje mi czas, kiedy wymieniam między moim Nano a Uno.

Kingsley
źródło
1

Miałem ten sam problem i rozwiązanie było następujące:

  • zidentyfikowałem moje arduino jako CH340 / ATmega168P (napisane na płytce drukowanej)
  • poszedł do IDE i wybrał z listy nie UNO, ale „Arduino Pro lub Pro Mini”
  • po wybraniu tej opcji dostępne jest nowe menu „Wybór procesora” (tuż pod wyborem płyty głównej)
  • wybrałem tam mój procesor ATmega168P i przesyłanie działało jak urok!
Radovan Rodak
źródło
Wybór płytki nie zależy od układu interfejsu USB, tylko od procesora i prędkości transmisji.
Chris Stratton
0

Miałem podobne problemy z dwoma amerykańskimi nanometrami Gravitech. Żadna z poniższych metod nie zadziałała, ale lista powinna być dość wyczerpująca:

  • zapewnić najnowsze sterowniki FTDI (dotyczy, jeśli port COM nie jest widoczny)
  • wypal bootloader, jeśli nanos go nie ma, np. używając trzeciego nano
  • lutowane styki 25 i 26 razem, aby związać styk TEST z (A) GND
  • spróbuj ręcznie zresetować Nano za pomocą przycisku tuż przed przesłaniem
andig
źródło
0

Wersja Arduino IDE 1.8.5 dawała ten sam błąd za każdym razem, gdy próbowałem podłączyć go do mojego OSEPP Nano. Próbowałem tego na Windows 10 i Mac OSX z 2 różnymi Nano, a także próbowałem przywrócić wersję 1.8.4 na IDE. Test szeregowego sprzężenia zwrotnego również przeszedł pomyślnie. Miałem płytkę ustawioną na „Arduino Nano”, a procesor na ATmega382P. Upewniłem się, że ustawiony jest właściwy port, ponieważ mogłem zobaczyć, jak nowy port pokazuje się i znika, kiedy podłączyłem Nano i usunąłem go. Używam mini złącza USB w Nano.

Rozwiązanie brzmiało: wybierz Arduino / Genuino Uno i zadziałało!

Ktoś musi to naprawić, aby wybranie tablicy Nano działało z Nano

JTK
źródło
0

Jeśli to nie zadziała, będziesz musiał użyć spi do zaprogramowania nano. Musisz poszukać połączenia i użyć uno, ponieważ ma on szeregowy układ at16u2 ze sterownikiem, który rozpoznaje wszystkie produkty atmel. Po ustawieniu połączeń uno jako programista poprzez flashowanie uno jako isp ustaw programator jako Arduino jako isp i flashuj układ. Podwójne sprawdzenie. Zaletą jest to, że jest mniej podatny na błędy niż uart i ma lepsze wyczucie czasu, ale jest kłopotliwy. Powodzenia

JKing
źródło
0

Ten problem pojawił się podczas aktualizacji Arduino IDE. Rozwiązałem go, zmieniając procesor na „stary”

Narzędzia-> Procesor -> „ATmega328P (stary bootloader)” dzięki !!!!

użytkownik3739283
źródło
1
To tylko duplikat wcześniej opublikowanej odpowiedzi
Chris Stratton,
0

Dobrze. Miałem ten sam programmer is not respondingbłąd na Arduino Nano na Atmel MEGA168PA, układ USB: CH340G. Macbook Pro pod macOS 10.14.2.

Ręcznie zainstalowano przykład Blink, a port nie był widoczny na liście.

Próbowałem rozgryźć, co się stało i połączyłem mój Arduino Due przez port programowania. Po 2 próbach przesłanie szkicu ... Potem ponownie podłączyłem Nano, tym razem port był widoczny (właściwie dwie z nich: /dev/cu.wchusbserial14120i /dev/cu.usbserial-14120) i zgadnij co, przesyłanie się powiodło!

Magia!

Kelin
źródło