ESP8266 project to get data from multiple ESP devices and post the JSON to online cloud server

Job ID: 35844036

Budget: ₹1,500 – ₹12,500 INR

This project is based on ESP8285 microcontrollers and programming should be done in Visual Studio Code (PlatformIO)


Background:
This is supposed to be a monitoring system. It involves detecting sensor values at multiple locations (at least 25, with more to be added, on demand).
Each sensor location is connected to an ESP8285 wifi board on UART1 (soft serial).
All of the 25 individual wifi modules will connect to a central hub - which is another ESP8285 module.
This central hub will be connected to a cloud server through a broadband router. It will send the data of all the 25 sensors to the cloud server. The cloud server will also reply back some data which needs to be transmitted back to the 25 sensor modules. Based on this data, the individual 25 sensors will perform some action, like setting a GPIO high or low.



Tasks to be done:

1. All the 25 nodes should be starting their own Access Points, with SSIDs like "BSSUBMRL1", "BSSUBMRL2", "BSSUBMRL3".... passwords should be same as SSID.
AP ahould be started in hidden form, so as not to crowd AP list in user domain.


2. The central hub should do following things every 30 min interval:

a. Run a loop 25 times (no. of sensor nodes) and do next actions.
b. The central hub will disconnect from the broadband router
c. Central hub will connect to all the hotspots starting from 1.
Eg. BSSUBMRL1. BSSUBMRL2...
d. The connected hotspot will send its sensor value (float) and status (boolean) as a JSON message to the central hub (or any way you feel easy)
e. The central hub will disconnect the hotspot node and connect to the broadband router again.
f. Central hub will send the data collected for hotspot from previous step to the cloud server.
g. Cloud server will send response element "BRCON" with value as 1 or 0.
h. If value is 1, then disconnect broadband router again and connect to hotspot node.
i. Set GPIO on nodal ESP HIGH
k. Repeat for next BSSUBMRL...


Any questions, feel free to ask