Difference: SolutionsToTheNopI2CBusAndTheSHT30TemperatureAndHumiditySensor (3 vs. 4)

Revision 42020-05-24 - UliRaich

Line: 1 to 1
 
META TOPICPARENT name="Solutions"

Solutions to Exercise 4: The I2C Bus and the SHT30 Temperature and Humidity Sensor

Added:
>
>

Exercise 1:

After initializing of the I2C bus with

from machine import Pin,I2C

i2c = (id=-1,scl=Pin(22),sda=Pin(21))

where the id parameter defines the I2C bus:

  • 1 in case of the hardware interface for bus 1
  • -1 in case you use a software interface with bit banging (you may skip this parameter as it is -1 by default)
you can scan the I2C bus with

devices = i2c.scan()

This will return a Python list with the addresses of all connected devices. The rest of the program is a question of print formatting.

 

Exercise 2:

This is an extremely relevant exercise because it shows typical work that must be done during an IoT project. Often code from other authors can be found on the Internet (e.g. github) but often you find problems with this. Maybe it is

  • outdated and must be adapted to a newer system version
  • there are still bugs in the code
  • it was written for hardware slightly different from the one you want to use
Changed:
<
<
Still, starting from something that has worked before or worked on a different hardware is often (not always!) easier than starting from scratch. And reading code written be experienced programmers may help you to improve your own coding skills.
>
>
Still, starting from something that has worked before or worked on a different hardware is often (not always!) easier than starting from scratch. And reading code written by experienced programmers may help you to improve your own coding skills.
 

A quick try

After having uploaded mysht30.py I simply copy the first example to a Python script and modify the import statement:

Line: 65 to 81
 Now that we know how to read and write the SHT30 using the ESP32 I2C driver, we can make the necessary corrections in the SHT30 class. After the change all the code snippets in the README.md file should work.

Improving the SHT30 class

Added:
>
>
First I made a table with all functions the SHT30 offers and their command codes. I also checked which functions are implemented in the above SHT30 driver. See SHT30NopI2CTemperatureAndHumiditySensor for details about the development of the driver.
 -- Uli Raich - 2020-05-18

Comments

 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback