Lokalny serwer Blynk na Raspberry Pi Zero W

Przygotowanie bootowalnej karty microSD

rys.0

  • imager_1.4
    • Wybieramy system, ja wybrałem Raspberry Pi OS Lite (32-bit) (rys.1), następnie wskazujemy naszą kartę SD. Wciskamy WRITE i system się wgrywa.
rys.1
  • Po zakończeniu wyjmujemy kartę i ponownie montujemy. W finderze pojawia się nośnik o nazwie boot.
  • Teraz przystępujemy do wpisania i modyfikacji plików potrzebnych do podłączenia zdalnego naszego Raspberry Pi Zero W
  • Na karcie microSD tworzymy pierwszy plik o nazwie: wpa_supplicant.conf
    • W tym celu otwieramy Terminal i wpisujemy polecenie: cat> wpa_supplicant.conf
    • Następnie wpisujemy zawartość poniżej (wpisując nazwę swojej sieci i hasło) i zamykamy edytor używając kombinacji klawiszy ctrl + D
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
}

Uwaga!

Jeśli po zmianie parametrów sieci (na przykład komendą: sudo nano /etc/wpa_supplicant/wpa_supplicant.conf) malinka ogłuchnie i stanie się niewykrywalna w sieci (przeżyłem to osobiści), zawsze możemy przenieść kartę SD do naszego PC-ta i ponownie wpisać do widocznego sektora boot plik: wpa_supplicant.conf z zawartością. Po ponownym włożeniu karty do Raspbery system przeniesie informacje do własnego pliku konfiguracyjnego i dane sieci zostaną zmienione.

  • Tworzymy drugi, pusty plik o nazwie ssh
    • W Terminalu wpisujemy polecenie: cat> ssh
    • Zamykamy edytor używając kombinacji klawiszy ctrl + D
  • Wyjmujemy kartę SD z komputera i wkładamy do malinki. Malinka zaczyna mrugać. Czekamy (bardzo cierpliwie) aż przestanie

Łączymy się z maliną

  • Pamiętajmy, że komputer musi być zalogowany do tej samej sieci WiFi co nasza malina.
    Musi to być sieć 2.5GHz. Raspberry Zero W nie obsługuje 5GHz
  • Sprawdzamy jaki adres ma nasz Raspberry, ja użyłem do tego aplikacji Tether ponieważ mam router TP-Link
    Adres mojego urządzenia to 192.168.1.181
  • Wpisałem do terminala polecenie: ssh pi@192.168.1.181 // nawiązanie połączenia SSH: username@host (host: nazwa hostu lub adres)
    Pojawia prośba o hasło: pi@192.168.1.181’s password: 
    Za pierwszym razem wpisujemy hasło: raspberry
  • Jesteśmy zalogowani do naszego Raspberry Pi Zero W!
  • Zmieniamy hasło poleceniem: passwd (wpisujemy raspberry jako stare hasło i dwa razy nowe)
  • Wychodzimy z maliny wpisując polecenie: exit

Instalacja środowiska Java

Zanim zainstalujemy środowisko Java należy zaktualizować system. Służą do tego dwie komendy:

  • sudo apt update
  • sudo apt upgrade

Instalacja potrwa od kilku do kilkunastu minut

Instalujemy środowisko javy. I tu mała uwaga. Należy bezwzględnie zainstalować Java w wersji 8. Wyższe wersje nie działają na Raspberry Pi Zero.
Wpisujemy komendę:

  • sudo apt install openjdk-8-jdk openjdk-8-jre

Czekamy cierpliwie aż java się zainstaluje. Po wpisaniu

  • java -version

powinniśmy otrzymać wpis podobny do tego:

  • pi@raspberrypi:~ $ java -version
  • openjdk version “1.8.0_212”
  • OpenJDK Runtime Environment (build 1.8.0_212-8u212-b01-1+rpi1-b01)
  • OpenJDK Client VM (build 25.212-b01, mixed mode)

