This commit is contained in:
John Pickup 2023-06-16 07:39:34 +01:00
parent 823ee67293
commit 39f0025b46

View File

@ -1,16 +1,17 @@
import threading,logging,json,time,datetime
from oven import Oven
from displayhatmini import DisplayHATMini
from PIL import Image, ImageDraw, ImageFont
log = logging.getLogger(__name__)
try:
from PIL import Image, ImageDraw, ImageFont
except ImportError:
print("""This requires PIL/Pillow, try:
sudo apt install python3-pil
""")
# display HAT setup
width = DisplayHATMini.WIDTH
height = DisplayHATMini.HEIGHT
buffer = Image.new("RGB", (width, height))
displayhatmini = DisplayHATMini(buffer)
displayhatmini.set_led(0.05, 0.05, 0.05)
draw = ImageDraw.Draw(buffer)
class OvenDisplay(threading.Thread):
def __init__(self,oven,ovenWatcher):
@ -21,13 +22,6 @@ class OvenDisplay(threading.Thread):
self.observers = []
threading.Thread.__init__(self)
self.daemon = True
# display HAT setup
self.width = DisplayHATMini.WIDTH
self.height = DisplayHATMini.HEIGHT
self.buffer = Image.new("RGB", (self.width, self.height))
self.draw = ImageDraw.Draw(self.buffer)
self.displayhatmini = DisplayHATMini(self.buffer)
self.displayhatmini.set_led(0.05, 0.05, 0.05)
# oven setup
self.oven = oven
self.ovenWatcher = ovenWatcher
@ -45,14 +39,13 @@ class OvenDisplay(threading.Thread):
def update_display(self, oven_state):
log.info(oven_state)
self.text(oven_state, (25, 25), 15, (255, 255, 255))
self.displayhatmini.display()
displayhatmini.display()
def send(self,oven_state):
self.update_display(oven_state)
def text(self, text, position, size, color):
fnt = ImageFont.load_default()
self.draw.text(position, text, font=fnt, fill=color)
draw.text(position, text, font=fnt, fill=color)