X-Git-Url: https://zdv2.bktei.com/gitweb/EVA-2020-02-2.git/blobdiff_plain/9d2c6929f610fafe4eb8000af813c95be78536d3..998bb2e90a2bab0ce43f92ee0988bfab3a29ea96:/examples/compensated-temperature.py diff --git a/examples/compensated-temperature.py b/examples/compensated-temperature.py index b572ad5..7d0d0f1 100755 --- a/examples/compensated-temperature.py +++ b/examples/compensated-temperature.py @@ -2,16 +2,16 @@ import time from bme280 import BME280 -from subprocess import PIPE, Popen try: from smbus2 import SMBus except ImportError: from smbus import SMBus -print("""compensated-temperature.py - Use the CPU temperature to compensate temperature -readings from the BME280 sensor. Method adapted from Initial State's Enviro pHAT -review: https://medium.com/@InitialState/tutorial-review-enviro-phat-for-raspberry-pi-4cd6d8c63441 +print("""compensated-temperature.py - Use the CPU temperature +to compensate temperature readings from the BME280 sensor. +Method adapted from Initial State's Enviro pHAT review: +https://medium.com/@InitialState/tutorial-review-enviro-phat-for-raspberry-pi-4cd6d8c63441 Press Ctrl+C to exit! @@ -20,11 +20,14 @@ Press Ctrl+C to exit! bus = SMBus(1) bme280 = BME280(i2c_dev=bus) + # Get the temperature of the CPU for compensation def get_cpu_temperature(): - process = Popen(['vcgencmd', 'measure_temp'], stdout=PIPE) - output, _error = process.communicate() - return float(output[output.index('=') + 1:output.rindex("'")]) + with open("/sys/class/thermal/thermal_zone0/temp", "r") as f: + temp = f.read() + temp = int(temp) / 1000.0 + return temp + # Tuning factor for compensation. Decrease this number to adjust the # temperature down, and increase to adjust up