1
0
mirror of https://github.com/cmur2/python-bme680.git synced 2024-11-14 18:56:19 +01:00
python-bme680/livetest.py

56 lines
1.5 KiB
Python
Raw Normal View History

2017-10-16 15:47:44 +02:00
import bme680
2017-10-17 11:55:05 +02:00
import time
2017-10-16 15:47:44 +02:00
sensor = bme680.BME680()
print("Calibration data:")
2017-10-16 15:47:44 +02:00
for name in dir(sensor.calibration_data):
if not name.startswith('_'):
value = getattr(sensor.calibration_data, name)
if isinstance(value, int):
print("{}: {}".format(name, value))
sensor.set_humidity_oversample(bme680.OS_2X)
sensor.set_pressure_oversample(bme680.OS_4X)
sensor.set_temperature_oversample(bme680.OS_8X)
sensor.set_filter(bme680.FILTER_SIZE_3)
sensor.set_gas_status(bme680.ENABLE_GAS_MEAS)
print("\n\nInitial reading:")
2017-10-16 15:47:44 +02:00
for name in dir(sensor.data):
value = getattr(sensor.data, name)
2017-10-17 11:55:05 +02:00
if not name.startswith('_'):
print("{}: {}".format(name, value))
2017-10-16 15:47:44 +02:00
sensor.set_gas_heater_temperature(320)
sensor.set_gas_heater_duration(150)
2017-10-17 13:28:06 +02:00
sensor.select_gas_heater_profile(0)
# Up to 10 heater profiles can be configured, each
# with their own temperature and duration.
# sensor.set_gas_heater_profile(200, 150, nb_profile=1)
# sensor.select_gas_heater_profile(1)
2017-10-16 15:47:44 +02:00
sensor.set_power_mode(bme680.FORCED_MODE)
print("\n\nPolling:")
2017-10-16 15:47:44 +02:00
try:
while True:
if sensor.get_sensor_data():
output = "{0:.2f} degC {1:.2f} hPa {2:.3f} %rH".format(sensor.data.temperature, sensor.data.pressure, sensor.data.humidity)
if sensor.data.heat_stable:
print("{0} {1} ohms".format(output, sensor.data.gas_resistance))
else:
print(output)
2017-10-16 15:47:44 +02:00
sensor.set_power_mode(bme680.FORCED_MODE)
2017-10-17 11:47:31 +02:00
2017-10-17 11:55:05 +02:00
time.sleep(1)
2017-10-16 15:47:44 +02:00
except KeyboardInterrupt:
pass