Temperature, Humidity and Pressure#
We are using in this example the Bosh BME280 sensor, an environment sensor measuring temperature, humidity and pressure. This example illustrates the difference that exists between running a program and deploying it as an app with a configuration file.
Running a THP program#
import gpio import serial.protocols.i2c as i2c import drivers.bme280 main: bus := i2c.Bus --sda=gpio.Pin 21 --scl=gpio.Pin 22 device := bus.device 0x77 bme := drivers.Bme280 device bme.on print "Temperature: $bme.read_temperature C" print "Humidity: $bme.read_humidity %" print "Pressure: $bme.read_pressure Pa" bme.off
Paste the program above in the Code tab of an online device and check the logged temperature, humidity and pressure in the Logs tab or in the Humio tab of the device.
Save the above toit program in a file named
thp.toit, and execute the command
toit run thp.toit to run the program on the device, and check the log in the CLI.
And remember, running a program means that it will be uninstalled from the device once the program is done running.
Deploying a THP app#
We can use this program to measure the temperature, the relative humidity and the atmospheric pressure once every hour by deploying it using the following app specification file:
# filename: tutorials/thplog.yaml # This job specification file runs the Hourly THP app on install and every hour after that. name: Hourly THP entrypoint: thplog.toit triggers: on_install: true on_interval: 1h
Deploy on your default device using the CLI with
toit deploy thp.yaml
The log will show the different measures every hour after the program was installed.
To uninstall an app, click on the Uninstall button.
To uninstall an app, run
toit device ps to get the list of installed apps. Then use the app ID in the
toit device uninstall <app_ID or app_name> command.