2 import RPi
.GPIO
as gpio
5 logger
= logging
.getLogger(__name__
)
6 loggerFileHandler
= logging
.FileHandler('glove.log')
7 loggerFileHandlerFormatter
= logging
.Formatter('%(asctime)s %(levelname)-8s %(message)s')
8 loggerFileHandler
.setFormatter(loggerFileHandlerFormatter
)
9 logger
.addHandler(loggerFileHandler
)
10 logger
.setLevel(logging
.WARNING
)
11 logger
.setLevel(logging
.INFO
)
13 gpio
.setmode(gpio
.BCM
)
14 pins
= [25, 24, 18, 22]
17 guitars
= ['sounds/guitar1.wav',
26 for pin
, wav
in zip(pins
, guitars
):
27 sounds
[pin
] = pygame
.mixer
.Sound(wav
)
29 def handle_sound(pin
):
30 if not gpio
.input(pin
):
32 logger
.info("Started playing {0}".format(pins
.index(pin
)))
35 logger
.info("Stopped playing {0}".format(pins
.index(pin
)))
38 gpio
.setup(pin
, gpio
.IN
)
39 gpio
.add_event_detect(pin
, gpio
.BOTH
, callback
=handle_sound
, bouncetime
=200)