Hallo Splitti!
Wie hast für die Jukebox4Kids installiert und welche Version? Mpd aka Mopidy sollte schon da sein, das verwirrt mich sehr.
Kannst ja mit dem Befehl top einfach mal die Prozesse ausgeben lassen...
Ich habe als Grund-OS Raspbian Strech genommen, dies Version 2018-03-13-raspbian-stretch.zip. (GitHub MiczFlor)
Installiert dann mittels one-line-code; ob dieser jetzt aus deinem Blog oder aus GitHub ist weiss ich gerade nicht mehr, aber ich denke das war am Ende eh der selbe?
Webinterface System Info:
Der Befehl top gibt folgendes aus:
pi@EmiliasBox:~ $ top
top - 11:11:54 up 1 min, 2 users, load average: 0.45, 0.14, 0.05
Tasks: 150 total, 3 running, 147 sleeping, 0 stopped, 0 zombie
%Cpu(s): 15.1 us, 4.1 sy, 0.0 ni, 80.7 id, 0.0 wa, 0.0 hi, 0.2 si, 0.0 st
KiB Mem : 949080 total, 628896 free, 131444 used, 188740 buff/cache
KiB Swap: 102396 total, 102396 free, 0 used. 746192 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
454 mopidy 20 0 384272 81980 35148 S 18.2 8.6 0:19.23 mopidy
363 root 20 0 18136 13016 7012 D 6.3 1.4 0:03.41 python3
2363 pi 20 0 8536 3392 2816 R 1.7 0.4 0:00.09 top
120 root 20 0 27012 4644 4208 S 0.7 0.5 0:01.19 systemd-journal
125 root 20 0 0 0 0 S 0.7 0.0 0:00.21 kworker/u8:2
401 root 20 0 70620 10776 5464 S 0.7 1.1 0:01.58 python3
87 root -51 0 0 0 0 S 0.3 0.0 0:00.18 irq/92-mmc1
320 root 20 0 23748 2648 2164 S 0.3 0.3 0:00.20 rsyslogd
366 root 20 0 12276 8244 5076 S 0.3 0.9 0:00.62 python3
398 root 20 0 5400 2904 2644 S 0.3 0.3 0:00.21 cleanshutd
753 www-data 20 0 119956 8088 5872 S 0.3 0.9 0:00.14 php-fpm7.0
758 www-data 20 0 9144 4792 3708 S 0.3 0.5 0:00.19 lighttpd
1391 www-data 20 0 119956 7428 5268 S 0.3 0.8 0:00.09 php-fpm7.0
1442 www-data 20 0 119956 7432 5272 R 0.3 0.8 0:00.10 php-fpm7.0
1 root 20 0 27184 6192 4900 S 0.0 0.7 0:02.09 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:00.01 ksoftirqd/0
4 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0
5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H
6 root 20 0 0 0 0 S 0.0 0.0 0:00.02 kworker/u8:0
7 root 20 0 0 0 0 R 0.0 0.0 0:00.10 rcu_sched
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh
9 root rt 0 0 0 0 S 0.0 0.0 0:00.06 migration/0
10 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 lru-add-drain
11 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cpuhp/0
12 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cpuhp/1
13 root rt 0 0 0 0 S 0.0 0.0 0:00.06 migration/1
14 root 20 0 0 0 0 S 0.0 0.0 0:00.02 ksoftirqd/1
15 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kworker/1:0
16 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/1:0H
17 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cpuhp/2
18 root rt 0 0 0 0 S 0.0 0.0 0:00.01 migration/2
19 root 20 0 0 0 0 S 0.0 0.0 0:00.01 ksoftirqd/2
20 root 20 0 0 0 0 S 0.0 0.0 0:00.34 kworker/2:0
21 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/2:0H
22 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cpuhp/3
23 root rt 0 0 0 0 S 0.0 0.0 0:00.06 migration/3
24 root 20 0 0 0 0 S 0.0 0.0 0:00.01 ksoftirqd/3
25 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kworker/3:0
26 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/3:0H
27 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kdevtmpfs
28 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 netns
29 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khungtaskd
30 root 20 0 0 0 0 S 0.0 0.0 0:00.00 oom_reaper
31 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 writeback
32 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kcompactd0
33 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 crypto
34 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 bioset
35 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kblockd
36 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 watchdogd
37 root 20 0 0 0 0 S 0.0 0.0 0:00.02 kworker/0:1
38 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 rpciod
39 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 xprtiod
40 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kswapd0
41 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 vmstat
pi@EmiliasBox:~ $
Display More
Mach mal ein restart von dem Prozess im laufenden Betrieb bitte
Sobald ich sudo service mpd restart mit Enter bestätigt habe hören die LEDs auf zu blinken und leuchten Dauerhaft, allerdings zeigt das Display dann die Noten an.. Der Player akzeptiert nach dem restart keine RFID-Karten mehr und lässt sich auch übers Webinterface nicht mehr steuern..
Hier hilft nur ein Neustart 
//EDIT:
Mit dem Befehl sudo service mpd stop hören die LEDs auf zu blinken, das Display zeigt alles normal an, die RFID-Karten funktionieren und das Webinterface funktioniert auch...
Jetzt versteh ich gar nichts mehr..
ich dachte das led.py-Skript schaut nach, ob der Prozess gestartet ist bzw. läuft und schaltet dann von blinken auf leuchten um?!
hier nochmal meine led.py:
#!/usr/bin/python3
import signal
import os
#import time
from time import sleep
import RPi.GPIO as GPIO
from subprocess import check_output
prev=5
play=6
next=22
volup=24
voldown=23
onoff=25 #neu onofftaster
def sigterm_handler(signal, frame):
GPIO.output(volup,GPIO.LOW)
sleep(0.1)
GPIO.output(voldown,GPIO.LOW)
sleep(0.1)
GPIO.output(next,GPIO.LOW)
sleep(0.1)
GPIO.output(play,GPIO.LOW)
sleep(0.1)
GPIO.output(prev,GPIO.LOW)
sleep(0.1) #neu onofftaster
GPIO.output(onoff,GPIO.LOW) #neu onofftaster
os._exit(0)
def GetShell():
process = check_output("/bin/ps -ef | grep mpd | grep -v grep | awk '{print $2}'", shell=True) #ORIGINAL ZEILE
process = process.decode()
return process
signal.signal(signal.SIGTERM, sigterm_handler)
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
GPIO.setup(next,GPIO.OUT)
GPIO.setup(volup,GPIO.OUT)
GPIO.setup(voldown,GPIO.OUT)
GPIO.setup(prev,GPIO.OUT)
GPIO.setup(play,GPIO.OUT)
GPIO.setup(onoff,GPIO.OUT) #neu onofftaster
process=""
pos = 1
while process == "":
print( process )
if pos == 1:
GPIO.output(prev,GPIO.HIGH)
elif pos == 2:
GPIO.output(next,GPIO.HIGH)
elif pos == 3:
GPIO.output(play,GPIO.HIGH)
elif pos == 4: #neu onofftaster
GPIO.output(onoff,GPIO.HIGH) #neu onofftaster
elif pos == 5:
GPIO.output(voldown,GPIO.HIGH)
elif pos == 6:
GPIO.output(volup,GPIO.HIGH)
process=GetShell()
elif pos == 7:
GPIO.output(prev,GPIO.LOW)
elif pos == 8:
GPIO.output(next,GPIO.LOW)
elif pos == 9:
GPIO.output(play,GPIO.LOW)
elif pos == 10: #neu onofftaster
GPIO.output(onoff,GPIO.LOW) #neu onofftaster
elif pos == 11:
GPIO.output(voldown,GPIO.LOW)
elif pos == 12:
GPIO.output(volup,GPIO.LOW)
pos = 0
pos += 1
sleep(0.2) #Original war: sleep(0.05)
dummy = ""
while dummy == "":
dummy = ""
sleep(3600) #Original 3600
Display More