We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent acf60c7 commit 3fc9dc3Copy full SHA for 3fc9dc3
1 file changed
pi_pin_manager/pins.py
@@ -63,9 +63,17 @@ class MultiplePinWatcher(GPIOConfig, GPIOActions):
63
64
def __init__(self, config, event_handler):
65
super(MultiplePinWatcher, self).__init__(config=config, event_handler=event_handler)
66
+ self._validate_pin_config()
67
self._initialize_gpio()
68
self._initialize_pins()
69
70
+ def _validate_pin_config(self):
71
+ required_keys = ['mode', 'event', 'handler']
72
+ for _, v in self._pin_config:
73
+ if not set(required_keys) < set(v.keys()):
74
+ message = 'Pin config requires properties: {0}'.format(', '.join(required_keys))
75
+ raise PinConfigurationError(message)
76
+
77
def _initialize_pins(self):
78
for pin_num, pin_options in self._pin_config.items():
79
self._setup_pin(pin_num, pin_options)
0 commit comments