SmartSocket
This repo contains
- Backend
- Firmware
- Detailed instructions
These instructions will get you a copy of the project up and running on your system.
Things you need to install the FW.
- Arduino IDE
A step by step series that tell you how to get the Firmware and Backend running
You should have Arduino IDE Installed
-
Add ESP32 Board to your Arduino IDE
-
In your Arduino IDE, go to File> Preferences Installing ESP32 Add-on in Arduino IDE Windows, Mac OS X, Linux open preferences
-
Enter
https://dl.espressif.com/dl/package_esp32_index.json
into the “Additional Board Manager URLs” field then, click the “OK” button: Note: if you already have the ESP32 boards URL, you can separate the URLs with a comma(each board will go to neaw line) as follows:https://dl.espressif.com/dl/package_esp32_index.json,\n http://arduino.esp8266.com/stable/package_esp8266com_index.json
-
Open the Boards Manager. Go to Tools > Board > Boards Manager…
-
Search for ESP32 and press install button for the ESP32 by Espressif Systems“:
-
That’s it. It should be installed after a few seconds.
-
In your Arduino sketchbook directory, create tools directory if it doesn't exist yet.
-
Unpack the tool into tools directory(present in libs/ESP32FS-1.0.zip) (the path will look like <home_dir>/Arduino/tools/ESP32FS/tool/esp32fs.jar).
-
Close and re-open the Arduino IDE.
-
Now copy the contents of the libs folder to the libraries directory of your Arduino
- If you are using windows, the libraries directory will be Documents/Arduino/libraries
- Select ESP32 Dev Module from Tools->Board->ESP32
- Select the correct port from Tools->Port
- Then open FSP32_FW.ino file from Firmware/FreqMonitor/ESP32_FW folder.
- Select Tools > ESP32 Sketch Data Upload menu item. This should start uploading the files into ESP32 flash file system.
- Now Upload the Code to your ESP32 Dev Module.
- Your ESP32 is now ready to be used.
Follow the pinout diagram given below to connect different components to your ESP32 LILYGO®TTGO T-PCIE Module board.
Here's the complete circuit diagram of the system.
Other components pin connection details
Different Components connected to Arduino Pro Mini for Frequency Measurements
Arduino Pro Mini Connected with ESP32
Relay | ESP32 |
---|---|
CH1 |
12 |
DC+ |
5V |
DC- |
GND |
- CH1 pin is connected via Logic Level Shifter
LED Connected with ESP32
LED Pins | ESP32 |
---|---|
Pin 1(Long Pin) |
36 |
Pin 2 |
GND |
WebApp can be accessed from the link below
TO BE ADDED
Data published from the device would be in the JSON format given below:
{
"macAddress": "",
"Name": "",
"Address": "",
"RSSI": ""
}
MQTT Topic Details
- As seen from ESP32
Topic | Type | Details |
---|---|---|
SmartSocket/device/data |
PUBLISH |
Publishes the socket state string |
- The WebApp is developed using NodeJS, ReactJS and MongoDB.
TO BE ADDED
You can access the database from the link below
TO BE ADDED
- Upload the code to your Arduino Pro Mini
- Upload the code to your ESP32
- Make the circuit
- Power on your ESP32, it will present you with an AP named
SmartEFM-abcd
(whileSmartEFM
can be changed in the portal andabcd
is a unique id for each esp32) - Default captive portal password
123456789AP
which can be changed in captive portal. - Connect to the ESP32 access point and open the web-browser and navigate to the link
http://esp32.local/_ac
. This link will work on most of the operating systems but if your operating system is not allowing to open it, you may want to check the captive portal IP Address from the serial monitor and can use that IP address inplace of the above mentioned URL. - The default access IP Address is
http://192.168.4.1/_ac
- You will be presented with a main dashboard as shown below(based on your device)
- You can connect to WiFi, from "Connect to WiFi" menu
- Once connected to a WiFi network, you can again access the captive portal using same URL or the IP Address from the Serial monitor.
- You can open settings page with following default credentials
- User: AP Name (SmartEFM)
- Password: admin
In settings page, you can configure your device. You can set network type (WiFi/GPRS) and you can set network APN details as well.
- Open the test dashboard to see the live data
TO BE ADDED
Following components are used to make this project
-
Microcontrollers
- ESP32 PCI-E with SIM7600(no eSim) https://de.aliexpress.com/item/4001142716386.html?gatewayAdapt=glo2deu
-
Power Circuit
-
Misc
- Arduino - Embedded Framework and IDE - For Sensor Node Design
- @Nauman3S - Development and Deployment