diff --git a/kiln/Adafruit_alphanumeric.py b/kiln/Adafruit_alphanumeric.py index 2b3a4df..c9a1118 100644 --- a/kiln/Adafruit_alphanumeric.py +++ b/kiln/Adafruit_alphanumeric.py @@ -161,7 +161,7 @@ class Alphanumeric(object): "Sets a single decimal or hexademical value (0..9 and A..F)" if (charNumber > 4): return - if value in special: + if value in self.special: value = self.special[value] else: value = self.lut[ord(value)] @@ -169,7 +169,7 @@ class Alphanumeric(object): self.disp.setBufferRow(charNumber, value | (dot << 14)) -class AlphaScoller(threading.Thread): +class AlphaScroller(threading.Thread): def __init__(self, address=0x70, interval=.25): self.interval = interval self.disp = Alphanumeric(address) @@ -191,5 +191,5 @@ class AlphaScoller(threading.Thread): for i in range(4): char = self.value[(self.counter+i) % len(self.value)] self.disp.writeChar(i, char) - time.sleep(interval) + time.sleep(self.interval) self.counter += 1 diff --git a/kiln/thermo.py b/kiln/thermo.py index 4dd664c..82c961b 100644 --- a/kiln/thermo.py +++ b/kiln/thermo.py @@ -1,4 +1,5 @@ import time +import re import threading import datetime from collections import deque @@ -22,6 +23,8 @@ class Monitor(threading.Thread): from Adafruit_alphanumeric import AlphaScroller self.display = AlphaScroller(interval=.4) self.display.start() + super(Monitor, self).__init__() + self.daemon = True def _read_temp(self): with open(self.device, 'r') as f: @@ -44,7 +47,7 @@ class Monitor(threading.Thread): while True: temp = self._read_temp() fahr = temp * 9. / 5. + 32. - now = datetime.datetime() + now = datetime.datetime.now() self.history.append((now, temp)) text = list('%0.0f'%temp) + ['degree'] + list('C %0.0f'%fahr)+['degree'] + list("F") @@ -53,3 +56,8 @@ class Monitor(threading.Thread): text += [' ', ' ', 'cone']+list("%0.1f"%temp_to_cone(temp)) text += ' ' self.display.text = text + +if __name__ == "__main__": + mon = Monitor() + mon.start() + mon.join()