Jak się podłączyć pierwszy raz do Raspberry Pi

Raspberry Pi (w skrócie RPi) w odróżnieniu od Arduino wymaga kilku kroków, zanim będziemy mogli podłączyć pierwsze układy. W tym artykule dowiesz się jak przygotować RPi do pracy. Zakładamy, że masz Raspberry Pi z kartą micro SD z systemem Raspbian, oraz planujesz podłączenie do sieci WiFi.
Najprostszą metodą jest podłączenie monitora z wejściem HDMI i klawiatury USB. Jednak gdy nie masz dostępu do takich luksusów, możesz skorzystać z opcji bezpośredniego podłączenia do komputera.

Raspberry Pi wersja 2 z modułem WiFi

Składniki

Sieć Ethernet - przez router

Jeżeli masz fizyczny dostęp do routera WiFi, do którego jest podpięty Twój komputer,możesz RPi podłączysz do routera używając przewodu Ethernet. Router nada automatycznie adres RPi i będziesz się mógł do niego podłączyć. Po zalogowaniu się na RPi skorzystaj z kroków opisanych w części dotyczącej konfiguracji WiFi

Sieć Ethernet - bezpośrednie połączenie

Gdy nie masz dostępu do routera, możesz podłączyć RPi bezpośrednio z komputerem.

Metoda ta została przetestowana na komputerze z Windows 7. Zakładam, że masz podstawowe pojęcie o sieciach komputerowych i wiesz jak nadać adres IP interfejsowi Ethernet w Twoim komputerze. Jeżeli tego nie umiesz, to znajdź przewodnik w Internecie, albo poszukaj monitora i klawiatury :)

Na potrzeby połączenia wybierz jakąś nieużywaną sieć IP, różną od sieci używanej przez kartę WiFi w Twoim komputerze. Zwykle adres IP w sieci WiFi ma format 192.168.x.y. Adresem sieci jest tutaj (zazwyczaj) 192.168.x.0 a 192.168.x.y to adres komputera. By wybrać inną sieć, użyj innej wartości x.

Na przykład, jeżeli Twój komputer ma adres 192.168.1.105, adres sieci to zapewne 192.168.1.0. W takim razie na sieć do podłączenia się do RPi użyjmy sieci o adresie 192.168.20.0. Twój komputer będzie miał adres 192.168.20.1, a RPi nadamy adres 192.168.20.2. Takich wartości będziemy dalej używać w przykładach.

Kartę microSD wkładasz do komputera, na karcie widać tylko niewielki dysk. Znajduje się tam kilka plików, nas interesuje ten o nazwie cmdline.txt. Nim go otworzysz w Notatniku (Notepad), pamiętaj, że zawiera on jedną linię i tak ma pozostać. Nie naciskaj Enter w czasie edycji.

W pliku znajduje się długa linia z konfiguracją jądra Linuksa.

dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait

Otwórz plik i na końcu linii dopisz (ze spacją oddzielająca od poprzedniego wpisu) ip=192.168.20.2 Oczywiście, jeżeli wybrałeś inny adres RPi, to wpisz tutaj właściwy adres IP. WAŻNE Zapisz teraz plik, korzystając z funkcji Plik/Zapisz jako. Nazwy oczywiście nie zmieniaj, upewnij się natomiast, że format zapisu to ANSI a nie Unicode czy UTF-8.

dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait ip=192.168.20.2

Kartę wyjmij z czytnika (wcześniej oczywiście skorzystaj z procedury 'Bezpiecznego usuwania nośnika') i przełóż do RPi. Podłącz do zasilania RPi i gdy się uruchamia, skonfiguruj kartę Ethernet w Twoim komputerze na wybrany dla komputera adres IP (w tym przykładzie jest to 192.168.20.1). Podłącz kablem port Ethernet RPi z portem Ethernet Twojego komputera. Na RPi powinny zaświecić się diody tuż pod gniazdem Ethernet.

Aby przetestować połączenie, uruchom linię poleceń (cmd) i wydaj komendę ping 192.168.20.2. Program powinien podawać czasy, jakie zajmuje uzyskanie odpowiedzi.

Konfiguracja WiFi

Przez sieć łączymy się do RPi przez SSH. Nazwa użytkownika to pi, a hasło raspberry. Pod Windows możesz użyć programu PuTTY.

