Blynk server build trên Raspberry Pi

Ở những bài trước tôi đã hướng dẫn các bạn có thể tự tạo 1 project blynk cho mình bằng ethernet(dây) hoặc esp(wifi) nhưng khi các bạn làm 1 project với những hướng dẫn trên thì các bạn sẽ phát hiện 1 điều, điều gì thì mình sẽ nói trong nội dung bài nhé!


Yêu cầu

Yêu cầu kiến thức

  • Biết sử dụng Linux cơ bản
  • Có khả năng đọc, hiểu tiếng anh cơ bản

Các yêu cầu về phần mềm

Yêu cầu phần cứng

Cài đặt Raspbian vào Raspberry Pi

Các bạn xem chi tiết tại đây

Cài blynk server vào Raspberry Pi

Cài đặt java 8:

sudo apt-get install oracle-java8-jdk

Chắc chắn là bạn phải sử dụng Java 8

java -version

Output: java version "1.8"

Download Blynk server bằng bằng wget

wget "https://github.com/blynkkk/blynk-server/releases/download/v0.39.10/server-0.39.10-java8.jar"

Chạy lệnh start server Blynk, port để chạy trên thiết bị là 8080 và port trên app là 9443(port SSL)

java -jar server-0.39.10-java8.jar -dataFolder /home/pi/Blynk

Và xong rồi đấy đơn giản đúng không nào!

Kết quả sẽ trả về như sau:

Blynk Server successfully started.

All server output is stored in current folder in 'logs/blynk.log' file.

Nhưng khi start thì câu lệnh nhập nhằng quá nhỉ, tôi sẽ làm gọn hơn câu lệnh bằng cách tạo 1 file blynk.sh như sau:

 

Vậy thì bây giờ khi tôi muốn start server blynk chỉ cần gọi:

bash blynk.sh

Bây giờ bạn có thể đăng nhập Web admin:

https://your_ip:9443/admin
Id: [email protected]

Pass: admin

Nếu các bạn xài chrome sẽ bị warning certificates để enable trên chrome các bạn paste dòng này vào chrome

chrome://flags/#allow-insecure-localhost

Cấu hình local trên Blynk app

Đầu tiên các bạn phải tạo tài khoản trên local(server raspberry pi), ở đây ip local của tôi là 10.31.0.94 port SSL là 9443 nên tôi sẽ tạo tài khoản và đăng nhập như sau:

Sau khi các bạn đăng nhập thì các bạn vẫn tạo project như bình thường nhưng điều đặc biệt tôi nói ở đầu bài là gì, khi các bạn sử dụng cloud của blynk.cc thì các bạn sẽ bị hạn chế energy còn khi các bạn tự build server của mình thì các bạn có thể tự tùy chỉnh bao nhiêu tùy thích

 

Vậy thì bây giờ bạn sẽ không bị hạn chế gì nữa ^^!

Nạp code kết nối vào esp Node MCU

#define BLYNK_PRINT Serial

#include

#include

char auth[] = "PasteYourAuthTokenHere";

// để password của bạn là "" nếu wifi của bạn không có mật khẩu

char ssid[] = ""; //Id wifi của bạn

char pass[] = ""; //Mật khẩu wifi của bạn

void setup()

{

  // Debug console

  Serial.begin(9600);

  //Blynk.begin(auth, SSID, pass, "your_host", 8080); nếu các bạn sử dụng host name

  Blynk.begin(auth, ssid, pass, IPAddress(10,31,0,94), 8080); // sử dụng địa chỉ ip local, và port mặc định là 8080

}



void loop()

{

  Blynk.run();

}

Và … được rồi đấy, lưu ý mỗi thiết bị sẽ có 1 Auth Token riêng nhé!

Tính năng, ưu nhược điểm

Ưu điểm

  • Không giới hạn energy
  • Không phụ thuộc vào cloud của blynk

Nhược điểm

  • Nếu muốn điều khiển ở ngoài các bạn phải biết NAT ip ra ngoài.
  • Phải có kiến thức cơ bản về esp, raspberry, internet….
  • Có quá nhiều ưu điểm

 

Ở bài viết sau tôi sẽ hướng dẫn các bạn một điều thú vị nữa, hãy chờ xem ^^

Phạm Vĩnh Toàn – Mechasolution Việt Nam

 

 

Có thể bạn quan tâm ???