Beiträge: 839
Themen: 2
Registriert seit: Aug 2015
Bewertung:
39
Geschlecht: Männlich
11.03.2018, 11:29
(Dieser Beitrag wurde zuletzt bearbeitet: 11.03.2018, 11:29 von Jack.)
Hm, ich bin mir nicht sicher ob ich das 100%ig verstehe. Aber ich vermute mal stark dass der Denkfehler darin besteht, dass du das Relais quasi als Tasterersatz verwendest. Nur im Gegensatz zu einem "echten" Taster ist das Relais ja dauerhaft geschlossen, liefert also ein dauerhaftes "High" (oder Low, je nachdem wie das konfiguriert ist) an den GPIO. Der Taster (Button) des Encoders kann da keine Statusänderung bewirken.
Davon abgesehen kann ich in deinem Pythonskript nicht herauslesen, wie der Play/Pausebefehl an Kodi gesendet wird. Mit "musikumschalten()" kann Kodi glaube ich nichts anfangen … Dass die Musik trotzdem anläuft bzw. stoppt ist wohl eher dem Umstand geschuldet, dass das Relais wie oben beschrieben beim Schließen/Öffnen den Encoder-Button "simuliert". Aber vom Skript kommt der Befehl, wenn ich das nicht ganz falsch verstanden habe, nicht!
Beiträge: 36
Themen: 5
Registriert seit: Jul 2017
Bewertung:
0
Geschlecht: Männlich
Nein, das ist kein taster ersatz. Das script ist so geschrieben, das wenn der kreis geschlossen ist, das bildschirmlicht an geht und wenn er unterbrochen ist, geht das bildschirmlicht aus.
Wie gesagt, das script selbst funktioniert ja wenn ich es manuell starte. Es geht nur nicht wenns im autostart liegt.
CarPi:
Raspberry Pi 2 + Hifiberry-Digi + 7" Display, SI470x und 2 Drehencoder
Car Mediacenter:
Raspberry Pi 3, Aktiver USB 3.0 Hub, DVD Laufwerk, Externe 3Tb Hdd, Touchpad, 22" Grundig TV
Beide Pi´s über Fitzbox 7270 als Repeater Verbunden
Beiträge: 839
Themen: 2
Registriert seit: Aug 2015
Bewertung:
39
Geschlecht: Männlich
Für die Displaybeleuchtung mag das ja passen. Aber das ändert nichts an der Tatsache, dass das Relais hier ein Schalter ist und kein Taster (den Unterschied muss ich dir wohl nicht erklären). D.h. der Pegel am GPIO10 (und durch die Brücke auch am GPIO5) ist dauerhaft auf High, da das Relais ja dauerhaft geschlossen ist. Eine Änderung ist erst wieder dann möglich, wenn das Relais aufmacht. Deswegen hat der Button am Encoder auch keine Funktion. Ein Druck auf den Button führt hier zu keiner Änderung am GPIO und wird deswegen schlichtweg nicht erkannt.
Und noch einmal: ich bin mir sicher, dass dein Skript in Bezug auf Play/Stop nicht funktioniert. Es ist in meinen Augen keine Funktion enthalten, die Kodi direkt anspricht. Dass es scheinbar trotzdem funktioniert liegt daran, dass durch das Schließen des Relais eben über den GPIO5 ein Event erzeugt wird, der vom Controller gemäß Konfiguration in der io_config verarbeitet wird. Der Befehl wird also vom Controller ausgeführt und nicht vom Skript. Kannst es ja mal testen und in der io_config den PlayPause-Befehl rausnehmen. Ich schätze mal dass Kodi dann stumm bleibt.
Mal davon abgesehen: dieses Thema hat jetzt mit dem eigentlichen Thread-Thema nichts mehr zu tun. Magst du nicht einen eigenen Thread dazu eröffnen? Vielleicht beteiligt sich dann doch noch jemand anderes daran.
Beiträge: 36
Themen: 5
Registriert seit: Jul 2017
Bewertung:
0
Geschlecht: Männlich
schau ma bitte in deine PN
zum thema: im script steht ja drin, das der gpio5 nur ein kurzes signal ausgibt (1 sekunde lang) wenn der kreis zwischen gpio23 und 24 geschlossen ist.
Das script prüft auch wenn sich der status zwischen 23-24 ändert, das heißt, wenn das signal von 23-24 unterbrochen ist, gibt der gpio5 wieder ein 1 sekunden singal an den gpio10 raus. Also kein dauersignal.
Kann diese 1sekunde schon zu lange sein?
und immernoch versteh ich nicht warum es beim manuellen start des scripts geht?
achja, der gpio10 ist im io_config mit xbmcbuiltin_PlayerControl(Play) belegt, heißt soviel wie das ich mit dem encoder (der taster) der an gpio10 hängt play/pause steuert.
Das script gibt einfach nur den impuls von 1 sekunden vom gpio5 aus, der gpio10 hat ja eh die aufgabe play/pause
ich hoffe man versteht was ich damit sagen will
CarPi:
Raspberry Pi 2 + Hifiberry-Digi + 7" Display, SI470x und 2 Drehencoder
Car Mediacenter:
Raspberry Pi 3, Aktiver USB 3.0 Hub, DVD Laufwerk, Externe 3Tb Hdd, Touchpad, 22" Grundig TV
Beide Pi´s über Fitzbox 7270 als Repeater Verbunden
Beiträge: 839
Themen: 2
Registriert seit: Aug 2015
Bewertung:
39
Geschlecht: Männlich
Ich blicke bei diesem Konstrukt ehrlich gesagt nicht mehr durch. Wieso sind nochmal GPIO5 und GPIO10 verbunden? Auch die Sache mit dem Relais auf GPIO23 und 24 ist mir etwas rätselhaft. Normal wird ein GPIO auf GND gezogen. Und dann noch der Umstand, dass das Relais wie schon mehrmals erwähnt dauerhaft geschlossen ist. Wie soll das Skript entscheiden, dass es bei Signal an GPIO24
Code: # Sobald Input-Signal vorhanden
else:
lichtan()
if musik == 0: # wenn musik aus ist anschalten
time.sleep(10)
musikumschalten()
nur einmal schalten soll, wenn das Signal praktisch dauerhaft anliegt? Ich schätze das läuft dann in einer Dauerschleife. Aber ich bin kein Programmierer und schon gar kein Python-Profi. Deshalb lasse ich es jetzt gut sein. Das ist mir einfach zu hoch!
Beiträge: 36
Themen: 5
Registriert seit: Jul 2017
Bewertung:
0
Geschlecht: Männlich
gpio23 gibt 3,3v aus und gpio24 ist der eingang. Das script ist so, wenn die 3,3v an gpio24 anliegen, schaltet es display ein und wenn keine spannung anliegt, schaltet es das display aus
am gpio10 hängt der pin sw vom drehencoder, das ist der taster und diesen hab ich mit Play/Pause belegt.
gpio5 gibt auch 3,3v aus für 1 sekunde wenn das script ne statusänderung des gpio24 erkennt.
ich geh aus dem gpio5 raus, durch ne diode auf den gpio10. Die Diode deshalb, weil der taster vom encoder auch auf dem gpio10 ist.
der gpio5 soll quasi nur den taster vom encoder simulieren.
CarPi:
Raspberry Pi 2 + Hifiberry-Digi + 7" Display, SI470x und 2 Drehencoder
Car Mediacenter:
Raspberry Pi 3, Aktiver USB 3.0 Hub, DVD Laufwerk, Externe 3Tb Hdd, Touchpad, 22" Grundig TV
Beide Pi´s über Fitzbox 7270 als Repeater Verbunden
Beiträge: 839
Themen: 2
Registriert seit: Aug 2015
Bewertung:
39
Geschlecht: Männlich
(11.03.2018, 22:43)Exitus schrieb: gpio23 gibt 3,3v aus und gpio24 ist der eingang. Das script ist so, wenn die 3,3v an gpio24 anliegen, schaltet es display ein und wenn keine spannung anliegt, schaltet es das display aus Das würde ich anders lösen – s. hier. Also die 3.3V nicht von einem GPIO sondern von einem dedizierten 3.3V Pin und dann das ganze gegen GND ziehen. Das ist die gängige Beschaltung von Tastern und "verbraucht" nebenbei auch nur einen GPIO.
(11.03.2018, 22:43)Exitus schrieb: am gpio10 hängt der pin sw vom drehencoder, das ist der taster und diesen hab ich mit Play/Pause belegt.
gpio5 gibt auch 3,3v aus für 1 sekunde wenn das script ne statusänderung des gpio24 erkennt.
ich geh aus dem gpio5 raus, durch ne diode auf den gpio10. Die Diode deshalb, weil der taster vom encoder auch auf dem gpio10 ist.
der gpio5 soll quasi nur den taster vom encoder simulieren.
Das kannst du dir sparen. Definiere einfach in der io_config einen weiteren Button auf GPIO5 mit der selben Funktion wie für den Encoder-Button. Dann können beide unabhängig voneinander fungieren, die Verbindung über Diode ist dann hinfällig. Ich denke der GPIO5 funkt dem GPIO10 dazwischen.
Installiere dir doch mal hawkeyexp's GPIO Diagnostic Addon. Dann siehst du, was auf deinen GPIOs vor sich geht. Ich vermute ja immer noch, dass durch das Dauersignal auf GPIO23 der GPIO5 in Dauerschleife sein Programm durchzieht und somit den Encoder-Button blockt.
Beiträge: 36
Themen: 5
Registriert seit: Jul 2017
Bewertung:
0
Geschlecht: Männlich
ok hab ne lösung gefunden.
ich darf den befehl NICHT unter /etc/rc.local speichern.
sondern muss ihn am ende von etc/profile hinzufügen.
jetzt geht alles und ich bin glücklich
trotzdem danke für die hilfe Jack
CarPi:
Raspberry Pi 2 + Hifiberry-Digi + 7" Display, SI470x und 2 Drehencoder
Car Mediacenter:
Raspberry Pi 3, Aktiver USB 3.0 Hub, DVD Laufwerk, Externe 3Tb Hdd, Touchpad, 22" Grundig TV
Beide Pi´s über Fitzbox 7270 als Repeater Verbunden
Beiträge: 1
Themen: 0
Registriert seit: May 2018
Bewertung:
0
Geschlecht: Männlich
my pi 3B ,waveshave 7" touch LCD,jessie installed and run as well.
"wget https://download.christian-brauweiler.de..._carpc.zip" can download OK
"unzip current_carpc.zip" OK
but "./install_carpc.sh" show me "no internet connect" but at same time I can visit any chinese web except google .com
how can I install the car pc?
BTW,I installed Andrei's carpc ,when I reboot,the system would die,I have not successed.why?
Beiträge: 839
Themen: 2
Registriert seit: Aug 2015
Bewertung:
39
Geschlecht: Männlich
@biglee_163
The installer checks the internet connection by pinging 'google.de'. If it doesn't receive an echo, it assumes that there's no internet connection. What you can do: open the install_carpc.sh in a code editor and either replace 'google.de' with any server address that is reachable. Or simply delete this part of the install script. It is right at the beginning of the script (lines 14 to 29).
|