We build custom IoT solutions with modern tools and platforms like Arduino, Raspberry Pi, ESP8266, MQTT, Node-RED, and IoT Cloud for smart homes, industries, and businesses.
Arduino is an open-source electronics platform based on easy-to-use hardware and software. It is widely used for building IoT prototypes and devices.
Raspberry Pi is a small single-board computer used in IoT projects, home automation, and robotics.
ESP8266 is a low-cost Wi-Fi microchip with full TCP/IP stack and microcontroller capability. It is widely used in IoT devices for wireless connectivity.
MQTT is a lightweight messaging protocol used for IoT communications. It enables devices to send data to brokers efficiently.
Node-RED is a visual programming tool for wiring together hardware devices, APIs, and online services in IoT applications.
IoT Cloud platforms provide tools to manage devices, analyze data, and build dashboards for IoT applications.
This example shows how to connect ESP8266 to Wi-Fi, fetch API data, and control a relay.
#include <ESP8266WiFi.h>
#include <WiFiClientSecure.h>
#include <ESP8266HTTPClient.h>
const char* ssid = "MS Shamim Rajツ";
const char* password = "mystrongpasssword";
#define RELAY_PIN D1
unsigned long prevApiMillis = 0;
const unsigned long apiInterval = 3000;
String payload = "";
void setup() {
Serial.begin(9600);
pinMode(RELAY_PIN, OUTPUT);
digitalWrite(RELAY_PIN, HIGH);
Serial.print("Connecting WiFi");
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("\nWiFi Connected");
Serial.println(WiFi.localIP());
}
void loop() {
unsigned long currentMillis = millis();
// ===== API HIT =====
if (currentMillis - prevApiMillis >= apiInterval) {
prevApiMillis = currentMillis;
if (WiFi.status() == WL_CONNECTED) {
WiFiClientSecure client;
client.setInsecure();
HTTPClient https;
if (https.begin(client, "https://shamimrajbd.com/api.php")) {
int httpCode = https.GET();
if (httpCode == 200) {
payload = https.getString();
payload.trim();
Serial.print("Payload: ");
Serial.println(payload);
}
https.end();
}
}
}
// ===== RELAY CONTROL =====
if (payload == "ON") {
digitalWrite(RELAY_PIN, LOW);
delay(500);
digitalWrite(RELAY_PIN, HIGH);
delay(500);
} else if(payload == "OFF") {
digitalWrite(RELAY_PIN, HIGH);
}
}