Skocz do zawartości
Komentator

Kurs Raspberry Pi - #5 - instalacja/komunikacja przez UART

Pomocna odpowiedź

pion3k, ciężko jednoznacznie odpowiedzieć na Twoje pytanie, ponieważ korzystasz z trochę innego sprzętu niż my (inny konwerter) i masz trochę inne oprogramowanie. Jednak jeśli odtworzyłeś sytuację identyczną jak w kursie to może faktycznie masz coś uszkodzone na płytce. Testowaliśmy to kilka razy w różnych konfiguracjach, do tego testy przeprowadzane przez naszych czytelników i do tej pory nie było takiej drugiej sytuacji. Jesteś przekonany, że Twój konwerter działa poprawnie z układami pracującymi na 3V3?

Udostępnij ten post


Link to post
Share on other sites

Treker, dzięki za odpowiedź! Konwerter jest prawdopodobnie sprawny, jeszcze jakiś czas temu testowałem go bodajże z układami od ST, a wcześniej pracował z malinką.

Zrobiłem dodatkowy test, najprostszy z możliwych, o którym zapomniałem - założyłem zworkę na Rx/Tx w malince i z poziomu konsoli odpaliłem picocom'a, zachowując poprawną konfigurację portu szeregowego. Cisza, nie mam żadnych zwrotnych wiadomości (loopback)... Wygląda na to, że musiałem kiedyś omyłkowo coś zrobić co zniszczyło port. Przetestuję jeszcze sam interface bluetooth, mam nadzieję że przynajmniej on przeżył 😉

Udostępnij ten post


Link to post
Share on other sites

Wydaje mi się, że ostatnie wpisy zupełnie nie pasują do tego tematu - odnoszą się do yocto zamiast raspbiana, konwertera z układem FTDI zamiast wersji z kursu oraz ogólnie są na zupełnie innym poziomie niż kurs dla początkujących.

Proponowałbym wydzielić ten wątek do oddzielnego tematu, ale na wszelki wypadek podpowiem jak ja testuję / używam port szeregowy.

W yocto ustawiam stałą UART_ENABLE, a ponieważ używam zawsze u-boota, więc dopisując do conf/local.conf:

RPI_USE_U_BOOT = "1"
ENABLE_UART = "1"

Wtedy można przetestować port szeregowy jeszcze na poziomie bootloadera. Jeśli i to nie zadziała, faktycznie warto sprawdzić sprzęt - chociaż najlepiej byłoby podłączyć analizator stanów logicznych, może port działa, ale z przejściówką jest kiepsko (przyznam że jedną właśnie na FTDI spaliłem podłączając do 5V na malince... stąd w kursie tyle ostrzeżeń i rad żeby zworkami zasłaniać piny z tym napięciem 🙂 )

Udostępnij ten post


Link to post
Share on other sites

Hej! Jasne, temat odbiega trochę może od zakresu tego kursu, ale bardziej chciałem zwrócić uwagę na mój problem z komunikacją szeregową (nawet z obrazem raspbiana), zostawiając już całe Yocto za sobą 🙂 A w szczególności - kwestia jednoznacznego ustalenia czy port działa/nie działa, bo szczerze mówiąc nie wiem jak go sprawdzić i być pewnym rezultatów 🙂

Udostępnij ten post


Link to post
Share on other sites

Witam wszystkich, to mój pierwszy post na forbot.pl

Coś poszło gruntownie nie tak po podłączeniu przez UART - ktoś miał podobne efekty?

Po podłączeniu "maliny" do monitora system w wersji "lite" rusza normalnie - pojawia się linia logowania - a więc problem jest z komunikacją UART.

Dodam jeszcze informację, że początkowo mój Manager Urządzeń w windows 10 nie pokazywał portów COM i LPT (żadnych), a czytnik UART/USB pokazany był jako "inne urządzenie" z błędnym sterownikiem. Po wyszukaniu sterownika online i zainstalowaniu pojawiły się porty COM i LPT, a czytnik był pod portem COM5. 

Rpi_uart_fail.png

Udostępnij ten post


Link to post
Share on other sites
(edytowany)

Wygląda mi jak niedopasowanie baudrate podpiętego urządzenia (w tym przypadku maliny) vs ustawień terminala na PC (w tym przypadku putty). Jaki masz baudrate w putty?

Edytowano przez Nawyk
  • Lubię! 1

Udostępnij ten post


Link to post
Share on other sites

Hej, mam pytanie dot. wspomnianej na początku wątku prędkości przesyłania plików po UART vs przez Internet. Wikipedia pod hasłem Baud serwuje taką informację:

"If there are only two symbols in the system (typically 0 and 1), then baud and bits per second (bps) are equivalent."

Czy w takim razie 100 mbps dość typowe dla komunikacji internetowej (ethernet/wifi) nie powinno dawać podobnej prędkości co ustawienie komunikacji uart na np. 115200 baudrate?

Gdzieś się pomyliłam w rozumowaniu, czy wikipedia kłamie? ;)

Udostępnij ten post


Link to post
Share on other sites

Może warto zacząć od jednostek. m to mili, czyli 1/1000, więc 100mbps oznacza 0.1bps, czyli jeden bit przesyłany co 10 sekund.

