Esp32 Temperature and Humidity Web Server Using PYTHON & Zerynth IDE

by KarimH2 in Circuits > Microcontrollers

2999 Views, 3 Favorites, 0 Comments

Esp32 Temperature and Humidity Web Server Using PYTHON & Zerynth IDE

Capture.PNG
ESP32-DevKitCBD.png
temp-hum-click-large_default-1.jpg
Capture2.PNG

Esp32 is a magnificent micro-controller, It is powerful just like an Arduino but even better!
It has Wifi connectivity, Enabling you to develop IOT projects cheaply and easily.

But Working with Esp devices is frustrating, First it is not stable, Second it is extremely difficult to develop your projects with the official SDK. Third it is a huge headache to find a suitable working library.

What if you could use all of the functionalities of the mico-controller while also code it in PYTHON.
Would it make a difference? of course, Python is powerful, easy to read and extremely easy to write.
Plus you don't have to worry about all of the low level stuff (pointers, registers and configuration files)
Also, You are using Zerynth stable system.
If you are not familiar with Zerynth yet, it is the next BIG THING!

It gives you all of the functionalities of the micro-controller with the easiness of Python and it is Free

Let me introduce to you the Esp32 Temperature and humidity web server written in Python.




Step 1 : Hardware Connection

Ny5pI.png
41633904_1407870892649676_9137819797306736640_n.jpg

The hts221 Temp and humidty sensor uses I2C connection, You have to connect the sensor to the appropriate pins in the ESp32

Node-MCU Esp32s Hts221 Sensor

3v3 pin --> 3.3v pin

GND pin --> GND pin
IO26 --> SCL pin

IO25 --> SDA pin

Step 2 : ESP32 Code

Zerynth_Studio_Update_Message.jpg
Capture.PNG
Capture2.PNG
  • Inside the application; Create a new account and vertualize your device.
    Use this guide to help you
    https://docs.zerynth.com/latest/official/core.zer...
  • Now Create a new project from main toolbar ; Project --> New -->Write a name for the project and save it.
  • Find the code Attached
  • Copy the code and Uplink ( upload to the uC)
  • Open serial monitor
  • Copy the Ip-address to your browser and open the web page !

    If you need help with the IDE : https://docs.zerynth.com/latest/index.html

Step3 : Code Sample !

Capture3.PNG

You can find the whole project attached!
This wanted to show you how easy it is:

from stm.hts221 import hts221

temp_hum = hts221.HTS221( I2C0,D16) #initiate i2C protocol with the sensor

temp, hum = temp_hum.get_temp_humidity() # get the current temp and humidty using the library !

--------------------------------------------------------------------------------------------------------------------

from espressif.esp32net import esp32wifi as wifi_driver #importing Esp32 Wifi driver

WifiAP_name = "WIFI AP Name"
Wifi_Pass = "Wifi Pass!"

wifi_driver.auto_init()

wifi.link(WifiAP_name,wifi.WIFI_WPA2,Wifi_Pass)
---------------------------------------------------------------------------------------------------------------------

It is that easy to use Zerynth IDE with python.