diff --git a/controller.py b/controller.py new file mode 100644 --- /dev/null +++ b/controller.py @@ -0,0 +1,43 @@ +### controller.py +### Author: Matthew Reed + +import sys +import time +import signal +import logging +import threading +import configparser +from enum import Enum + +from evdev import InputDevice, categorize, ecodes +import asyncio +from select import select + +class Controller: + + def __init__(self, config): + self.config = config + self.connect() + + def connect(self): + try: + self.dev = InputDevice('/dev/input/event0') + except FileNotFoundError: + self.dev = None + except PermissionError: + self.dev = None + + def read_input(self): + + if self.dev == None: + self.connect() + + events = [] + if self.dev != None: + try: + for event in self.dev.read(): + events.append(event) + except BlockingIOError: + pass + + return events \ No newline at end of file