bon..
ca avance.
je me suis dis que le code était peut être un peu trop brouillon.. du coup je suis parti sur un seul bouton, plus simple a mon avis pour commencer !
Code: Select all
#!/usr/bin/env python2.7
import RPi.GPIO as GPIO
import os
GPIO.setmode(GPIO.BCM)
# Le GPIO 23 est initialise en entree. Il est en pull-up pour eviter les faux signaux
GPIO.setup(23, GPIO.IN, pull_up_down=GPIO.PUD_UP)
print "Veuillez verifier que vous avez un bouton connecte de telle maniere"
print "qu il connecte le port GPIO 23 (pin 16) au GND (pin 6)\n"
#raw_input("Pressez Entree quand vous etes pret\n>")
print "En attente de signal sur le port GPIO 23"
# a partir de la, le script ne fera plus rien jusqu a ce que
# le signal sur le port 23 commence a chuter vers zero. C est
# la raison pour laquelle nous avons utilise le pull-up pour
# garder le signal "HIGH" et empecher un faux signal
print "Pendant ce temps votre Rapsberry Pi ne gaspille pas"
print "de ressources en attendant un appui sur le bouton.\n"
print "Pressez le bouton quand vous voulez lancer un signal."
while True:
try:
GPIO.wait_for_edge(23, GPIO.FALLING)
print "\nAppui detecte. Maintenant votre script va"
os.system("squeezeslave 127.0.0.1 -L")
except KeyboardInterrupt:
GPIO.cleanup() # reinitialisation GPIO lors d'une sortie CTRL+C
et la ca fonctionne, le programme ne quitte plus une fois le bouton cliqué
deux choses cependant, est il possible d'avoir une précision moindre sur le bouton (en fait en appuyant une fois, parfois je declenche deux actions..)
et l'autre chose plus importante, c'est que le bouton, est censé piloter squeezeslave...
j'ai jeter un oeil aux option, en tapant la commande :
Code: Select all
os.system("squeezeslave 127.0.0.1 -L")
ca me donne bien la liste de périphérique audio..
mais si je remplace par :
Code: Select all
os.system("squeezeslave 127.0.0.1 -D - P")
ca ne passe pas en pause..
faut dire, je ne suis pas sur de la syntaxe.. j'ai plus l'impression que cela ne fonctionne qu'au clavier, mais dans ce cas, comment piloter squeezeslave avec des boutons ?
http://wiki.slimdevices.com/index.php/S ... .28Unix.29