christianTF/LoxBerry-Plugin-squeezelite

Sq2Lox / Gpio

PeterBazala opened this issue · 3 comments

Wie im Forum beschrieben (kopiere es jetzt so rein)

GPIOS integrieren die schalten wenn ein Player ein oder aus ist

hier der Code (in der sq2lox.php datei) Ausgang ist GPIO 17 Pin 11

if ($power == "1") {
shell_exec(" gpio mode 0 out");
shell_exec("gpio write 0 1");
echo ("Amp ist Ein");
}

if ($power == "0") {
shell_exec(" gpio mode 0 out");
shell_exec("gpio write 0 0");
echo ("Amp ist Aus");
}

in /etc/sudoer.d eine Datei anlegen mit folgendem Inhalt
%loxberry ALL = NOPASSWD: /usr/local/bin/gpio

Wiringpi laut Anleitung installieren http://www.raspberrypi-tutorials.de/...tallieren.html

Ev. könnte Christian Fenzl das noch in das Plugin integrieren?

mit Auswahl (hackerl) im Webinterface ob man das möchte, Ich denke die 2oder 3 gpio Nummern könnte man fix vorgeben, würde es auch bei weiteren Projekten (Plugins) erleichtern die ev. auch gpios benötigen (1-Wire, I²C, etc..)

Wie schwierig wäre es mit GPIO Eingängen den Player zu steuern Ein/Aus Play/Stop Volume (zumindest für den 1 Player, ev über die vielleicht noch kommende Alsa Integration im Hauptsystem) ?

Hallo Peter,

ich werde deinen Vorschlag mit den GPIOs aufgreifen und in eine Version 0.3.x-UNSTABLE einbauen (aber nicht gleich in den ersten Beta-Versionen).

In der 0.3.1-UNSTABLE wird es das Pushen des LMS-Status an den Miniserver geben - besser und schneller als das Pulling von Sq2Lox, und vollständig in die Plugin-Konfiguration integriert. Der Code ist so gut wie fertig, aber noch nicht getestet (da wird's noch eine Welle von Fixes geben).

Hardwarenahe Dinge wie GPIO's, die auf der Kommandozeile recht einfach einzurichten sind, sind integriert im Plugin nicht so einfach wie man denkt. Das ganze muss flexibel ein- und ausschaltbar sein, darf nur auf einem Raspberry laufen (aber nicht beispielsweise in der x64-VM), darf auch keine andere Hardware behindern, wenn die Funktion nicht aktiv ist (beispielsweise darf ich WiringPi nicht installieren, wenn die Funktion nicht aktiv ist, weil dann Enocean Pi oder andere Hardwareaufsätze nicht mehr funktionieren könnten).

Ich werd mal sehen, wie tief ich das einbauen kann.

lg, Christian

Umgesetzt mit d3533bf

Wenn du testen möchtest, gib mir kurz Bescheid!

lg, Christian

GPIO's können direkt im UI konfiguriert werden und schalten entsprechend des Power-Status der Zone ein und aus.