X-Git-Url: https://zdv2.bktei.com/gitweb/EVA-2020-02-2.git/blobdiff_plain/a36c0e8d8d94eae0353e5bff14ac837e17139671..6d6d3dd296978d367df80193a9fc842cd79a662d:/examples/all-in-one.py diff --git a/examples/all-in-one.py b/examples/all-in-one.py index 85a9a15..c0423e6 100755 --- a/examples/all-in-one.py +++ b/examples/all-in-one.py @@ -1,11 +1,16 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 import time import colorsys import os import sys import ST7735 -import ltr559 +try: + # Transitional fix for breaking change in LTR559 + from ltr559 import LTR559 + ltr559 = LTR559() +except ImportError: + import ltr559 from bme280 import BME280 from pms5003 import PMS5003, ReadTimeoutError as pmsReadTimeoutError @@ -14,6 +19,7 @@ from subprocess import PIPE, Popen from PIL import Image from PIL import ImageDraw from PIL import ImageFont +from fonts.ttf import RobotoMedium as UserFont import logging logging.basicConfig( @@ -52,8 +58,8 @@ HEIGHT = st7735.height # Set up canvas and font img = Image.new('RGB', (WIDTH, HEIGHT), color=(0, 0, 0)) draw = ImageDraw.Draw(img) -path = os.path.dirname(os.path.realpath(__file__)) -font = ImageFont.truetype(path + "/fonts/Asap/Asap-Bold.ttf", 20) +font_size = 20 +font = ImageFont.truetype(UserFont, font_size) message = "" @@ -97,12 +103,12 @@ def get_cpu_temperature(): # 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 delay = 0.5 # Debounce the proximity tap -mode = 0 # The starting mode +mode = 0 # The starting mode last_page = 0 light = 1 @@ -194,9 +200,9 @@ try: try: data = pms5003.read() except pmsReadTimeoutError: - pass + logging.warn("Failed to read PMS5003") else: - data = data.pm_ug_per_m3(1.0) + data = float(data.pm_ug_per_m3(1.0)) display_text(variables[mode], data, unit) if mode == 8: @@ -205,9 +211,9 @@ try: try: data = pms5003.read() except pmsReadTimeoutError: - pass + logging.warn("Failed to read PMS5003") else: - data = data.pm_ug_per_m3(2.5) + data = float(data.pm_ug_per_m3(2.5)) display_text(variables[mode], data, unit) if mode == 9: @@ -216,9 +222,9 @@ try: try: data = pms5003.read() except pmsReadTimeoutError: - pass + logging.warn("Failed to read PMS5003") else: - data = data.pm_ug_per_m3(10) + data = float(data.pm_ug_per_m3(10)) display_text(variables[mode], data, unit) # Exit cleanly