Pluggio
Pluggio is a smart home system designed to turn traditional home sockets into remotely controlled and programmable smart devices.
The system consists of an Android mobile application and a physical smart socket device powered by an ESP32 microcontroller. Users can manage their sockets remotely, monitor their socket inventory, and schedule devices to turn on or off automatically.

Key Features
Scan & Add Your Socket
Users can scan a Pluggio socket to quickly add it to their home inventory and associate the physical device with their mobile application.
Home Socket Inventory
The application provides an overview of all connected sockets in the userβs home, with images and information for easily identifying individual devices.
Remote Socket Control
Users can remotely turn individual sockets on or off directly from the Android application.
This allows connected appliances to be controlled without physically interacting with the socket.
Scheduled Automation
Sockets can be programmed to automatically turn on or off at a specific time.
This allows users to automate appliances and create simple schedules without manually controlling the socket every time.
Technical Implementation
Pluggio combines mobile application development, embedded programming, and physical hardware into a single connected system.
The Android application was developed using Java, providing the user interface and the functionality required to manage connected Pluggio sockets.
The physical socket device is powered by an ESP32 microcontroller and programmed in C++. The ESP32 is responsible for controlling the socket hardware and communicating with the mobile application.
The project required coordinating communication between the mobile application and the embedded device while maintaining the state of each connected socket.
Technology Stack
- Mobile Application: Java / Android
- Embedded Software: C++
- Microcontroller: ESP32
- Hardware: Custom smart socket device
System Architecture
Pluggio consists of two primary components: the Android application and the ESP32-powered smart socket.
The Android application acts as the main user interface, allowing users to manage their sockets, while the ESP32 handles the physical switching and device-level logic.
This creates a complete hardware-to-software system where commands from the mobile application are translated into actions performed by the physical socket.
Project Status
Completed
Pluggio is a completed hardware and software project that is not currently deployed as a commercial product.
The project was built to explore the development of an end-to-end smart home system, combining Android development, embedded C++ programming, microcontroller hardware, device communication, remote control, and scheduled automation.