Code:
def __init__(self,serial=-1):
try:
self.interfaceKit = InterfaceKit()
self.interfaceKit.setOnAttachHandler(self.interfaceKitAttached)
self.interfaceKit.setOnDetachHandler(self.interfaceKitDetached)
self.interfaceKit.setOnErrorhandler(self.interfaceKitError)
self.interfaceKit.setOnInputChangeHandler(self.interfaceKitInputChanged)
self.interfaceKit.setOnOutputChangeHandler(self.interfaceKitOutputChanged)
self.getSwitchHandle(serial)
self.interfaceKit.enableLogging(PhidgetLogLevel.PHIDGET_LOG_VERBOSE,"log.txt")
except PhidgetException as e:
if (e.code == 12 or e.code == 13 or e.code==5) and serial != -1 :
self.getSwitchHandle(-1) #find any PhidgetSwitch
else:
print("Phidget Exception %i: %s" % (e.code, e.details))
raise PhidgetException(e.code)
def interfaceKitAttached(self, event):
attached = event.device
print("-InterfaceKit %i Attached!" % (attached.getSerialNum()))
def interfaceKitDetached(self, event):
detached = event.device
print("-InterfaceKit %i Detached!" % (detached.getSerialNum()))
def interfaceKitError(self, event):
source = event.device
print("-InterfaceKit %i: Phidget Error %i: %s" % (source.getSerialNum(), event.eCode, event.description))
def interfaceKitInputChanged(self, event):
source = event.device
print("-InterfaceKit %i: Input %i: %s" % (source.getSerialNum(), event.index, event.state))
self.getInput();