Skip to main content

MQTT Protocol dengan ESP32

Pada percobaan kali ini kita akan memulai membuat sistem IoT sederhana, yang akan kita gunakan untuk mengirimkan data sensor ke server yang kita kembangkan sendiri. Ada beberapa tahapan yang harus kita lakukan yaitu (1). Membuat platform yang akan mengirim data ke server, kita akan membuatnya dengn ESP32. (2). Membuat infrastruktur untuk menangkap data kita dari sisi server, kita akan menggunakan Node-red, dan (3). Kita akan membuat infrastruktur MQTT, dengan Mosquitto. dan yang terakhir kita akan menampilkan visualisasi datanya dalam dashboard.


Instalasi Node-red di Virtual Machine

Memastikan virtual machine kita up to date dengan menggunakan perintah berikut:

sudo apt update
sudo apt upgrade

Instalasi node-red versi terakhir, membutuhkan nodejs versi 18, untuk itu kita harus menginstall didalam VM kita dengan menggunakan perintah sebagai berikut.

curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -

Setelah installer terdownload dengan curl, kemudian kita jalankan proses instalasi dengan perintah sebagai berikut.

sudo apt-get install -y nodejs build-essential

Setelah instalasi nodejs selesai, kita cek versi dari nodejs yang telah kita install dengan perintah berikut.

nodejs --version

nodejs-version.png

Install node-red, dengan command npm seperti di bawah ini.

sudo npm install -g --unsafe-perm node-red

Node-Red dijalankan dengan perintah node-red. Namun ketika terminal kita close, maka node-red akan close, karena kita jalankan di foreground. Untuk mengelola proses jalannya node-red background dan menjalankan node-red kembali jika mengalami crach, biasanya kita menggunakan PM2. PM2 adalah sebuah perangkat lunak open-source yang berfungsi sebagai process manager untuk aplikasi Node.js. PM2 memungkinkan kita untuk menjalankan aplikasi Node.js di background, bahkan ketika ketika kita menutup terminal, PM2 juga dilengkapi beberapa fitur untuk memonitor penggunaan CPU dan memory. Berikut cara instalasi PM2 di VM kita.

sudo npm install -g --unsafe-perm pm2

Jalankan Node-Red dengan PM2 di VM kita melalui perintah sebagai berikut.

pm2 start `which node-red` -- -v

Simpan session dengan perintah berikut.

pm2 save

pm2.png

Ok, sekarang kita sudah menginstall Node-Red.  Standarnya Node-red diakses dari localhost atau 127.0.0.1 di port 1880 untuk kepentingan akses jarak jauh, kita menggunakan reverse-proxy untuk mengakses node-red yang telah kita install. Kita menggunakan web-server Nginx untuk membuat reverse-proxy, kemudian untuk memudahkan mengakses Node-red tersebut, kita binding dengan domain developer kita yaitu sandihex.id, sehingga kita bisa mengaksesnya dengan alamat https://node-red.sandihex.id .

Screenshot 2024-03-29 at 18.44.16.png


Instalasi Node-red di Virtual Machine