Pierwszym krokiem jest konfiguracja interejsu sieciowego WiFi. Po zalogowaniu się na RPi wydaj komendę:

sudo nano /etc/network/interfaces

Korzystanie z edytora nano. Jeżeli chcesz wyjść z edycji, nie zapisując wprowadzonych zmian, to naciśnij Ctrl+X i wybierz N. Wyjście i zapisanie zmian w pliku: Ctrl+X i wybór Y

Wygląd tego pliku nieco zmienia się z wersji na wersję, ale musisz się upewnić, że znajdzie się tam taki ciąg wpisów:

#auto wlan0
allow-hotplug wlan0
iface wlan0 inet manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf

iface default inet dhcp

Jeżeli są już jakieś wpisy dotyczace wlan0, usuń je (Ctrl+K usuwa całą linię w której jest kursor) i wpisz te powyżej. Definiują one interfejs sieciowy wlan0 do pracy z domyślnymi ustawieniami routerów WiFi.

Zwróć uwagę na znak # przed auto wlan0. Podana konfiguracja nieco różni się od takiej, jaką można spotkać w tutorialach dotyczących RPi. Nasza metoda (stan na maj 2015) w prosty sposób pozwala osiągnąć efekt automatycznego podłączania się do sieci WiFi. Nie tylko w momencie startu RPi, ale również w wypadku gdy sieć WiFi przez jakiś czas nie będzie dostępna (np z powodu restartu routera).

Wydaj komendę:

sudo nano /etc/rc.local

W tym pliku (na końcu) znajdziesz linię exit 0. Tuż nad tą linią, dodaj nową o następującej treści:

ifup wlan0

Kolejnym krokiem jest konfiguracja parametrów sieci WiFi takich jak jej nazwa, hasło i sposób szyfrowania.

sudo nano /etc/wp_supplicant/wpa_supplicant.conf

Zapewne będzie tam kilka linii, ale nie będzie zdefiniowanej żadnej sieci. Dodaj wpis network={}, a między nawiasami podaj wszystkie parametry sieci. Każdy jest w oddzielnej linii.

network={
ssid="SSID"
psk="HASŁO"
    }

Oczywiście SSID i HASŁO muszą być odpowiednie dla Twojej sieci. Pozostałe paramatery RPi spróbuje dobrać automatycznie.

Po restarcie urządzenia (komenda sudo reboot) i odczekaniu pewnego czasu RPi powinno być dostępne w sieci WiFi.

Co robić gdy nie działa

Działa, ale Raspberry bardzo długo startuje

Jeżeli Twoje RPi ma dopisaną linię ip=X.Y.Z.W do pliku cmdline.txt, to czas startu bez podłączonia do sieci Ethernet wydłuży się o 120 sekund. Cały proces startu w takiej sytuacji może trwać około 3 minut. To naprawde długo, możesz myśleć, że Twoje Raspberry w ogóle nie startuje...

Usuń wpis z adresm IP jeżeli już nie planujesz bezpośredniego podłączenia kablem Ethernet do komputera. Możesz zrobić to z RPi, wydaj komendę sudo nano /boot/cmdline.txt

RPi w ogóle nie startuje

Jeżeli RPi wygląda, że w ogóle nie wystartowało, najlepiej podłączyć je do monitora i zobaczyć komunikaty, będą podpowiedzią gdzie szukać przyczyn. Kilka wskazówek, gdy nie masz takiej możliwości:

Masz dopisany do pliku cmdline.txt adres IP, ale nie udaje Ci się połączyć z RPi?

Wskazówka 1 upewnij się, że Twój komputer odpowiada na komende ping z niego samego. Jeżeli nie ma odpowiedzi to znaczy, że masz źle skonfigurowaną kartę sieciową w komputerze.

Wskazówka 2 Podłacz ponownie karte microSD do swojego komputera i z linii poleceń wydaj komendę:

type e:\cmdline.txt

Zastąp literę e właściwym dla Twojego komputera oznaczeniu dysku. Rezultat powinen być zbliżony do tego:

dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait ip=192.168.20.2

Zwróć uwage czy przed dwc_otg nie ma jakiś dziwnych znaczków. Jeżeli są, otwórz plik ponownie i zapisz jeszcze raz, upewniając się że wybrałeś opcję ANSI tak jak wcześniej opisaliśmy.