Typowa prędkość dla sieci Ethernet to 100Mb/s (oraz 1Gb/s, a nawet 10Gb/s). W tym zapisie M oznacza mega, czyli 1000000.

Porównując 100Mb/s lub inaczej 100Mbps, widzimy że to prawie 1000 razy szybciej niż 115200. Oczywiście to zupełnie różne metody komunikacji, więc porównanie jest bardzo zgrubne, ale chyba widać różnicę w prędkości.

Łącze szeregowe bardzo przydaje się w sytuacjach awaryjnych - jeśli nie mamy nic innego. Do konfiguracji jego prędkość w zupełności wystarcza, a jeśli np. używamy bootloadera (powiedzmy u-boota), za pomocą łącza szeregowego możemy naprawić uszkodzony system, zmienić parametry jądra, a nawet wybrać wersję ładowanego systemu. Zainteresowanych odsyłam do:

Jednak do transferu większych plików o wiele lepiej użyć sieci przewodowej lub bezprzewodowej, USB, albo po prostu wyjąć kartę SD z malinki i wgrać pliki na PC.

  • Lubię! 1

Udostępnij ten post


Link to post
Share on other sites
(edytowany)

Hej,
podłączyłem (UART) RPi jak na obrazkach dołączonych do lekcji (TXD i RDX naprzemiennie, GND do GND). Zainstalowałem obraz systemu w wersji Lite, dodałem linijkę w configu, wszystko podłączyłem do USB oraz konwertera (wszystko z zestawu z Botlanda). USB-UART świeci na czerwono, RPi świeci na czerwono i czekam już chyba z 10 minutę na tym w PuTTY. Nie wiem, czy odłączać to, czy zostawić na noc.. Późno się robi, a nie zakładałem dłuższego posiedzenia ;].

Coś nie tak zrobiłem? Swoją drogą, ten wtyk do zasilania do RPi jakoś ciasno wchodzi.

Screenshot_15.png

EDIT: Odłączyłem HUBa i podłączyłem bezpośrednio do USB - to samo. Na dzisiaj kończę 😕

Dzisiaj kupiłem kabel HDMI, zobaczę czy to kwestia konwertera czy karty pamięci. Update: wersja pełna przy podłączeniu przez HDMI uruchamia się, komponenty RPi działają. Zauważyłem różnicę - wczoraj świeciła mi się tylko czerwona LED, bez zielonej. Spróbuję jeszcze raz przez UART na świeżej instalacji.

UPDATE: Ok, po świeżo zainstalowanej wersji Raspbiana zadziałało :).

Edytowano przez Asentinn

Udostępnij ten post


Link to post
Share on other sites
Dnia 11.01.2019 o 22:56, Asentinn napisał:

Nie wiem, czy odłączać to, czy zostawić na noc.. Późno się robi, a nie zakładałem dłuższego posiedzenia ;].

Miło słyszeć, że rozwiązałeś już swój problem! Dla formalności tylko dodam, że raczej w przypadku RPi nie ma takich sytuacji, aby cos miało trwać dłużej niż >5 minut, a nie widziałbyś na ekranie żadnych postępów. Jeśli przez kilka minut dzieje się "zupełnie nic" to już zły znak 😉

Udostępnij ten post


Link to post
Share on other sites

Witam wszystkich na forum!

Świetny kurs. Ten i pozostałe. Szczególnie dziękuję za tekst o UART. Uważam, że to wiedza must-have dla każdego kto bawi się w projekty "zrób to sam". Dzięki możliwości połączenia szeregowego udało mi się połączyć stara malinę ver. A do internetu. Pi 1 A posiada tylko jedno złącze USB (brak LAN) więc myślałem, że jest to niemożliwe. A tak dzięki UART wszedłem do maliny, podpiąłem modem Wi-Fi USB, edytowałem /etc/network/interfaces i gotowe! Teraz mogę doinstalować brakujące moduły Pythona : )

Pozdrawiam

  • Lubię! 1

Udostępnij ten post


Link to post
Share on other sites

@hansolo super! Bardzo miło słyszeć, że takie "niszowe" tematy również są pomocne. Nie ma co ukrywać, że taka komunikacja przez UART (w celu konfiguracji RPi) nie jest zbyt popularna, ale (jak udowadnia Twój przykład) przydaje się ona w dość krytycznych sytuacjach, gdy nie ma innej metody 😉

Udostępnij ten post


Link to post
Share on other sites

Jeżeli na CD jest wgrywany NOOBS pozostaje więcej miejsca. Ale gdzie są umieszczane później dociągane programy np. graficzne?

Udostępnij ten post


Link to post
Share on other sites

@andzrej trochę nie rozumiem pytania - jeśli korzystasz z NOOBSa i chcesz zainstalować Raspbiana to miejsca będziesz miał niewiele mniej (bo w końcu NOOBS też coś waży). NOOBS tworzy odpowiednie partycje, na których instalowany jest system. Dany program zostanie zainstalowany normalnie, w obrębie partycji danego systemu. Programy nie są współdzielone między różnymi dystrybucjami zainstalowanymi na tej samej karcie.

Udostępnij ten post


Link to post
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!

Gość
Napisz odpowiedź...

×   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...