kopia lustrzana https://github.com/jbruce12000/kiln-controller
next step on display
rodzic
8de864a5b3
commit
c4b5a94352
|
@ -1,7 +1,17 @@
|
|||
import threading,logging,json,time,datetime
|
||||
from oven import Oven
|
||||
from displayhatmini import DisplayHATMini
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
try:
|
||||
from PIL import Image, ImageDraw, ImageFont
|
||||
except ImportError:
|
||||
print("""This example requires PIL/Pillow, try:
|
||||
|
||||
sudo apt install python3-pil
|
||||
|
||||
""")
|
||||
|
||||
class OvenDisplay(threading.Thread):
|
||||
def __init__(self,oven,ovenWatcher):
|
||||
self.last_profile = None
|
||||
|
@ -11,6 +21,14 @@ 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", (width, height))
|
||||
self.draw = ImageDraw.Draw(buffer)
|
||||
self.displayhatmini = DisplayHATMini(buffer)
|
||||
self.displayhatmini.set_led(0.05, 0.05, 0.05)
|
||||
# oven setup
|
||||
self.oven = oven
|
||||
self.ovenWatcher = ovenWatcher
|
||||
ovenWatcher.add_observer(self)
|
||||
|
@ -26,10 +44,14 @@ class OvenDisplay(threading.Thread):
|
|||
|
||||
def update_display(self, oven_state):
|
||||
log.info(oven_state)
|
||||
self.text(oven_state, (25, 25), 15, (255, 255, 255))
|
||||
|
||||
|
||||
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)
|
||||
|
||||
|
Ładowanie…
Reference in New Issue