Projekt Raspberry Pi – 1 – Instalacja i konfiguracja Raspbian (Wi-Fi, SSH i VNC)
Wczoraj napisałem ogólny zarys planu jaki mam względem Raspberry Pi (Zero W) i jego integracji z HomeKitem, a dzisiaj przechodzę już do konkretów. Nie miałem wcześniej absolutnie żadnych doświadczeń z żadnym RPi – pomysłów było dużo, ale żaden z nich nie był na tyle interesujący, aby to miało sens.
Ten projekt jest możliwy dzięki uprzejmości Botland, który dostarczył następujące elementy umożliwiające jego wykonanie:
- Zestaw Raspberry Pi Zero W Camera Noir Pack – 224,00 PLN
- Adapter OTG microUSB – USB – 9,90 PLN
- Adapter miniHDMI – HDMI – 5,90 PLN
Spis treści
- Instalacja i konfiguracja Raspbian (Wi-Fi, SSH i VNC).
- Instalacja Homebridge i konfiguracja Xiaomi Air Purifier 2.
- Uruchomienie kamery Raspberry Pi NOIR pod HomeKitem.
- Dodajemy pozycję w HomeKit, wyświetlającą jakość powietrza na dworze.
- Dodajemy prognozę pogody do HomeKit dla naszej ulicy.
- Dodajemy sterowanie TV, Apple TV i amplitunerem do HomeKit przez Homebridge i Logitech Harmony.
- Naprawiamy sterowanie TV, Apple TV i amplitunerem przez Homebridge i Logitech Harmony w HomeKit.
- Wywalamy Airly, bo zabili swoje publiczne API.
- Przenosimy Homebridge do nowego Home i rozwiązujemy problemy z HomeKitem.
I. Przygotowanie karty microSD
Warto kupić kartę SD razem z RPi, ale wiedziałem, że miałem 32 GB Samsunga microSD, z którego nie korzystałem, więc tego nie zrobiłem. Nie jest to model super-szybki, ale do tego celu powinien wystarczyć w zupełności.
Jeśli zdecydujecie się na zakup karty w sklepie, to ma ona od razu zainstalowany system NOOBS1, który ułatwia całą procedurę. NOOBS można też ręcznie doinstalować, ale wolałem od razu zainstalować Raspbiana.
- Kartę należy sformatować jako FAT32.
II. Pobranie potrzebnych plików
Teraz potrzebujemy pobrać samego Raspbiana. Waży on około 2 GB i wolno się pobiera, więc zróbcie to z wyprzedzeniem.
- Najpierw należy udać się na stronę Raspberry Pi Downloads, a następnie kliknąć w Raspbian. Stąd pobieramy
RASPBIAN STRETCH WITH DESKTOP
. - Po pobraniu pliku
2017-11-29-raspbian-stretch.zip
2 trzeba go jeszcze rozpakować, co zaowocuje plikiem2017-11-29-raspbian-stretch.img
.
III. „Wypalenie” pliku na karcie microSD
Rozpakowanego Raspbiana trzeba będzie teraz „wypalić” na karcieSD.
- RPi zaleca skorzystanie z aplikacji Etcher3, którą trzeba pobrać i zainstalować. Instalacja polega na zamontowaniu pliku DMG i przekopiowaniu programu do
/Programy
. - Po uruchomieniu aplikacji, klikamy w ikonkę z plusem, z lewej strony interfejsu i wybieramy nasz rozpakowany plik
2017-11-29-raspbian-stretch.img
(lub odpowiedni). - Na środku należy wybrać docelowe miejsce wypalenia obrazu – upewnijcie się, że to prawidłowa karta SD, a nie taka, która zawiera istotne dane!
- Na koniec pozostaje wcisnąć przycisk
Flash
i czekać na zakończenie procedury.
Jak obraz skończy się wypalać, należy wyjąć i włożyć kartę microSD, aby ją ponownie zamontować.
IV. Konfiguracja Wi-Fi i SSH
Zanim włożymy kartę microSD z Raspbianem do Raspberry Pi, należy sobie ułatwić życie, poprzez uruchomienie SSH i Wi-Fi co w niektórych przypadkach oszczędzi nam konieczności podłączania Maliny pod monitor, klawiaturę i myszkę. SSH jest domyślnie wyłączone, ze względów bezpieczeństwa.
Wi-Fi
Aby nasze RPi automatycznie połączyło się z Wi-Fi przy pierwszym uruchomieniu, należy wykonać poniższe czynności:
- Na karcie microSD tworzymy nowy plik o nazwie
wpa_supplicant.conf
. - Edytujemy jego zawartość w edytorze tekstowym (np. BBEdit lub TextEdit), aby wyglądała tak:
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 country=PL network={ ssid="«SSID_Twojej_sieci»" psk="«Twoje_Hasło_PSK»" key_mgmt=WPA-PSK }
Jeśli nie mieszkacie w Polsce, to zamiast PL
przy country=
, podajecie kod swojego kraju.
W przypadku «SSID_Twojej_sieci»
należy podać nazwę Waszej sieci Wi-Fi – w moim przypadku do Bus Obserwacyjny CBA 32
. W kolejnym wierszu «Twoje_Hasło_PSK»
należy podać swoje hasło.
SSH
Na karcie microSD wystarczy stworzyć pusty plik o nazwie ssh
, aby SSH było aktywne po pierwszym uruchomieniu RPi. Domyślny login to pi
, a hasło to raspberry
– to drugie należy zmienić tak szybko, jak to możliwe.
Za pomocą Terminala można to zrobić tak:
- Uruchamiamy Terminal na macOS.
- Zmieniamy folder na kartę microSD za pomocą komendy
cd /Volumes/boot
. - Wpisujemy
touch ssh
.
V. Złożenie Raspberry Pi Zero W
Złożenie elementów, które przyjechały w pudełku, jest banalnie proste.
- Należy wybrać ten górny element obudowy, który ma otwór ma kamerę.
- Do płyty głównej RPi należy wpiąć kabelek do kamery, który przyszedł w komplecie z Maliną, ponieważ ten dołączany z kamerą jest dostosowany do większego modelu RPi.
- Kabelek ten wpinamy też do samej kamery.
- Wkładamy wcześniej przygotowaną kartę microSD w odpowiednie złącze.
- Obie płytki montujemy w obudowie, delikatnie je wciskając na odpowiednie miejsca.
- Klepiemy się po plecach.
VI. Pierwszy uruchomienie i uaktualnienia
Teraz pozostaje przystąpić do pierwszego uruchomienia Maliny.
- Podłączamy HDMI.
- Podłączamy klawiaturę.
- Podłączamy zasilanie.
Po chwili RPi powinien być już widoczny na liście klientów sieci Wi-Fi.
Podłączyłem się pod swój telewizor poprzez amplituner, bo było mi najbliżej do wolnego portu i kabla HDMI, ale niestety obraz się na nim nie pojawił. Zamiast dochodzić powodów takiego stanu rzeczy, zweryfikowałem najpierw listę urządzeń na Wi-Fi, gdzie na końcu samym znalazłem Malinę.
Jak widać, żyje na końcu listy, gdzie powinna. Następnym krokiem jest weryfikacja poprawnego funkcjonowania SSH.
- Uruchomiamy Terminal.
- Wpisujemy
ssh pi@adres_IP_naszego_RPi
- Następnie podajemy hasło – domyślnie jest to
raspberry
i powinniśmy być zalogowani.
Pierwszą czynnością powinna być zmiana hasła:
- Wpisujemy
passwd
. - Teraz podajemy nasze obecne hasło
raspberry
. - Pozostaje wpisać teraz dwukrotnie nasze nowe hasło (zapiszcie je sobie w 1Password!).
Następnie zdecydowałem się sprawdzić czy nie ma żadnych uaktualnień do Linuxa:
- Wpisujemy
sudo apt-get update
i czekamy aż uaktualniona zostanie package list. - Następnie wpisujemy
sudo apt-get dist-upgrade
, aby wykonać wszystkie update’y. - Teraz czyścimy pozostawione śmieci za pomocą
sudo apt-get clean
, co może mieć znaczenie jeśli macie małą kartę SD. - Na koniec wystarczy reboot Maliny za pomocą
sudo reboot
.
Raspberry Pi jest teraz gotowe na dalsze czynności, czyli instalację Homebridge’a.
VNC
Jeśli z jakiegoś powodu chcecie się podłączyć od Raspberry Pi za pomocą VNC, aby mieć graficzny podgląd na wszystko, to wystarczy zalogować się poprzez SSH na Malinę i wykonać poniższe kroki:
- Wpisujemy komendę
sudo apt-get install tightvncserver
, aby zainstalować lekki serwer VNC. - Następnie uruchamiamy serwer VNC za pomocą tej komendy:
vncserver :1 -name RasPi -depth 16 -geometry 1024x768
(rozdzielczość i głębokość kolorów można zmieniać zależnie od potrzeb). - W kroku nr 2 zostaniemy poproszenie o podanie hasła do serwera VNC, które będzie potem wymagane przy logowaniu. Hasło może mieć maksymalnie 8 znaków – jeśli podacie dłuższe, to wykorzystane zostanie 8 pierwszych znaków.
- Teraz wystarczy w Finderze wcisnąć skrót ⌘K i wpisać w pole serwera
vnc://192.168.xxx.xxx:5901
, aby się do niego podłączyć.
Jak widać powyżej… działa… a ja już ruszyłem!
Komentarze: 16
A po co instalować tightVNC, jeśli mamy już preinstalowany VNC RealVNC nawet z licencją dla Rpi…?
Warto wspomnieć o poleceniu rpi-update, uruchamiającym soft do upgrade firmware w malinie….
Czy dane z Xiaomi (np. temperatura) będą mogły być archiwizowane?
Co dokładnie masz na myśli?
W aplikacji MiHome jest pomiar PM 2.5, temp., wilgotność. I pytanie czy RPi będzie mogło archiwizować te pomiary z oczyszczacza.
Zapewne jest to możliwe, ale trzebaby stworzyć odpowiedni kod, a przynajmniej takowego jeszcze nie znalazłem.
Moze taki npm pomoże https://www.npmjs.com/package/mijia
@Paweł: To akurat jest wymagane do używania go z HomeKitem, więc jest i tak.
Czy jest ew możliwy start i cała konfiguracja z poziomu ipad? Chodzi o sytuacje kiedy nie korzystam z niczego innego tj ipad only😉
Teoretycznie, bo sam nie sprawdzałem, w apple store jest taka aplikacja. Wpisz w wyszukiwarce sklepu homebridge. Nazywa się chyba homebridge dla raspberryPi, jest płatna.
Znam aplikacje i jest maly problem ( nie, nie to ze jest płatna 😉) raczej słabe opinie….. Bardziej chodziło mi o sytuacje braku fizycznej klawiatury zakładające ze karte pamięci z systemem Już mam gotowa….
Ja używam Prompt 2. Znajdziesz go tutaj.
Tak. Wystarczy jakiś Prompt 2 albo inny SSH.
Dziekuje. Chyba rozumiem ale zapytam jeszcze o taka sytuacje: na Pi mamy np serwer vnc jak pisałeś, czy zatem klient vnc na ipad pozwoli na działania na Pi?
Tak.
Kudosy za ten artykuł, właśnie przyszedł mój zestaw – dzisiaj nocka :D
Czy przy raspberry PI3 postępowanie jest takie same? Chodzi mi głównie o plik SSH, bo po wgraniu raspiana nie mogę się połączyć z maliną za pomocą terminala ani adresu ip…