Teraz warto zrobić backup karty SD z systemem.

Źródło: https://pimylifeup.com/backup-raspberry-pi/

W terminalu zamykamy malinkę komendą

  • sudo shutdown now

Odłączamy zasilanie, kartę microSD przekładamy do komputera
w Terminalu (macOS) wpisujemy komendę

  • diskutil list

szukamy dysku o nazwie boot i kopiujemy ścieżkę do niego.
U mnie: /dev/disk6

wpisujemy komendę

sudo dd if=/dev/disk6 of=~/PiSDBackup.dmg  

Uwaga: Jeśli otrzymamy komendę: No such file or directory robimy tak:

  • Znajdujemy sobie miejsce na dysku na backup i tworzymy folder z nazwą na przykład BACKUP
  • w terminalu podajemy ścieżkę, u mnie:
    • cd /Users/minimj/Desktop/RASPBERRY/BACKUP
  • i wpisujemy polecenie z nazwą pliku obrazu karty sd (u mnie Pi2SDBackup.dmg):
    • sudo dd if=/dev/disk6 of=Pi2SDBackup.dmg

(oczywiście disk6 zastępujecie adresem waszego dysku) i cierpliwie czekamy.
Terminal nie pokazuje postępu wykonywania kopii, będzie wiadomo kiedy koniec operacji po pojawieniu się znaku promptera w oknie Terminala. Plik z obrazem dysku znajdziemy w katalogu domowym albo tam gdzie ją zapisaliśmy, przywrócić kopię najlepiej z pomocą programu Etcher (rys.2)

rys.2

Instalujemy serwer blynk

Uwaga! Blynk nie wspiera już lokalnego serwera, publiczny jest płatny. Na szczęście jest strona: https://github.com/Peterkn2001/blynk-server , a tam wszystko po staremu:)

  • Wpisujemy komendę:
    • wget “https://github.com/Peterkn2001/blynk-server/releases/download/v0.41.16/server-0.41.16-java8.jar”
      • w folderze: /home/pi zostaje utworzony plik o nazwie: server-0.41.16-java8.jar
  • Następnie wpisujemy polecenie: crontab -e . Chcemy, by serwer uruchamiał się po bootowaniu raspberry
    • otworzy się edytor do którego wpisujemy polecenie:
    • @reboot java -jar /home/pi/server-0.41.16-java8.jar -dataFolder /home/pi/Blynk &
rys.3
  • Zamykamy edytor wciskając kolejno CTRL+X, następnie Y, na końcu klawisz ENTER.
  • Ustawiamy pocztę. Źródło: https://github.com/blynkkk/blynk-server
    wpisujemy komendę:
    • sudo nano mail.properties
  • Otwiera się edytor. Wpisujemy

mail.smtp.auth=true
mail.smtp.starttls.enable=true
mail.smtp.host=smtp.gmail.com
mail.smtp.port=587
mail.smtp.username=<Twój mail>@gmail.com
mail.smtp.password=<hasło>
mail.smtp.connectiontimeout=30000
mail.smtp.timeout=120000

Pamiętajmy, że adres może być tylko gmail-owy

  • Restartujemy serwer
    • sudo reboot
  • Należy się zalogować na konto google, którego mail podaliśmy wyżej i wejść tu
  • Otworzy się okno dostępu do mniej bezpiecznych aplikacji. Należy go włączyć rys.4
Zrzut ekranu: Dostęp mniej bezpiecznych aplikacji

Używając adresu hostname -I otwieramy Dashboard

Zmiana sieci WiFi

Czasem trzeba zmienić sieć WiFi. Najprostszym do tego narzędziem jest wpisanie w Terminalu polecenia:

sudo raspi-config

otworzy się konfigurator w którym możemy dokonać zmiany sieci. Pamiętajmy, że zmieni się również IP raspberry.

LINKI

https://youtu.be/SD_ke78N7-4

Dodaj komentarz