def __init__(self, logger): LoggableClass.__init__(self, logger=logger) self.door_state = DOOR_NOT_MOVING self.shutdown = False self._needs_update = True self.last_input = time.time() self.condition = Condition() self.tft_state = True self.light_state_indoor = False self.light_state_outdoor = False self.slots = { (250, 40, 310, 85): self.doorUp, (250, 105, 310, 165): self.doorStop, (250, 185, 310, 230): self.doorDown, (0, 150, 115, 240): self.switchOutdoorLight, (116, 150, 230, 240): self.switchIndoorLight, (0, 50, 230, 100): self.switchDoorAutomatic, } self.setState({}) GPIO.setmode(GPIO.BCM) GPIO.setwarnings(False) self.tft = lib_tft24t.TFT24T(spidev.SpiDev(), GPIO, landscape=True) self.tft.initLCD(self.DC, self.RST, self.LED, switch_on=self.tft_state) self.tft.initTOUCH(self.TOUCH_IRQ) # TOUCH_IRQ = Pen! GPIO.add_event_detect(self.TOUCH_IRQ, GPIO.BOTH, callback=self.onTouchEvent, bouncetime=250) InstallStateChangeHandler(self, self.onStateChanged, self.shouldShutdown)
def setUpClass(cls): GPIO.setwarnings(False) board.Board.Load = _DummyLoad board.Board.Save = _DummySave