Sitemap

Internet of Things — Project MQTT

3 min readApr 16, 2026

--

Halo semuanya! 👋
Kali ini saya sedang eksplorasi implementasi protokol MQTT untuk komunikasi data antar perangkat. Pada project ini, saya menggunakan MQTT untuk melakukan pengiriman data (publish) ke public MQTT broker sehingga data bisa dipantau secara real-time.

Menariknya, bukan cuma sekadar kirim data, saya juga mencoba menganalisis bagaimana struktur paket data MQTT bekerja di balik layar. Dengan bantuan Wireshark, kita bisa melihat detail isi paket, mulai dari header sampai payload yang dikirimkan.

Di percobaan ini, saya menggunakan perangkat seperti ESP32 sebagai publisher yang mengirimkan data ke broker MQTT, lalu memantau lalu lintas datanya untuk dipelajari lebih dalam.

Di project ini ada dua fokus utama yang saya lakukan:

  • Mengirim data (publish) ke public MQTT broker
  • Menganalisis struktur paket MQTT (header & payload) menggunakan Wireshark

Yuk kita lihat bagaimana cara kerjanya! 🚀

Langkah 1: Persiapan Perangkat Lunak

Pertama, install dulu tools yang dibutuhkan:

  1. MQTT Explorer: https://mqtt-explorer.com/
  2. Wireshark: https://www.wireshark.org/

Langkah 2: Konfigurasi MQTT Explorer

Buka MQTT Explorer, lalu buat koneksi baru dengan konfigurasi:

Host: test.mosquitto.org

Port: 1883

Press enter or click to view image in full size

Agar performanya lebih ringan (tidak lag kaerna kebanyakan data), masuk ke bagian ADVANCE, lalu:

  • Hapus subskripsi default: # dan $SYS/#
  • Tambahkan subskripsi baru: itb/sti/[NIM]/#
Press enter or click to view image in full size

Tujuannya agar data yang msuk lebih spesifik dan tidak kebanjiran oleh data global. Jika sudah, klik Save lalu Connect.

Langkah 3: Menjalankan Wireshark

Buka Wireshark, lalu pilih interface internet yang sedang digunakan.

  • Jika menggunakan macOS, biasanya pilih Wi-Fi: en0.
Press enter or click to view image in full size

Di bagian filter (yang warna hijau), ketik mqtt.

Press enter or click to view image in full size

Lalu tekan enter, tujuannya agar Wireshark hanya menampilkan paket MQTT saja.

Langkah 4: Eksekusi Publish Data

Kembali ke MQTT explorer,lalu cari panel publish

Get Salma Az Zahra’s stories in your inbox

Join Medium for free to get updates from this writer.

Kemudian, isi:

  • Topik: itb/sti/[NIM]/mqtt
  • Value: pesan singkat seperti “Halow”
Press enter or click to view image in full size

Jika sudah, lalu klik tombol publish.

Langkah 5: Analisis di Wireshark

Di Wireshark, cari baris berwana hijau di bagian atas (paket MQTT yang kita kirim)

Press enter or click to view image in full size

Klik paket tersebut , lalu lihat detailnya di panel bawah. Beberapa detail yang dicari adalah sebagai berikut:

Press enter or click to view image in full size
  • IP Header (Internet Protocol)

Header Length: 20 bytes.

Source: 54.36.178.49

Destination: 172.20.10.2

  • TCP Header (Transmission Control Protocol)

Source Port: 1883 (Port standar MQTT)

Destination Port: 49574

Header Length: 32 bytes.

Flags: 0x018 (PSH, ACK). Artinya paket ini membawa data dan meminta pengakuan segera.

Options: Terdapat 12 bytes tambahan (NOP, NOP, Timestamps) yang membuat header TCP menjadi 32 bytes, bukan standar 20 bytes.

  • MQTT Payload (Message Queuing Telemetry Transport)

Berdasarkan data di dalam protokol MQTT:

Press enter or click to view image in full size

MQTT Header Flags: 0x30 (Publish Message, QoS 0).

Msg Len: 28 bytes (Ini adalah panjang sisa data di dalam protokol MQTT).

Topic Length: 21 bytes.

Topic: itb/sti/18224015/mqtt

Message (Payload Data): 48616c6f77 (dalam hex). Jika dikonversi ke ASCII, teks pesan yang dikirim adalah "Halow".

Jika dijumlahkan dari perspektif jaringan:

Total = Ethernet (14) + IP (20) + TCP (32) + MQTT (30) = 96 bytes

--

--