Home
Postingan

Menggunakan Termux sebagai Stasiun IoT Mini di Android

tomflutter
November 24, 2025
61 Dilihat
1 week ago
Menggunakan Termux sebagai Stasiun IoT Mini di Android

Internet of Things (IoT) terus berkembang dengan cepat dan semakin mudah diakses. Perangkat seperti sensor, aktuator, dan mikrokontroler kini dapat terhubung ke internet dengan biaya yang murah. Namun, ada satu perangkat yang sering terlupakan padahal hampir dimiliki setiap orang: smartphone Android. Dengan bantuan aplikasi Termux, sebuah HP Android dapat diubah menjadi stasiun IoT mini yang mampu bertindak sebagai server, gateway, atau pusat pengendalian berbagai perangkat IoT.


Artikel ini membahas bagaimana menggunakan Termux sebagai pusat IoT kecil, lengkap dengan penjelasan konsep, alat yang diperlukan, contoh implementasi, serta potensi penggunaan di dunia nyata.


Apa Itu Termux dan Mengapa Cocok untuk IoT ??

Termux adalah terminal Linux yang berjalan di atas Android. Tidak memerlukan root, Termux memungkinkan penggunanya menjalankan berbagai utilitas Linux, Python, Node.js, SSH, MQTT client, web server, dan lain-lain. Ini membuka kemungkinan untuk :

  • Menjalankan server IoT berbasis MQTT atau HTTP.
  • Memproses data sensor yang dikirim dari perangkat seperti NodeMCU atau ESP32.
  • Mengendalikan perangkat IoT langsung dari smartphone.
  • Menjadikan HP sebagai gateway antara WiFi, Bluetooth, dan internet.
  • Menyimpan log data seperti suhu, kelembapan, atau konsumsi daya.


Keunggulan utama Termux untuk IoT adalah :

  1. Selalu aktif (Android hidup sepanjang waktu).
  2. Energi efisien—lebih hemat dari Raspberry Pi.
  3. Portabel—bisa ditaruh di mana saja.
  4. Murah—hanya memanfaatkan HP lama yang tidak terpakai.
  5. Kaya fitur jaringan—WiFi, Bluetooth, hotspot, bahkan data seluler.


Hal ini membuat Termux sangat menarik sebagai solusi IoT kecil yang fleksibel dan ekonomis.


Persiapan Awal di Termux

Sebelum membuat stasiun IoT, perlu menginstal beberapa paket dasar.


Update & Upgrade

pkg update && pkg upgrade -y


Instal Bahasa Pemrograman


Contoh : Python dan Node.js.


pkg install python -y
pkg install nodejs -y


Instal Mosquitto (MQTT Broker / Client)


MQTT adalah protokol ringan yang banyak dipakai di dunia IoT.


pkg install mosquitto -y


Buat Direktori Proyek

mkdir ~/iot-station
cd ~/iot-station

Setelah ini, HP sudah siap menjadi stasiun IoT mini.


Menggunakan Termux sebagai MQTT Broker

Salah satu peran paling penting dari stasiun IoT adalah sebagai MQTT broker. Broker adalah “pusat komunikasi” yang membuat perangkat IoT bisa saling mengirim pesan.


Menjalankan Broker MQTT

mosquitto -p 1883

Sekarang HP Android telah menjadi server MQTT penuh.


Menggunakan Mosquitto Client

Subscribe :

mosquitto_sub -t sensor/suhu


Publish:

mosquitto_pub -t sensor/suhu -m "25.1"

Jika ada perangkat IoT (ESP8266/ESP32) mengirim suhu, Termux akan menerima datanya secara real-time.


Menghubungkan Perangkat IoT seperti ESP32 / ESP8266

Perangkat seperti ESP8266 dan ESP32 umumnya digunakan untuk sensor IoT. Mereka dapat mengirim data ke broker MQTT di HP Android.


Contoh Kode ESP8266 untuk Mengirim Data ke Termux :

#include <ESP8266WiFi.h>
#include <PubSubClient.h>


const char* ssid = "WIFI_KAMU";
const char* password = "PASSWORD";
const char* mqtt_server = "IP_ANDROID_KAMU"; // contoh: 192.168.1.5


WiFiClient espClient;
PubSubClient client(espClient);


void setup() {
  Serial.begin(115200);
  WiFi.begin(ssid, password);


  while (WiFi.status() != WL_CONNECTED) delay(500);


  client.setServer(mqtt_server, 1883);
}


void loop() {
  if (!client.connected()) {
    while (!client.connected()) {
      client.connect("ESP8266Client");
    }
  }
  String suhu = "24.5";
  client.publish("sensor/suhu", suhu.c_str());
  delay(5000);
}

Setiap 5 detik, perangkat akan mengirim suhu ke Termux.


Memproses Data Sensor di Termux (Python)

Termux dapat memproses data yang masuk, misalnya menyimpan log atau melakukan analisis sederhana.


Contoh Script Python MQTT Listener

import paho.mqtt.client as mqtt


def on_message(client, userdata, msg):
    data = msg.payload.decode()
    print(f"Data diterima: {data}")
    with open("log_suhu.txt", "a") as f:
        f.write(data + "\n")


client = mqtt.Client()
client.connect("localhost", 1883, 60)
client.subscribe("sensor/suhu")
client.on_message = on_message


client.loop_forever()


Jalankan :

python3 listener.py


File log_suhu.txt akan berisi data suhu setiap kali diterima.