Skocz do zawartości

Pyrduino - czyli pythonowy wrapper do arduino-cli


Pomocna odpowiedź

Dobrze jest się przespać i wpaść na pomysł - esptool-ftdi wydaje się działać. Sposób instalacji (trochę nietypowy) opiszę jak wszystko sprawdzę - na razie poprawiony program: pyrduino.tgz

I drobna uwaga:

Przy kompilacji na esp8266 wyskakuje sobie błąd:

xtensa-lx106-elf-g++: error: unrecognized command line option '-std=gnu++17'

Błąd znany, dokładnie opisany swego czasu na githubie od arduino-cli razem z przykładowymi przykładami 😉

Z moich obserwacji:

Błąd wyskakuje, jeśli nie istnieją katalogi build i cache (czyli przy nowym szkicu albo po -clean). Należy po prostu uruchomić kompilację jeszcze raz i powtarzać do skutku - gdzieś za trzecim czy czwartym razem zaczyna normalnie działać. Ewentualnie poczekać aż autorzy arduino-cli poprawią parser receptur...

 

  • Lubię! 2
Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

5 godzin temu, Harnas napisał:

Nie interesowałem się nigdy arduino-cli

Nie interesowałem się nigdy PlatformIO, ale czy on naprawdę jest jakiś ułomny że trzeba do niego wrappery pisać? 😉

Bo np. Arduino IDE 2.x jest tak naprawdę niczym innym jak wrapperem do arduino-cli...

5 godzin temu, Harnas napisał:

przy okazji dając większe możliwości rozwoju

Jakie mianowicie?

 

Link do komentarza
Share on other sites

(edytowany)

No i niestety, arduino-cli cały czas ma problem, ale już znam sposób na szybki workaround (dotyczy to również Arduino IDE 2.x i prawdopodobnie PlatformIO):

Problem występuje, gdy dla różnych architektur istnieją takie same nazwy katalogów tools (w tym przypadku gcc). Rozwiązaniem jest wymuszenie konkretnej wersji (lub usunięcie innych architektur, ale to raczej nie jest dobre rozwiązanie)

Podaję przykład dla esp8266:

  • Znajdź swój katalog arduino15. W linuksie będzie to ~/.arduino15. Dla innych systemów patrz: https://support.arduino.cc/hc/en-us/articles/360018448279-Open-the-Arduino15-folder
  • W katalogu znajdź subkatalog "packages/esp8266/tools/xtensa-lx106-elf-gcc"
  • Otwórz ten katalog. Powinien tam być tylko jeden subkatalog o nazwie w stylu "3.0.4-gcc10.3-1757bed". Skopiuj tę nazwę.
  • Teraz wróć do katalogu esp8266, przejdź do hardware/<jakiś-numerek>/esp8266 i otwórz jakimś edytorem plik platform.txt
  • Znajdź linię rozpoczynającą się od "compiler.path". Powinna wyglądać mniej więcej tak:
compiler.path={runtime.tools.xtensa-lx106-elf-gcc.path}/bin/
  • Zmień doklejając do ścieżki kompilatora skopiowaną nazwę katalogu po myślniku, czyli w moi przypadku:
compiler.path={runtime.tools.xtensa-lx106-elf-gcc-3.0.4-gcc10.3-1757bed.path}/bin/

Arduino-cli będzie teraz szukać kompilatora w konkretnej wersji, a nie pierwszego lepszego.

 

 

Edytowano przez ethanak
  • Lubię! 1
Link do komentarza
Share on other sites

Bardzo lubię nieudokumentowane zachowania różnych fajnych programów...

Takie jedno coś właśnie znalazłem (kiedy arduino-cli ignoruje extra_flags z platform.txt). Mam nadzieję że więcej takich niespodzianek nie będzie.

Jakby komuś się chciało potestować: pytduino.tgz

 

  • Lubię! 1
Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.