Skip to content

Commit 34bff7a

Browse files
author
BiffoBear
committed
Simplified pin init prior to adding support for Raspi pins.
1 parent 0663429 commit 34bff7a

File tree

1 file changed

+10
-11
lines changed

1 file changed

+10
-11
lines changed

adafruit_rgbled.py

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -100,16 +100,15 @@ def __init__(
100100
True if the RGB LED is common anode. Defaults to False.
101101
"""
102102
self._rgb_led_pins = [red_pin, green_pin, blue_pin]
103-
for i in range( # pylint: disable=consider-using-enumerate
104-
len(self._rgb_led_pins)
105-
):
106-
if hasattr(self._rgb_led_pins[i], "frequency"):
107-
self._rgb_led_pins[i].duty_cycle = 0
108-
elif str(type(self._rgb_led_pins[i])) == "<class 'Pin'>":
109-
self._rgb_led_pins[i] = PWMOut(self._rgb_led_pins[i])
110-
self._rgb_led_pins[i].duty_cycle = 0
111-
else:
112-
raise TypeError("Must provide a pin, PWMOut, or PWMChannel.")
103+
for pin in self._rgb_led_pins:
104+
try:
105+
if str(type(pin)) == "<class 'Pin'>":
106+
pin = PWMOut(pin)
107+
pin.duty_cycle = 0
108+
except AttributeError as exc:
109+
raise TypeError(
110+
"Pins must be of type Pin, PWMOut or PWMChannel"
111+
) from exc
113112
self._invert_pwm = invert_pwm
114113
self._current_color = (0, 0, 0)
115114
self.color = self._current_color
@@ -149,7 +148,7 @@ def color(self, value: Union[int, tuple]):
149148
raise ValueError("Only bits 0->23 valid for integer input") from exc
150149
elif isinstance(value, tuple):
151150
try:
152-
rgb = bytes(value) # Check that tuple has 3 integers of 0 - 255.
151+
rgb = bytes(value) # Check that tuple has integers of 0 - 255.
153152
if len(rgb) != 3:
154153
raise ValueError
155154
except (ValueError, TypeError) as exc:

0 commit comments

Comments
 (0)