Sampel Publish Single Tag
Temperatur dan Kelembaban Sensor MQTT
DHT22
Persiapkan Komponen
Konfigurasi Perangkat Keras
Buat GoIoT Proyek
Mulai memprogram
Jalankan program di Perangkat Keras
Enjoy
Persiapkan Komponen
DHT Sensor

NodeMCU ESP8266

Kabel Jumper

Konfigurasi Perangkat Keras

DHT NodeMCU
VCC <--> 3v3 / VV / Vin
GND <--> GND
Out <--> D4 / GPIO2
Buat GoIoT proyek
Ikuti langkah-langkah nya disini
Mulai memprogram
/*This Example Program created for Publish test with output (GPIO2/D4) using GoIoT as IOT Platform
--------------------------- www.goiot.id ---------------------------
Wifi Communication*/
#include <PubSubClient.h> // library MQTT (metode MQTT publish subscribe)
#include <ESP8266WiFi.h> // library esp8266
// #include <WiFi.h> // library esp32
#include <DHT.h> // library DHT sensor
#define DHTPIN 2 // GPIO2 is D4 in board esp8266 NodeMCU
// #define DHTPIN 4 // GPIO2 is D4 in board ESP32
#define DHTTYPE DHT22 // Tipe DHT (sesuaikan dengan tipe DHT sensornya)
DHT dht(DHTPIN, DHTTYPE);
char ssid[] = "ssid wifi anda"; // silahkan diisi
char pass[] = "password wifi anda"; // silahkan diisi
const char* broker = "broker.goiot.id"; // set MQTT server
WiFiClient client;
PubSubClient mqtt(client);
char msg[50];
void setup_wifi() {
delay(10);
// We start by connecting to a WiFi network
Serial.println();
Serial.print("Connecting to ");
Serial.println(ssid);
WiFi.begin(ssid, pass);
int retries = 0;
while ((WiFi.status() != WL_CONNECTED) && (retries < 10)) {
retries++;
delay(500);
Serial.print(".");
}
if (WiFi.status() == WL_CONNECTED) {
Serial.println(F("WiFi connected"));
}
}
void setup() {
Serial.begin(115200);
setup_wifi();
dht.begin();
mqtt.setServer(broker, 1883);
delay(10);
Serial.println("Hasil DHT : ");
}
void reconnect() {
while (!mqtt.connected())
{
Serial.print("Attempting MQTT connection...");
char *idnya = "projectID anda#device anda#"; // silahkan diisi
char *username = "username GOIOT anda"; // silahkan diisi
char *password = "MQTT token GOIOT anda"; // silahkan diisi
if (mqtt.connect(idnya, username, password))
{
Serial.println("connected");
}
else
{
Serial.print("failed, rc=");
Serial.print(mqtt.state());
Serial.println("try again in 5 seconds");
delay(5000);
}
}
}
void loop() {
if (!mqtt.connected())
{
reconnect();
}
mqtt.loop();
float h = dht.readHumidity(); // Read Humidity
float t = dht.readTemperature(); // Read temperature as Celsius
float f = dht.readTemperature(true); // Read temperature as Fahrenheit
Serial.print("Temperature : ");
Serial.print(t);
Serial.println(" °C ");
// sprintf(msg, "%f", t); // convert float ke char
sprintf(msg, "%d.%02d", (int)t, (int)(t*100)%100); // bila konversi float ke char error gunakan ini
mqtt.publish("v2/projectID anda/device anda/direct/tag anda", msg); // silahkan diisi
Serial.println(msg);
delay(1000);
}
/* www.goiot.id */
Upload Program


Math Random MQTT
Persiapkan Komponen
NodeMCU ESP8266

/*This Example Program created for Publish test with output (GPIO2/D4) using GoIoT as IOT Platform
--------------------------- www.goiot.id ---------------------------
Wifi Communication*/
#include <PubSubClient.h> // library MQTT (metode MQTT publish subscribe)
#include <ESP8266WiFi.h> // library esp8266
// #include <WiFi.h> // library esp32
char ssid[] = "ssid wifi anda"; // silahkan diisi
char pass[] = "password wifi anda"; // silahkan diisi
const char* broker = "broker.goiot.id"; // set MQTT server
WiFiClient client;
PubSubClient mqtt(client);
char msg[50];
long randomNumber; // variabel yang akan dikirim
void setup_wifi() {
delay(10);
// We start by connecting to a WiFi network
Serial.println();
Serial.print("Connecting to ");
Serial.println(ssid);
WiFi.begin(ssid, pass);
int retries = 0;
while ((WiFi.status() != WL_CONNECTED) && (retries < 10)) {
retries++;
delay(500);
Serial.print(".");
}
if (WiFi.status() == WL_CONNECTED) {
Serial.println(F("WiFi connected"));
}
}
void setup() {
Serial.begin(115200);
setup_wifi();
mqtt.setServer(broker, 1883);
delay(10);
}
void reconnect() {
while (!mqtt.connected())
{
Serial.print("Attempting MQTT connection...");
char *idnya = "projectID anda#device anda#"; // silahkan diisi
char *username = "username GOIOT anda"; // silahkan diisi
char *password = "MQTT token GOIOT anda"; // silahkan diisi
if (mqtt.connect(idnya, username, password))
{
Serial.println("connected");
}
else
{
Serial.print("failed, rc=");
Serial.print(mqtt.state());
Serial.println("try again in 5 seconds");
delay(5000);
}
}
}
void loop() {
if (!mqtt.connected())
{
reconnect();
}
mqtt.loop();
randomNumber = random(20); // random number from 0 to 19
sprintf(msg, "%i", randomNumber); // convert integer ke char
mqtt.publish("v2/projectID anda/device anda/direct/tag anda", msg); // silahkan diisi
Serial.println(msg);
delay(1000);
}
/* www.goiot.id */
Last updated
Was this helpful?