Kursy • Poradniki • Inspirujące DIY • Forum
Metoda wykorzystująca port szeregowy nie jest najłatwiejsza i wymaga konwertera UART-USB (znajduje się on w naszych zestawach). Ten sposób instalacji jest często pomijany podczas nauki pracy z Raspberry Pi. Jednak ma kilka zalet, które sprawiają, że warto go znać!
Po pierwsze, sposób ten wymaga mniejszej ilości sprzętu niż poprzednio. Możemy wykorzystać PC, na którym czytamy ten kurs. Nie musimy mieć dodatkowego monitora, klawiatury i myszki.
Największe zalety wykorzystania portu szeregowego to uniwersalność i możliwość naprawy systemu w razie awarii. Jeśli polubimy zabawę systemami wbudowanymi szybko odkryjemy, że dostępne są bardzo różne rozwiązania. Może któregoś dnia "konkurencyjna" płytka wpadnie nam w ręce, albo po prostu będziemy potrzebowali przygotować coś w oparciu o inny sprzęt. Nie wszystkie płytki z Linuxem obsługują wyjście obrazu (np. Intel Edison), ale praktycznie wszystkie pozwalają na pracę przez port szeregowy.
Wystarczy raz poznać ten sposób i można go uniwersalnie wykorzystywać
do pracy z innymi platformami tego typu.
W kolejnej części kursu do komunikacji z płytką wykorzystamy sieć lokalną. Taka opcja jest prosta i wygodna, ale działa tylko jeśli wszystko jest skonfigurowane poprawnie. Jeśli coś się popsuje, to zupełnie stracimy kontakt z naszą malinką. W przypadku monitora jest trochę lepiej, ale awaria na samym początku procesu uruchamiania systemu również jest trudna do naprawy. Port szeregowy jest obsługiwany od samego początku działania systemu. Co więcej można z niego korzystać nawet jeszcze przed startem Linuxa!
Korzystając z łączności przez UART mamy szansę na
uratowanie uszkodzonego systemu i przywrócenie go do działania.
Instalacja systemu przez UART
Do wykonania tego ćwiczenia potrzebne są:
- Raspberry Pi 3 w obudowie,
- zasilacz,
- karta microSD,
- czytnik kart pamięci,
- przejściówka UART-USB (3,3V),
- podręczna "ściąga" z GPIO,
- dodatkowa zworka (opcjonalnie).
Gotowe zestawy do kursów Forbota
Komplet elementów Gwarancja pomocy Wysyłka w 24h
Elementy niezbędne do wykonania wszystkich ćwiczeń z kursu podstaw Rasberry Pi dostępne są w formie gotowych zestawów!
Zamów w Botland.com.pl »Raspberry Pi i czytnik kart SD będą nam zawsze potrzebne, więc właściwie dodatkowy element jest tylko jeden: konwerter UART-USB. Co ważne musi on obsługiwać napięcie 3.3V, konwertery na 5V mogą uszkodzić Raspberry Pi.
Konwerter używany do komunikacji z Raspberry Pi musi pracować
z napięciem 3.3V stosowanie wersji 5V grozi uszkodzeniem płytki!
W zestawach do tego kursu znajduje się uniwersalny konwerter, który nie powinien sprawiać problemów na żadnym systemie operacyjnym i jest przystosowany do pracy z 3.3/5V. Nie warto kupować najtańszych konwerterów - ich sterowniki mogą nie być kompatybilne z najnowszymi systemami Windows, co doprowadza do dodatkowych komplikacji.
Instalacja systemu Raspbian Lite
W poprzedniej części kursu dokładnie opisaliśmy procedurę przygotowania karty microSD. Teraz postępujemy podobnie, ale zamiast pełnej wersji Rasbpiana skorzystamy z wersji Lite. W przypadku komunikacji przez UART interfejs graficzny czy domyślnie instalowana gra Minecraft nie są nam potrzebne, a zajmują miejsce i wydłużają czas instalacji oraz uruchamiania płytki.
Wszystkie programy można później doinstalować,
więc nic nie tracimy zaczynając od wersji lite!
Obraz systemu w wersji Lite jest dostępny, tak jak poprzednio, na stronie Raspberry Pi. Pobrany plik rozpakowujemy i "wypalamy" go na karcie microSD za pomocą narzędzie Etcher. Szczegóły tej operacji zostały opisane w poprzedniej części kursu Raspberry Pi.
Gdy program zakończy działanie wyciągamy kartę z komputera i wkładamy ją drugi raz. System pokaże wykrycie 2-3 nowych dysków/pamięci. Windows może pokazać nam komunikat mówiący o tym, że korzystanie z jednego nowego dysku nie jest możliwe. Oczywiście nie zgadzamy się na jego sformatowanie (usunęlibyśmy wtedy dane nagrane przez Etcher).
Odszukujemy partycję nazwaną "boot":
Znajdziemy na niej bardzo ważny plik config.txt, który przechowuje konfigurację systemu malinki. Otwieramy go za pomocą edytora tekstu. Otwarcie tego pliku w notatniku niestety spowoduje, że całość będzie mało czytelna.
Nie należy również edytować tego pliku w Wordzie. Z darmowych rozwiązań dobrze sprawdzi się np. Notepad++, Programmer's Notepad lub Atom.
Gdy plik się otworzy dodajemy na jego końcu jedną linijkę:
1 |
enable_uart=1 |
Plik powinien wyglądać wtedy mniej więcej następująco:
Bez tej ręcznej edycji połączenie z malinką przez UART nie byłoby możliwe. Zapisujemy zmodyfikowany plik na karcie i bezpiecznie usuwamy ją z systemu. Kartę można już wsunąć do Raspberry Pi, ale naszego małego komputera nie podłączamy jeszcze do zasilania!
Gniazdo rozszerzeń Raspberry Pi
Zanim podłączymy konwerter do płytki Raspberry Pi poświęćmy chwilę na zapoznanie się z gniazdem rozszerzeń. Rozkład pinów jest widoczny poniżej:
Do podłączenia naszej przejściówki potrzebujemy podłączyć oczywiście masę (GND) oraz linie do komunikacji (TXD i RXD). Przy okazji bardzo ważne ostrzeżenie:
Raspberry Pi pracuje z napięciami wynoszącymi maksymalnie 3,3V. Podłączenie 5V do pinów malinki może spowodować jej nieodwracalne uszkodzenie!
Jak "na złość" piny 2 i 4 dostarczają napięcia 5V - musimy więc bardzo uważać, żeby niechcący nie zewrzeć ich z innymi lub nie podłączyć do nich czujnika i przez niego nie zasilić pozostałych pinów. Prostym ułatwieniem jest założenie zworki na dwa piny dostarczające +5V. Zwieramy dwa piny 5V ze sobą (co nie wpływa na działanie układu), a dzięki temu blokujemy sobie dostęp do pinów niosących "groźne" 5V.
Takie rozwiązanie ochorni nas przed przypadkowym użyciem 5V
i spaleniem RPi - przydarzył się nam taki wypadek podczas pisania kursu...
Podłączenie konwertera
Nasz konwerter ma możliwość pracy w standardzie 3.3V lub 5V. Raspberry Pi wykorzystuje pierwszą opcję, musimy więc upewnić się, że zworka VCCIO jest umieszczona tak, że wskazuje na 3.3V (zgodnie z poniższym zdjęciem):
Teraz możemy podłączyć odpowiednie piny malinki i konwertera. Nie używamy linii VCCIO, łączymy tylko GND, TXD oraz RXD. Sygnały powinny być połączone "na krzyż", czyli TXD z konwertera łączymy z RXD malinki, a RXD z TXD. Podczas wykonywania połączeń warto wspomóc się podręczną ściągą GPIO, która była w zestawie.
Dla pewności, jeszcze zdjęcie "bez obudowy":
Podłączenie do komputera
Wszystko gotowe? Możemy podłączyć konwerter do komputera i sprawdzić, który port szeregowy został do niego przypisany. U nas był to COM3:
Na tym etapie Raspberry Pi nie jest jeszcze podłączone do prądu!
Pierwsze uruchomienie Raspberry Pi przez UART
Teraz musimy uruchomić program do obsługi portu szeregowego, np. PuTTy - mały darmowy program, który potrafi komunikować się zarówno poprzez sieć wykorzystując protokół SSH jak i przez port szeregowy. Najnowszą wersję programu można pobrać ze strony producenta.
Po jego uruchomieniu wybieramy typ połączenia: Serial, prędkość transmisji 115200 oraz port szeregowy do którego podłączony jest konwerter.
Musimy też wyłączyć kontrolę transmisji - w zakładce Serial odnajdujemy Flow control, a następnie z rozwijanego menu wybieramy None.
Po powrocie do okna głównego programu możemy zapisać naszą konfigurację przyciskiem Save, a następnie otworzyć okno terminala za pomocą przycisku Open.
Gdy terminal się uruchomi, to pozostaje ostatnie sprawdzenie, czy wszystko jest połączone tak, jak być powinno. Wtedy podłączamy zasilanie do RPi.
Po chwili, na komputerze, zobaczymy komunikaty startującego systemu:
Pierwsze uruchomienie systemu zajmuje kilka chwil (do 5 minut). Czekamy więc cierpliwie aż zostaniemy poproszeni o zalogowanie. Co będzie wyglądało następująco:
Logowanie do Raspberry Pi
Domyślny login to pi, a hasło raspberry. Przy wprowadzaniu hasła nie pojawiają się żadne znaki (brak gwiazdek maskujących hasło), to normalne zachowanie w przypadku Linuxa!
Cały proces logowania wygląda następująco:
Podczas wpisywania hasła na ekranie nie pojawiają się żadne znaki!
Domyślna nazwa użytkownika to: pi, a hasło to: raspberry
Po poprawnym zalogowaniu powinniśmy zobaczyć "znany z Linuxa" widok terminala, w którym możemy już działać!
Udało nam się zalogować do naszej malinki. Mamy dostęp do konsoli, która działa dokładnie tak samo jak "terminal" opisywany w poprzedniej części. Do komunikacji z terminalem w zupełności wystarcza nasz port szeregowy.
W linii poleceń możemy wpisywać komendy systemu Linux. Dzięki nim można konfigurować płytkę, uruchamiać programy, a nawet programować. To nieco zaskakujące, ale z Raspberry Pi można korzystać w trybie tekstowym, tryb graficzny wcale nie jest niezbędny.
Wprowadzeniem do pracy terminalem zajmiemy się w osobnym artykule, gdy uporządkujemy już swoją wiedzę z instalacji systemów.
Najważniejsze ustawienia - raspi-config
System jest już zainstalowany. Warto więc wykonać najprostsze ustawienia. Wpisujemy komendę sudo raspi-config i klikamy Enter. Pojawi się okno programu konfiguracyjnego przygotowanego specjalnie z myślą o Raspberry Pi:
Wyjście z powyższego menu możliwe jest za pomocą klawisza Esc.
Zacznijmy od zmiany hasła. Wybieramy pozycję numer 1 (po menu poruszamy się strzałkami), klikamy Enter. Pojawi się następujące okno:
Klikamy Enter i chwilę później wpisujemy nowe hasło, kolejny enter i podajemy hasło drugi raz.
Tutaj również podczas wpisywania hasła nie pojawiają się żadne znaki!
Na koniec otrzymamy komunikat świadczący o zmianie danych do logowania:
Naciskamy Enter i wracamy do menu ustawień. Teraz warto przejść do "Localisation Options". Gdzie ustawiamy informację na temat strefy czasowej, układu klawiatury itd.:
Warto zacząć od wybrania ustawień językowych:
Następnie ustawiamy strefę czasową:
Czyszczenie ekranu, wyłączanie Raspberry Pi w trybie tekstowym
Artykuł miał pokazać proces instalacji RPi przez UART, nie będziemy się więc rozpisywać na temat samej pracy w terminalu. Do tego jeszcze wrócimy w osobnym artykule. Pora wyjść z menu ustawień (klawisz Esc).
Po wciśnięciu Esc wyjdziemy z trybu ustawień i pojawi się oczekiwane pi@raspberrypi:~$ Cały czas jest jednak widoczny nieaktywny widok poprzedniego programu (co może być mylące). Aby się go pozbyć wystarczy wpisać komendę clear, która wyczyści aktualne okno:
Oczywiście, tak samo jak w poprzednio opisywanym trybie graficznym Raspberry Pi, nie można zwyczajnie odłączyć od prądu. Nie ma jednak menu, z którego możemy "wyklikać" wyłączenie...
Jesteśmy w trybie tekstowym, więc w celu wyłączenia płytki musimy skorzystać z komendy:
1 |
sudo shutdown now |
Komputer rozpocznie procedurę wyłączania natychmiast po zatwierdzeniu polecenia:
Jeśli zamiast wyłączania interesuje nas ponowne uruchomienie, to korzystamy z polecenia:
1 |
sudo reboot |
Podsumowanie
Za nami kolejny sposób pracy z RPi - przez UART. Sposób ten jest często pomijany w nauce Raspberry Pi. Warto go jednak znać, na pewno przyda nam się jeszcze w przyszłości! Co więcej skorzystaliśmy z sytemu operacyjnego w wersji lite, czyli m.in. bez interfejsu graficznego. Pobierany obraz tego Raspbiana był znacznie mniejszy, czyli na karcie pamięci zostało więcej miejsca na nasze pliki.
W kolejnym artykule zajmiemy się ostatnią metodą instalacji systemu. Tym razem skorzystamy z sieci lokalnej. Jest to zdecydowanie najpopularniejsza forma zdalnej pracy na malince. Po tym artykule, każdy będzie mógł wybrać sposób, w który chce łączyć się z Raspberry Pi. Będzie to więc idealny moment, aby wreszcie pójść krok dalej i w pełni korzystać z RPi.
Nawigacja kursu
Autorzy: Piotr Bugalski, Damian Szymański
Testy, ilustracje: Piotr Adamczyk
Powiązane wpisy
komunikacja, kurs, kursRaspberryPi, raspberrypi, system, uart
Trwa ładowanie komentarzy...