IoT Development

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

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.

What you can do with Arduino:

  • Control Sensors & Actuators: Read data from sensors and control motors, LEDs, etc.
  • IoT Projects: Connect to Wi-Fi modules for smart home and industrial applications.
  • Programming: Use Arduino IDE to write sketches (C/C++ based code).

Raspberry Pi

Raspberry Pi is a small single-board computer used in IoT projects, home automation, and robotics.

What you can do with Raspberry Pi:

  • Run Linux OS: Full OS support for Python, Node.js, and other languages.
  • Home Automation: Control devices and sensors with Pi GPIO pins.
  • IoT Gateway: Acts as a hub for connecting multiple IoT devices.

ESP8266

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.

What you can do with ESP8266:

  • Connect Devices to Wi-Fi: Send and receive data to cloud servers.
  • Smart Devices: Control lights, fans, and other appliances remotely.
  • MQTT Communication: Publish and subscribe data to IoT brokers.

MQTT

MQTT is a lightweight messaging protocol used for IoT communications. It enables devices to send data to brokers efficiently.

What you can do with MQTT:

  • Publish & Subscribe: Devices can exchange data in real-time.
  • IoT Integration: Connect sensors, microcontrollers, and cloud platforms.
  • Low Bandwidth: Efficient for mobile and low-power devices.

Node-RED

Node-RED is a visual programming tool for wiring together hardware devices, APIs, and online services in IoT applications.

What you can do with Node-RED:

  • Flow-based Programming: Connect devices and services visually.
  • Automation: Create smart workflows for IoT devices.
  • Integration: Connect with APIs, MQTT brokers, and cloud services.

IoT Cloud Platforms

IoT Cloud platforms provide tools to manage devices, analyze data, and build dashboards for IoT applications.

What you can do with IoT Cloud:

  • Device Management: Add, monitor, and control connected devices remotely.
  • Data Analytics: Visualize and analyze sensor data in real-time.
  • Notifications & Alerts: Trigger alerts based on sensor readings.

ESP8266 IoT Example (C++)

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);
  }
}