-#!/usr/bin/env python
+#!/usr/bin/env python3
import time
from bme280 import BME280
-from subprocess import PIPE, Popen
try:
from smbus2 import SMBus
# Get the temperature of the CPU for compensation
def get_cpu_temperature():
- process = Popen(['vcgencmd', 'measure_temp'], stdout=PIPE, universal_newlines=True)
- 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
-factor = 0.8
+factor = 2.25
cpu_temps = [get_cpu_temperature()] * 5