Template to implement webthings at Espressif ESP32 boards by ESP-IDF framework
Web of things (WoT) is subset of IoT, where the communication is limited to web technologies, WoT is giving connected devices URLs on the World Wide Web.
- VScode (to coding)
- Platformio (to compile and upload the code to ESP32 board)
- Postman (To test, send requestes to the device, and prototyping the project)
If you build & upload directly the current project you will get wifi access point in your esp32 board, with name: Walid Amriou WebThings device and password 123456789, but if you want to use this template to build your one sensor or device that connect to wifi so use wifi lib from this project: https://github.com/walidamriou/WalidAmriou_ESP_IoT
REST API links
For current implementation, the {ip} is 192.168.4.1
{ip}/walidamriou/about
{ip}/walidamriou/CurrentStatus
{ip}/walidamriou/config
* GET {ip}/walidamriou/about
When you send request to {ip}/walidamriou/about you will get a reponse with the information about the device:
- The Name of the device: Walid Amriou Device
- Developer: Walid Amriou
- Firmware version: 1.0.0
- Chip: Espressif Systems ESP32 PICO (4M)
* GET {ip}/walidamriou/data
When you send request to {ip}/walidamriou/data , you will get a reponse with the information about the current data status :
- Data1: Data
- Data2: Data
- Data3: 5646848
- Data4: 563.23
* POST {ip}/walidamriou/config
When you send request to {ip}/walidamriou/CurrentStatus , you will change the configuration of the system
I have used JSON structure for all the structure of information and configuration
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
You are free to:
- Share copy and redistribute the material in any medium or format
Under the following terms:
-
Attribution You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
-
NonCommercial You may not use the material for commercial purposes.
-
NoDerivatives If you remix, transform, or build upon the material, you may not distribute the modified material.
-
No additional restrictions You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits.
the software or Code or Scripts or any files in this source is provided "as is" and the author disclaims all warranties with regard to this files including all implied warranties of merchantability and fitness. in no event shall the author be liable for any special, direct, indirect, or consequential damages or any damages whatsoever resulting from loss of use, data or profits, whether in an action of contract, negligence or other tortious action, arising out of or in connection with the use or performance of this software or code or scripts or any files in this source.