https://github.com/obirikan/smart-home-
This project is a mobile app Smart Home System implemented using the ESP32 microcontroller and Arduino. It allows users to remotely monitor and control appliances in a home via Wi-Fi.
https://github.com/obirikan/smart-home-
arduino esp32-arduino expo-go iot react-native
Last synced: about 2 months ago
JSON representation
This project is a mobile app Smart Home System implemented using the ESP32 microcontroller and Arduino. It allows users to remotely monitor and control appliances in a home via Wi-Fi.
- Host: GitHub
- URL: https://github.com/obirikan/smart-home-
- Owner: obirikan
- Created: 2025-08-04T19:46:24.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-08-07T23:37:49.000Z (11 months ago)
- Last Synced: 2025-08-08T01:15:34.209Z (11 months ago)
- Topics: arduino, esp32-arduino, expo-go, iot, react-native
- Language: TypeScript
- Homepage:
- Size: 279 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Smart Home Project - ESP32 + Arduino
This project is a mobile app Smart Home System implemented using the ESP32 microcontroller and Arduino. It allows users to remotely monitor and control appliances in a home via Wi-Fi.
---
## Features
* Control appliances (e.g., lights, fan, AC) using mobile
* Monitor temperature, humidity, and motion
* User authentication with persistent login
* Real-time updates using Server-Sent Events (SSE)
* Local and cloud-based control
---
## Communication
The ESP32 communicates with the backend using:
* **HTTP (REST API)**: for commands and status updates
* **Server-Sent Events (SSE)**: for real-time updates to the frontend
* **Wi-Fi**: primary communication medium
---
### Hardware:
* ESP32
* Relay Module
* DHT11 or DHT22 (Temperature & Humidity Sensor)
* PIR Motion Sensor
### Software:
* Arduino IDE (ESP32 core)
* Node.js/Express backend
* Firebase Auth (with `@react-native-firebase/auth`)
* AsyncStorage for token persistence in Expo React Native
## Authentication
Implemented using Firebase Auth:
* Email/password login
* Persistent login via `AsyncStorage`