Blynk, własny serwer na maku

Udało mi się dziś w miarę bezboleśnie ustawić lokalny serwer Blynk-a. Głównie kierowałem się opisem na Git Hub oraz filmem z YouTube:

INSTALACJA JAVY

Pierwsze co należy zrobić to sprawdzić czy Java jest już zainstalowana na naszym komputerze

W Terminalu (Terminal.app) trzeba wpisać polecenie:

$ java -version

Ja otrzymałem komunikat o braku Javy i konieczności instalacji. Wszedłem w downloads firmy ORACLE.
Pobrałem plik jdk-12.0.2_osx-x64_bin.dmg kliknąłem i zainstalowałem Javę na komputerze.
Uwaga! Na filmie zostaje pobrany update Javy. Zrobiłem to samo, teoretycznie się instalowało, ale obecności Javy terminal nie potwierdzał, dopiero po ściągnięciu w/w pliku, instalacji i po wpisaniu komendy:

$ java -version

otrzymałem zapis:

java version "12.0.2" 2019-07-16
Java(TM) SE Runtime Environment (build 12.0.2+10)
Java HotSpot(TM) 64-Bit Server VM (build 12.0.2+10, mixed mode, sharing)
INSTALACJA SERWERA BLYNK

Serwer pobrałem stąd. Najnowsza wersja miała nazwę:

server-0.41.11-java8.jar

Pobrany plik wrzuciłem do katalogu Documents. Następnie w oknie Terminala zmieniłem katalog:

cd /Users/yarogniew/Documents

… następnie wpisałem następującą komendę:

java -jar server-0.41.10-java8.jar -dataFolder server_blynk

W folderze Documents utworzony został nowy folder server_blynk w którym zainstalował się nasz lokalny serwer Blynk. Jeśli chcemy żeby serwer działał w tle dopisujemy na końcu znak “&” i uruchamiamy, jak zawsze, klawiszem ENTER

java -jar server-0.41.10-java8.jar -dataFolder server_blynk &

Otrzymujemy informacje o rozpoczęciu pracy serwera Blynk na naszym komputerze wraz z informacjami o adresie, sposobie logowania do kokpitu

Blynk Server 0.41.12-SNAPSHOT successfully started.
All server output is stored in folder '/Users/yarogniew/Documents/logs' file.
Your Admin url is https://192.168.0.4:9443/admin
Your Admin login email is admin@blynk.cc
Your Admin password is admin

Przy następnych uruchomieniach zawsze zmieniamy katalog i potem wpisujemy komendę uruchamiającą serwer javy

cd /Users/yarogniew/Documents
java -jar server-0.41.11-java8.jar -dataFolder server_blynk &

I otrzymujemy informację:

Blynk Server 0.41.12-SNAPSHOT successfully started.
All server output is stored in folder '/Users/yarogniew/Documents/logs' file.

Aby zakończyć pracę serwera po prostu zamykamy okno Terminala (Terminal spyta czy zakończyć procesy), albo wpisujemy komendę

pkill java

Uwaga! Można postawić dowolną liczbę serwerów lokalnych zmieniając nazwę foldera (po -dataFolder). Oczywiście uruchomić możemy tylko jeden serwer.
ADMIN URL

Przechodzimy do katalogu: /Users/yarogniew/Documents/logs i podglądamy plik: blynk.log (wystarczy wybrać i nacisnąć pauzę). Szukamy ostatniego z wpisów, które wygląda mniej więcej tak:
INFO – Region : local. Host : 192.168.0.4.

W okno przeglądarki wpisujemy adres: https://192.168.0.4:9443/admin. Ignorujemy zagrożenia. Logujemy się admin@blynk.cc/admin i wchodzimy do panelu sterowania. Tam mamy możliwość podglądu wszystkiego co dzieje się na naszym nowym serwerze.

APLIKACJA

Wchodzimy do aplikacji Blynk na telefonie czy tablecie. Ja korzystam z wersji Android. Klikamy Log in. (Jeśli wcześniej byliśmy zalogowani do serwera Blynk.cloud to się wylogowujemy.)
Wp

Klikamy w ikonkę z trzema kropkami i strzałką na dole ekranu.

Przełącznik wyboru serwera ustawiamy w pozycji CUSTOM i poniżej wpisujemy adres serwera i numer portu, które otrzymaliśmy przy instalacji. W moim przypadku jest: 192.168.0.4 : 9443 (na rysunku jest adres starszego serwera)
Jako login wpisujemy admin@blynk.cc, hasło to admin albo kreujemy nowego użytkownika.
Dalej wszystko przebiega tak jak w Blynk.cloud. Tworzymy nowy projekt (New Project), wprowadzamy widgety, jedyną przyjemną różnicą jest Energy Pack, który wynosi 99.900!

SKECZ NA URZĄDZENIU, KTÓRYM STERUJEMY
  //Blynk.begin(auth, ssid, pass);
  // You can also specify server:
  //Blynk.begin(auth, ssid, pass, "blynk-cloud.com", 80);
  Blynk.begin(auth, ssid, pass, IPAddress(192,168,0,2), 8080);

To jedyna różnica w kodzie przy pracy z własnym serwerem. Trzeba uaktywnić dolny wiersz kodu i wpisać swój adres serwera. Pamiętajmy przy tym że numery oddzielamy przecinkami zamiast kropek. Na filmie sugerowano żeby nie wpisywać numeru portu. U mnie nie chciał się łączyć bez portu. Dopiero 8080 zadziałał tak jak sugerują w instrukcji.
Poniżej najprostszy kod, który wrzuciłem do Wemos D1 mini. W aplikacji utworzyłem widżet Button ustawiłem OUTPUT na D4. I przyciskiem zapalam led systemowy. Jest świetnie!

/* Comment this out to disable prints and save space */
#define BLYNK_PRINT Serial


#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>

// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "";

// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "";
char pass[] = "";

void setup()
{
  // Debug console
  Serial.begin(9600);

  //Blynk.begin(auth, ssid, pass);
  // You can also specify server:
  //Blynk.begin(auth, ssid, pass, "blynk-cloud.com", 80);
  Blynk.begin(auth, ssid, pass, IPAddress(192,168,0,2), 8080);
}

void loop()
{
  Blynk.run();
  // You can inject your own code or combine it with other sketches.
  // Check other examples on how to communicate with Blynk. Remember
  // to avoid delay() function!
}

LINKI

Dodaj komentarz