Das der Befehl p.kill() nichts gebracht hat stimmt nicht. Er ist ueberhaupt nicht zur Ausfuehrung gekommen, weil das p schon gar nicht da ist. Und da bringt es erstaunlich wenig, einfach sinnlos weiter Argumente zu uebergeben. Wir sind hier nicht bei rate-mal-mit-Rosenthal.
Wo koennte denn das global hingehoeren, wenn du dir anschaust, wo es bei mir steht? Und vielleicht liest du dir auch einfach mal im Python-Tutorial etwas zu global durch, damit du verstehst, wozu es da ist.
Automatisch zusammengefügt:
georg das ist ganz grober Unfug. Du benutzt eine sleep-Anweisung in einem GUI - das geht in die Hose, weil die GUI dann einfriert. Ausserdem blinkt es dann nur genau ein mal - weil danach der Callback verlassen wird. bk2 ist also wertlos, und stop = 1 mal erst Recht - lokal irgendeine Variable zuzuweisen macht nicht magisch eine LED aus.
Womit du Recht hast ist, dass man das Problem eigentlich nicht ueber subprocess loesen wuerde. Nur das hat der TE halt schon.