diff --git a/Firmware/readme.md b/Firmware/readme.md index cc107b4..987a635 100644 --- a/Firmware/readme.md +++ b/Firmware/readme.md @@ -25,17 +25,17 @@ ## About The Code `NodeMCUStandalone.ino` -The Code revoles around the WiFi capabalities of the `ESP8266 module`. +The Code revolves around the WiFi capabilities of the `ESP8266 module`. The module serves as a client and `POST`s data to a backend server. Data is gathered from the following Sensors: -- BMP280 - Atmospheric Pressure, Temperature and Altitide -- MAX30100 - Heart Rate (**Note:** This reading is not currently used for any computation - couldn't be implemented due to tiem constraints) +- BMP280 - Atmospheric Pressure, Temperature and Altitude +- MAX30100 - Heart Rate (**Note:** This reading is not currently used for any computation - couldn't be implemented due to time constraints) - Soil Moisture Sensor - A value corresponding to soil moisture -The interaction between ESP8266, BMP280 and MAX30100 is facilitated by `I2C communication` protocol which also provies a scope for further expansion in the diversity and number of sensor interactions +The interaction between ESP8266, BMP280, and MAX30100 is facilitated by the `I2C communication` protocol which also provides a scope for further expansion in the diversity and number of sensor interactions -The code also features a control logic for the 16x2 LDC display which provides the user with the values being transmitted to the backend server and also other useful data +The code also features a control logic for the 16x2 LDC display which provides the user with the values being transmitted to the backend server and other useful data ### Built With The following components and technologies were used: - ESP8266 module @@ -45,9 +45,10 @@ The following components and technologies were used: - I2C communicaiton Protocol ### Schematic +![NodeMCU drawio](https://github.com/marcdhi/harveeco/assets/95867745/05eb248f-58e3-4cce-93ff-5b6b4d1b5f3d) ## Getting Started -### Prerequesites +### Prerequisites - [Arduino IDE](https://www.arduino.cc/en/software) - [ESP8266 board manager](https://arduino.esp8266.com/stable/package_esp8266com_index.json) @@ -61,7 +62,7 @@ The following components and technologies were used: const char* ssid = ""; const char* password = ""; ``` -- Add the endpoints as required, the current implementation supprots **http** only +- Add the endpoints as required, the current implementation supports **HTTP** only ```cpp // Endpoints const char* serverName = "http:///"; @@ -70,9 +71,9 @@ The following components and technologies were used: ```cpp int updateInterval = 10000; //10 secs ``` -- Select the appropriate COMM Port and Device, the code can be flashed then +- Select the appropriate COMM Port and Device, then the code can be flashed -## Further Developement Plans +## Further Development Plans - Due to the time constraint certain parameters have been hardcoded. A keypad input can be taken to initialize these values -- In continuation with the above point threasholds can also be customised either via physical inputs or via a web interface -- `10Bit I2C addressing` allows for upto `1024 devices` on the same I2C line. This opens up for swarm implementations and physically destributed implementations. +- In continuation with the above point thresholds can also be customised either via physical inputs or via a web interface +- `10Bit I2C addressing` allows for upto `1024 devices` on the same I2C line. This opens up swarm implementations and physically distributed implementations.