Diverse Fragen zu Client-Server-Lösung - Client Raspi mit MLD

  • Hallo zusammen,


    mit meinem Raspi habe ich mich die letzten Tage mal quer durch die "einschlägigen" Distributionen probiert (RaspBMC, Openelec, MLD). Bei MLD bin ich nun hängen geblieben.


    Der Raspi soll testweise als Client herhalten. Server ist nen normaler x86 mit yaVDR. Der stellt via NFS das Aufnahmeverzeichnis bereit, es läuft dort streamdev und alles, was für das Programmieren von Timern sowie der EPG-Bereitstellung für den Client erfolderlich ist. Der Server läuft nicht 24/7, sondern wird vom Client via WOL geweckt und dann werden Verzeichnis per NFS beim Client gemountet. Soweit die Ausgangslage.


    Für den Raspi ist MLD 4 (das Client-Image) installiert und es kommt dort ein Bild und Ton. Also auch alles im Lot, aber das Feintuning fehlt noch.


    Dazu folgende Fragen:


    1.) Fernbedienung
    - Mein Pana-Plasma kann mit Viera-Link CEC. Muss man da noch irgendwas auf dem Raspi installieren/konfigurieren, damit man das mit MLD nutzen könnte? Auf Anhieb hat es nicht funktioniert.
    - Alternative wäre an den Raspi-GPIO einen TSOP dranzuhängen. War da nicht das Problem, dass der dann nur RC5 empfangen kann oder habe ich das falsch in Erinnerung? Was und wo müsste fürs Funktionieren dieser Lösung gemacht werden (irgendwas im Webfrontend vermutlich, aber da steig ich noch nicht ganz durch)?


    2.) Shutdown und Aufwecken des Pi (idealerweise mit FB)?
    - Der Server soll nicht 24/7 laufen, sondern sich runterfahren, wenn der Raspi nicht mehr drauf zugreift. Reicht es da, wenn man beim Pi die Zeit eingibt, dass er sich nach XX Minuten, wenn kein FB-Befehl ankam runterfahren soll?
    - Wie weckt Ihr den Pi wieder auf? Stromkabel aus- und einstecken kann doch da nicht des Rätsels Lösung ein? Fährt der Pi aber nicht runter - also laufen darauf VDR und streamdev durch, fährt sich auch der Server nicht runter. Um den Pi-Stromverbrauch gehts mir nicht, wohl aber um den des Servers.


    3.) Aufnahmevereichnis beim Pi mounten
    - Wie bringt man dem Pi bei MLD bei, dass er vom Server die per NFS bereitgestellten Verzeichnisse VOR dem Start des VDR an die gewünschte Stelle (wo wird dort das Aufnahmeverzeichnis erwartet) mountet? MLD hat "automatisch" in der fstab vom Server /mnt/data beim Client /mnt/data eingebunden. Ist aber das falsche Verzeichnis. Wenn ich das gerade biege, legt MLD das dann wieder falsch an?


    4.) vorinstallierte Plugins beim MLD-Client-Image
    - Da sind für den Client-Betrieb epgsync, remoteosd, remotetimers, streamdev und svdrpservice vorinstalliert. Wenn streamdev läuft, wofür wird remoteosd benötigt?


    Fragen über Fragen. Ich hoffe, ich bekomme durch Eure Antworten ein wenig Licht ins Dunkel.


    Dafür schon mal vielen Dank!

  • - Wie weckt Ihr den Pi wieder auf?


    wie üblich, mittels Powertaste auf der IR-Fernbedienung oder dem Eintaster an der Front vom Gehäuse


    Zitat


    Stromkabel aus- und einstecken kann doch da nicht des Rätsels Lösung ein?


    nein, das kann uU schädlich für die SD Karte sein

  • wie üblich, mittels Powertaste auf der IR-Fernbedienung oder dem Eintaster an der Front vom Gehäuse



    nein, das kann uU schädlich für die SD Karte sein


    Welche Powertaste?
    Und warum sollte das Ausstecken schädlich für die SD sein wenn er heruntergefahren ist?
    Ist die einzige möglichkeit den Pi zu starten wenn er runter gefahren ist.


    Ich beende mit dem vdr shutdown script nur den Vdr.
    Und starte ihn dann wieder über ein script bei druck einer bestimmten taste.


    Mfg Thomas

    VDR:
    Hardware: Thermaltake DH102, Zotac ION ITX-F-E, 2Gig Ram, TechnoTrend
    dual DVB-S2 6400, TechnoTrend Connect CT-3650,


    Software: EasyVDR 1.0

  • Ist die einzige möglichkeit den Pi zu starten wenn er runter gefahren ist.



    nein, ist es nicht. P6 auf dem Board ist eine Reset Taste und eignet sich vorzüglich zum Starten des herunter gefahrenen RPI. Einfach auf die Taste drücken und der RPI bootet.


    Zitat

    Und warum sollte das Ausstecken schädlich für die SD sein wenn er heruntergefahren ist?


    nichts ist schädlicher für Flash Speicher wie Spannungsschwankungen im Zugriff.
    Wenn der RPI nicht sauber herunter gefahren ist (was ja durch aus passieren kann) und man dann die Spannung weg nimmt, kanns die Karte zerlegen. Das kann genauso gut bei SSDs passieren, aber sowas passiert beim PC ja auch nicht. Das ist auch der Grund, warum viele den P6 nachrüsten und danach keine Probleme mehr mit geschrotteten SD Karten mehr hatten.


    hier ein Link zum Nachrüsten des P6 --> http://raspi.tv/2012/making-a-…r-your-rev-2-raspberry-pi


    Damit ich nicht mit der Powertaste von der Fernbedienung beim Ausschalten einen Reset ausführe, werte ich mit dem Fernbedienungs-Microcontroller einen GPIO Pin aus, der mittels High Pegel den Laufzustand des VDR anzeigt.

  • Ist schon klar dass man viel nachrüsten kann. Aber meine empfehlung ist trotzdem den pi nicht runter fahren.
    Zum wecken wird dann auch wieder eine wakeup platiene benötigt und über cec gehts garnicht mehr.

    VDR:
    Hardware: Thermaltake DH102, Zotac ION ITX-F-E, 2Gig Ram, TechnoTrend
    dual DVB-S2 6400, TechnoTrend Connect CT-3650,


    Software: EasyVDR 1.0

  • warum sollte man den VDR nicht herunter fahren, wenn man ihn nicht braucht ??


    Den VDR kann man ja beenden aber der pi braucht doch nur 3W den lass ich immer laufen. Und kannso auch über keyboard remote den VDR beenden und starten.

    VDR:
    Hardware: Thermaltake DH102, Zotac ION ITX-F-E, 2Gig Ram, TechnoTrend
    dual DVB-S2 6400, TechnoTrend Connect CT-3650,


    Software: EasyVDR 1.0

  • OK,
    ich dachte, Du hättest einen nachvollziehbaren Grund, den RPI nicht runter zu fahren, wenn er nicht mehr gebraucht wird.


    Ist doch nachvollziehbar wenn ich den VDR mit der FB wieder starten will mit vorhandenen mitteln. :wand
    Kenn mich jetzt mit cec nicht aus aber wenns da einen Deamon unabhängig vom VDR gibt würde das starten beenden vom Vdr doch auch nur klappen wenn der Pi läuft. Und das ist sicher eine häufig verwendete Bedienung, da man keine zusätzliche Hardware benötigt.

    VDR:
    Hardware: Thermaltake DH102, Zotac ION ITX-F-E, 2Gig Ram, TechnoTrend
    dual DVB-S2 6400, TechnoTrend Connect CT-3650,


    Software: EasyVDR 1.0

  • Ist doch nachvollziehbar wenn ich den VDR mit der FB wieder starten will mit vorhandenen mitteln. :wand


    das mag ja für Dich in der Konsequenz so sein, kann doch aber generell keine Empfehlung sein, die Du oben aussprachst.
    Ein Pinheader kostet nur ein paar Cent und wer löten kann, für den ist das meiner Meinung nach die bessere Lösung. Wenn der Themenstarter einen TSOP an P1 hängen kann, sollte die P6 Nachrüstung auch keine unlösbare Aufgabe sein. Meine Meinung zu dem Thema.

  • Zitat

    Damit ich nicht mit der Powertaste von der Fernbedienung beim Ausschalten einen Reset ausführe, werte ich mit dem Fernbedienungs-Microcontroller einen GPIO Pin aus, der mittels High Pegel den Laufzustand des VDR anzeigt.


    Was ich ja nett finden würde, wäre ein Wakeup mit z.B. einen Microcontroller zu realisieren. :)

  • Was ich ja nett finden würde wäre ein Wakeup mit einem Microcontroller.


    ja, das mache ich so.
    Einschalten tue ich über den Wakeup Mikrocontroller, der einen Pegel auf einen Optokoppler gibt, der dann P6 brückt. Parallel da zu liegt der Fronteinschalter. Nur soll mir der Wakeup Controller keinen Reset ausführen, wenn ich die Powertaste auf der Fernbedienung beim runter fahren drücke. Daher habe ich da noch eine Zwangsläufigkeit gesetzt.

  • Argus
    Welchen Microcontroller hast du verwendet? (Attiny?) Magst dazu was posten? Vielleicht im neuen Fred? :)


    PS: mein erster PC war auch ein Z1013 :D (noch mit 700Mark von 16kB auf 64kB aufgerüstet (87)) ...

  • Argus vielen Dank für die Infos...

    Zitat

    ...kapere nicht wieder einen anderen Thread

    Sorry!

  • 2.) Shutdown und Aufwecken des Pi (idealerweise mit FB)?
    - Der Server soll nicht 24/7 laufen, sondern sich runterfahren, wenn der Raspi nicht mehr drauf zugreift. Reicht es da, wenn man beim Pi die Zeit eingibt, dass er sich nach XX Minuten, wenn kein FB-Befehl ankam runterfahren soll?


    Hey, hier gibt's ja ein paar richtig gute Tipps!. Also bzgl. des runterfahrens, ich habe 2 VDRs (VIA EPIA mit DVB-S/FF), die den Server per WOL wecken koennen. Wenn die VDRs aus sind (ausschalten oder 'Schlummerschaltung'), dann faehrt sich auch der Server nach xx Minuten selber runter (auf dem Server ist ein Script, das in der /etc/rc.local gestartet wird und die VDRs anpingt. Wenn Ping nix mehr liefert gehts in den shutdown).


    Das koenntest du ja genauso bei dir auch machen. Und dann den P6 oder einen uC um den Pi wieder zu starten klingt ja gar nicht so uebel. Ich bin gerade selber an einem Pi-Client mit MLD dran und wuerde das genau so implementieren (mein TV kann kein CEC).

  • Hi,


    na dann will ich jetzt mal Deine Fragen beantworten...

    1.) Fernbedienung
    - Mein Pana-Plasma kann mit Viera-Link CEC. Muss man da noch irgendwas auf dem Raspi installieren/konfigurieren, damit man das mit MLD nutzen könnte? Auf Anhieb hat es nicht funktioniert.
    - Alternative wäre an den Raspi-GPIO einen TSOP dranzuhängen. War da nicht das Problem, dass der dann nur RC5 empfangen kann oder habe ich das falsch in Erinnerung? Was und wo müsste fürs Funktionieren dieser Lösung gemacht werden (irgendwas im Webfrontend vermutlich, aber da steig ich noch nicht ganz durch)?

    cec funktioniert mit hilfe des libcec-daemon Paketes. Allerdings funktionieren bisher nur wenige Tasten. Den Grund dafür konnte ich noch nicht ermitteln und ich bin noch nicht dazu gekommen die Entwickler dieses Tools da drauf anzusprechen.
    Für die rpi-gpio Lösung fehlt wie ich gerade feststellen musste noch die Möglichkeit, dass im Webif auszuwählen. Ich werde das gleich nachrüsten. Du brauchst nur das lirc Paket zu aktualisieren. Du kannst dann unter "Remote control / Lirc modul" "RPI GPIO" auswählen.

    2.) Shutdown und Aufwecken des Pi (idealerweise mit FB)?
    - Der Server soll nicht 24/7 laufen, sondern sich runterfahren, wenn der Raspi nicht mehr drauf zugreift. Reicht es da, wenn man beim Pi die Zeit eingibt, dass er sich nach XX Minuten, wenn kein FB-Befehl ankam runterfahren soll?
    - Wie weckt Ihr den Pi wieder auf? Stromkabel aus- und einstecken kann doch da nicht des Rätsels Lösung ein? Fährt der Pi aber nicht runter - also laufen darauf VDR und streamdev durch, fährt sich auch der Server nicht runter. Um den Pi-Stromverbrauch gehts mir nicht, wohl aber um den des Servers.

    Dafür steht noch keine vorgefertigte Lösung bereit. Ich bin einfach noch nicht dazu gekommen mich da drum zu kümmern. Wenn Du Dich selbst da dran versuchen möchtest, müsstest Du ein Script schreiben, das der VDR beim drücken der Power Taste anstelle des shoutdown Scriptes aufruft. Dies müsste dann den VDR stoppen, auf Fernbedienungs Signale lauschen und bei nem Tastendruck den VDR wieder starten. Außerdem müsste es überwachen ob ne Timer Aufnahme ansteht und auch dann den VDR gegebenenfalls starten.

    3.) Aufnahmevereichnis beim Pi mounten
    - Wie bringt man dem Pi bei MLD bei, dass er vom Server die per NFS bereitgestellten Verzeichnisse VOR dem Start des VDR an die gewünschte Stelle (wo wird dort das Aufnahmeverzeichnis erwartet) mountet? MLD hat "automatisch" in der fstab vom Server /mnt/data beim Client /mnt/data eingebunden. Ist aber das falsche Verzeichnis. Wenn ich das gerade biege, legt MLD das dann wieder falsch an?

    Du musst Dein nfs Share über das Webif im Bereich "Setup / Festplatten" als auswählen und es dann als Datenlaufwerk festlegen. Falls Das für Dich zu unflexibel ist, kannst Du das auch direkt in der /etc/fstab eintragen. Entscheident ist dann, das Du den automatisch erzeugten Eintrag nicht löscht, sondern lediglich auskommentierst. Dann wird der nicht mehr automatisch angelegt.

    4.) vorinstallierte Plugins beim MLD-Client-Image
    - Da sind für den Client-Betrieb epgsync, remoteosd, remotetimers, streamdev und svdrpservice vorinstalliert. Wenn streamdev läuft, wofür wird remoteosd benötigt?

    Die zusätzlichen Plugins sorgen dafür das z.B. Timer auf dem Server programmiert werden und nicht auf dem Client. Näheres dazu kannst Du im VDR Wiki im Bereich Plugins nachlesen.


    Claus

    MLD 5.5 mit vdr 2.6 - lirc yaUSBir - Octopus NET S2 - SCR - XFX GeForce 9300 mit Intel E3200 - 2GB RAM - WD Green 12TB HDD - SanDisk 64GB SSD - Lian Li PC-C37B - Samsung LE40A559
    MLD 5.5 mit vdr 2.4 - Raspberry Pi 3 - rpihddevice
    MLD 5.5 mit Squeeze Play - Raspberry Pi 2 - 32GB SD - 7" Touch TFT


  • Hey, hier gibt's ja ein paar richtig gute Tipps!. Also bzgl. des runterfahrens, ich habe 2 VDRs (VIA EPIA mit DVB-S/FF), die den Server per WOL wecken koennen. Wenn die VDRs aus sind (ausschalten oder 'Schlummerschaltung'), dann faehrt sich auch der Server nach xx Minuten selber runter (auf dem Server ist ein Script, das in der /etc/rc.local gestartet wird und die VDRs anpingt. Wenn Ping nix mehr liefert gehts in den shutdown).


    Das koenntest du ja genauso bei dir auch machen. Und dann den P6 oder einen uC um den Pi wieder zu starten klingt ja gar nicht so uebel. Ich bin gerade selber an einem Pi-Client mit MLD dran und wuerde das genau so implementieren (mein TV kann kein CEC).


    Dann gebe ich hier auch mal Tipps wie ich es gemacht habe. Die Geschmäcker sind ja schlueßlich unterschiedlich und jeder muss für sich das perfekte finden. Ich zB schalte den PI nie aus, sondern beende per Fernbedienung nur alle laufenden Dienste. Das hat den Vorteil das beim aufwecken nach max 5 Sekunden wieder ein Bild auf der Glotze ist ;)
    Ich lasse den Server per "netstat" alle 5 Minuten prüfen ob ein Client den Port 6419 offen hat. Wenn nicht dann weiß der Server das kein Client VDR mehr läuft und geht schlafen.
    Hoffe konnte helfen ;)

    Gruß Patrick


    [size=8]* Meine NeverEndingProjects ;) *


    vectra --- glasslike ---

  • Na hier habe ich was losgetreten. Aber im positiven Sinne. Aber im Einzelnen:


    PIC ist ein 12F629-I/P , Schaltung entspricht in etwa der hier --> Mini IR-ON für TT S2-6400


    (Wenn alles endgültig fertig ist, mache ich zu dem Projekt mal einen extra Thead auf und kapere nicht wieder einen anderen Thread :versteck )


    Also wenn Du mehr solche Dinger bringst, dann darfst gern jeden Thread von mir kapern! ;) Würde Dich - wenn Du das denn in nem anderen Thread detaillierter vorstellst - hier sogar um nen Querverweis per Link bitten.


    Ansonsten @ googles und Argus: Klar kann ich mit nem Lötkolben umgehen. Was aber noch nicht meine Frage im Ausgangspost beantwortet, ob der TSOP dann bei Anschluss an GPIO nur RC5-Signale empfangen kann.


    clausmuus
    Erstmal danke für Deine Arbeit bei MLD und natürlich gilt der Dank auch an reufer, der mit dem rpiAusgabeplugin ein schönes Stück Software geschrieben hat! Alles, was mir Kompilierarbeit spart, ist herzlich gern gesehen. Und mit Skriptschreiberei habe ich es nicht so.


    Ich werde Deine Tipps bzgl. Einbindung NFS-Share und CEC mal ausprobieren. Danke!


    Wie die Plugins funktionieren, ist mir schon klar. Habe ja schon eine Server-Client-Lösung im Einsatz. Unklar ist mir aber, warum remoteosd beim Raspi-Client benötigt wird. Kann der Pi das OSD nicht selbst darstellen oder wofür soll er sich das via Plugin vom Server holen?


    Meine bisherige Client-Server-Lösung läuft so ab, dass der yaVDR-Client eine Ergänzung im VDR-Startskript bekommen hat. Der Start des VDR muss warten, bis die NFS-Shares eingebunden sind. Vor dem VDR-Start sendet der Client via Wakeonlan (oder war es etherwake?) den Aufwachbefehl an den headless-yaVDR-Server. Funktioniert prima. Die Frage ist, wie das in den Raspi mit MLD einbauen. Im Webinterface gibts ja was zu WOL. Aber wo dann ggf. ansetzen, dass erst die shares gemountet werden müssen, bevor der VDR komplett durchstarten darf?

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!