Hallo,
Ich bin gerade dabei das jukebox4kids projekt für meine Tochter zu Weihnachten zu bauen. Kurz vor der Zielgeraden bin ich noch auf ein Problem gestoßen:
Ich nutze mehrere Threads u.a.
Ein Thread der auf einem Display Tracknummer, Spieldauer etc. Anzeigt. Dazu ruft ein Thread sekündlich ein os.popen Befehl aus, lässt sich von xmms2 die Werte geben und gibt diese ans Display.
Ein weiterer Thread überwacht den rfid Kartenleser auf neue Eingaben. Der Kartenleser agiert wie eine usb Tastatur und wird daher über rawinput eingelesen. Getrennt voneinander laufen beide Funktionen super nur parallel nicht.
Das Python Programm wird automatisch über bashrc gestartet. Die Display Steuerung bekommt keine Werte von xmms2, bzw.wenn ich das Programm mit & im Hintergrund starte geht das Display aber die Eingabe des Kartenlesers wird nicht ausgewertet.
Seltsamerweise funktionieren os.system Befehle über die ich Start/Stop/weiter realisiere.
Irgendwie scheint das os.popen und rawinput sich gegenseitig die Shell zu blocken. Kann ich irgendwie 2 verschiedene Shells nutzen? Andere Ideen?
Vielen Dank und frohe Weihnachten
Simon