@@ -44,9 +44,12 @@ class Peripherals:
4444 def __init__ (self ):
4545 # Neopixels
4646 self .neopixels = neopixel .NeoPixel (board .NEOPIXEL , 4 , brightness = 0.3 )
47- self ._neopixel_disable = DigitalInOut (board .NEOPIXEL_POWER )
48- self ._neopixel_disable .direction = Direction .OUTPUT
49- self ._neopixel_disable .value = False
47+ try :
48+ self ._neopixel_disable = DigitalInOut (board .NEOPIXEL_POWER )
49+ self ._neopixel_disable .direction = Direction .OUTPUT
50+ self ._neopixel_disable .value = False
51+ except ValueError :
52+ self ._neopixel_disable = None
5053
5154 # Battery Voltage
5255 self ._batt_monitor = AnalogIn (board .BATTERY )
@@ -90,7 +93,8 @@ def play_tone(self, frequency, duration):
9093 def deinit (self ):
9194 """Call deinit on all resources to free them"""
9295 self .neopixels .deinit ()
93- self ._neopixel_disable .deinit ()
96+ if self ._neopixel_disable is not None :
97+ self ._neopixel_disable .deinit ()
9498 self ._speaker_enable .deinit ()
9599 for button in self .buttons :
96100 button .deinit ()
@@ -107,11 +111,14 @@ def neopixel_disable(self):
107111 """
108112 Enable or disable the neopixels for power savings
109113 """
110- return self ._neopixel_disable .value
114+ if self ._neopixel_disable is not None :
115+ return self ._neopixel_disable .value
116+ return False
111117
112118 @neopixel_disable .setter
113119 def neopixel_disable (self , value ):
114- self ._neopixel_disable .value = value
120+ if self ._neopixel_disable is not None :
121+ self ._neopixel_disable .value = value
115122
116123 @property
117124 def speaker_disable (self ):
0 commit comments