unRaid, tvh, S3 sleep, wecke für Aufnahme oder die Eierlegendewollmichsau gibt es nicht?

  • Hallo,
    dem Hype folgend, immer was noch geileres zu finden teste ich seit ein paar Tagen unRAID .
    Das müsste mein Server können:
    NFS, Samba, mySQL, tvheadend, sleep (s3), oscam (so läuft es auf meinem selbst gestrickten Ubuntuserver)

    Also Hardware zusammen gesteckt, USB Stick mit unRAID 6.6.6 erstellt und gebootet ...

    Aha kann kein S3 sleep :( , google sagt doch, hiermit: https://forums.unraid.net/topic/34889-dynamix-v6-plugins/

    und damit fing dann auch mein Dilemma an.

    Nach dem aufwachen des Rechners das (alt)bekannte Problem mit den DVB Treibern ?

    Das Problem habe ich beim unRAID tvh-Plugin als auch im Docker-Container !
    Selbst ein Reset bzw Reboot ändert da nichts mehr !?
    Die Treiber werden nicht mehr korrekt oder nur noch Teilweise an den Container übergeben.

    In /dev/dvb sind alle 4 Tuner da, in tvh werden je nach Laune mal 2, mal 4 mal keine angezeigt. Die, die da sind sind auch aktiv(grün)
    dennoch ohne Funktion - kein Bild/ton beim Kanal start, der Stream kann nicht gestartet werden.
    Die Webgui von tvh ist auch sehr träge bis sau langsam :)
    Restarten vom tvhContainer ändert da auch leider nichts.

    Nach dem Rechner ausschalten und neustarten funktioniert alles wieder - bis zum nächsten sleep :(

    Versucht habe ich dann:

    Container beenden
    sleep
    Container starten

    leider auch kein Erfolg.

    und zum testen

    modprobe -r ddbridge

    Verzeichnis /dev/dvb ist weg

    modprobe -a ddbridge

    Verzeichnis /dev/dvb/ ist wieder da mit den 4 Tunern

    Aber der Container den ich auch schon mit root-rechten versucht habe, und natürlich als extraParameter --device=/dev/dvb mitgebe
    bleibt unbrauchbar.


    Hat vielleicht jemand aus der unRAID oder Docker Szene eine Idee was ich machen kann / muss ?

  • Das Standard Sleep Plugin ist seit fast einem Jahr defekt, ne funktionierende Version findest du hier: UNRAID Fragen

    Was die TVKarte angeht, wahrscheinlich musst du die Treiber vor dem Sleep entladen und wieder neu laden beim Aufwachen.
    Habe ich zumindest immer so gemacht als ich noch eine interne TV Karte verwendet habe. Da das Prozedere aber nur in gut 90% der Fälle geklappt hat habe ich die TVKarte gegen einen SatIP Server ausgetauscht.

    Damit gab es dann keine Probleme.

    Paar Angaben zu deiner Hardware könnten auch nicht schaden.

  • Hallo darkside,

    Ich habe älter Hardware zum Testen zusammen gesteckt:
    Intel(R) Xeon(R) CPU E3-1246 v3 @ 3.50GHz

    Multimedia controller: Digital Devices GmbH Octopus DVB Adapter
    müsste eine 6.5er sein mit 4 DVB-s2 Tunern

    32GB RAM

    Ich bekomme das mit dem entladen nicht hin.

    Im Sleep-setup kann man ja folgendes einstellen:

    Custom commands before sleep bzw Custom commands after wake-up
    also habe ich es so versucht:
    Custom commands before sleep: modprobe -r ddbridge

    Custom commands after wake-up: modprobe ddbridge


    aber leider ändert das nichts. Hast du noch einen anderen Lösungsansatz um die Treiber zu entladen ?

  • noch ein Auszug aus dem Log:

    Jan 6 22:44:05 Tower kernel: stv090x_read_reg: Read error, Reg=[0xf5a9], Status=-5
    Jan 6 22:44:06 Tower kernel: ddbridge 0000:01:00.0: I2C timeout, card 0, port 0, link 0
    Jan 6 22:44:06 Tower kernel: ddbridge 0000:01:00.0: DDBridge IRS 000000f3
    Jan 6 22:44:06 Tower kernel: stv090x_read_reg: Read error, Reg=[0xf5aa], Status=-5
    Jan 6 22:44:07 Tower kernel: ddbridge 0000:01:00.0: I2C timeout, card 0, port 0, link 0
    Jan 6 22:44:07 Tower kernel: ddbridge 0000:01:00.0: DDBridge IRS 000000f3
    Jan 6 22:44:07 Tower kernel: stv090x_read_reg: Read error, Reg=[0xf5ab], Status=-5
    Jan 6 22:44:08 Tower kernel: ddbridge 0000:01:00.0: I2C timeout, card 0, port 0, link 0
    Jan 6 22:44:08 Tower kernel: ddbridge 0000:01:00.0: DDBridge IRS 000000f3
    Jan 6 22:44:08 Tower kernel: stv090x_read_reg: Read error, Reg=[0xf5ac], Status=-5
    Jan 6 22:44:09 Tower kernel: ddbridge 0000:01:00.0: I2C timeout, card 0, port 0, link 0
    Jan 6 22:44:09 Tower kernel: ddbridge 0000:01:00.0: DDBridge IRS 000000f3
    Jan 6 22:44:09 Tower kernel: stv090x_write_regs: Reg=[0xf5a8], Data=[0x00 ...], Count=1, Status=-5
    Jan 6 22:44:09 Tower kernel: stv090x_read_per: I/O error
    Jan 6 22:44:10 Tower kernel: ddbridge 0000:01:00.0: I2C timeout, card 0, port 0, link 0
    Jan 6 22:44:10 Tower kernel: ddbridge 0000:01:00.0: DDBridge IRS 000000f3
    Jan 6 22:44:11 Tower kernel: ddbridge 0000:01:00.0: I2C timeout, card 0, port 0, link 0
    Jan 6 22:44:11 Tower kernel: ddbridge 0000:01:00.0: DDBridge IRS 000000f3
    Jan 6 22:44:11 Tower kernel: stv090x_read_reg: Read error, Reg=[0xf12a], Status=-5

  • noch ein Nachtrag:
    Im laufenden (frisch gestartetem) System, kann ich den DockerContainer
    starten, stopen, restarten danach funktioniert tvheadend immer!

    Deine Version von sleep habe ich installiert, ich bekomme jetzt die
    Version s3_sleep version: 3.0.6.1 angezeigt.
    Aber leider ohne Erfolg.

    Ich glaube, mich daran zu erinnern, dass wenn die Treiber bei einer "normalen" Linux Installation nicht entladen werden,
    die Tuner auch im tvheadend Setup nach dem wecken nicht mehr angezeigt werden?
    (Das könnte ich auf meinem Ubuntuserver testen, da habe ich die neue DigitalDevice V7A drin.)

    Bei unRAID sieht es eigentlich ganz normal aus: https://i.imgur.com/yHoR46b.png
    Es ist egal wie viele Tuner ich einrichte, nach 1 Mio. versuche hab ich nur noch den ersten eingerichtet :(
    Der auf dem Bild ist nach einem S3 Sleep und aufwecken und funktioniert nicht mehr ...

  • Was den Sleep angeht für diesen am besten mal den [definition=12,4][definition='1','3']Debug[/definition][/definition] Mode einschalten, dann weisst du was deinen Server wach hält.
    Wenn du natürlich kein Cache Drive drin hast und z.B. ein Docker dauernd eine Platte am laufen hält dann wirds mit dem Schlafen nichts.

    Wegen der DD versuch bitte mal folgende Module zu entladen: ddbridge cxd2099 dvb_core
    Das ganze dann natürlich wieder retour beim Aufwachen.

    Muss dich aber warnen das ich gerade ein bisschen geraten da ich noch keinen lsmod Output von dir gesehen habe.

  • Der Rechner schläft ja ein. Das passt eigentlich alles !

    Nur tvh macht danach nicht mehr was es soll. (Darauf bezog sich "ohne Erfolg")

    Die Entladung über ddbridge hinaus probiere ich, aber ich glaube das hab ich auch schon versucht ...

    Melde mich später mit Ergebnissen :)
    Danke

  • Es läuft !

    Ich habe es jetzt nicht mehr mit dem orig. Sleep Script (Plugin) versucht, ich benutze gleich
    das Plugin von darkside40. In Post2 findet ihr die Verlinkung.

    Es ist mir (noch) nicht gelungen die Sache als User ans laufen zu bekommen.

    Deshalb ist es wichtig im TvHeadend-DockerContainer PGID und PUID auf 0 zu setzen !
    Soweit ich das verstanden habe, greife ich jetzt als root auf den Rechner / Treiber ect. zu ?!

    Da kann man noch einiges Versuchen, ich weiß nur noch nicht wie bei dem RO System.


    Als erstes muss der Container (tvheadend) beendet werden.
    Dann kann man mit: modprobe -r ddbridge cxd2099 die Treiber entladen.

    Bei mir hat es nur so funktioniert !

    Im ubuntuWiki steht es so : modprobe -r ddbridge cxd2099 dvb_core Dies funktioniert bei mir nicht !!!

    Und auf meinem Ubuntu18.04 Server reicht sogar ein modprobe -r ddbridge Auch dass funktioniert unter unRaid bei mir nicht !

    Jetzt kann ich den Rechner schlafen schicken.

    Nach dem Aufwecken lade ich die Treiber wieder mit modprobe ddbridge cxd2099

    Ich starte den DockerContainer mit tvh und siehe da :) :) :) es funktioniert !


    Jetzt brauche ich "nur" noch ein script das diese Schritte macht...

    VG

  • Gib mir ein paar Minuten...

    So gut wenn man nichts wegschmeißt.
    Das Script hier sollte so gut wie komplett sein, du solltest nur mal den Namen des Docker prüfen ob der bei dir so passt:
    https://gist.github.com/bjoerns1983/12…663589c3dcc9ed7

    Die Zeile:
    chown -R nobody:users /dev/dvb
    solltest du auch in deine /boot/config/go File (vor dem /usr/local/sbin/emhttp & einfügen

    So hat der (Standard)User aus dem Docker auch zugriff auf den Ordner.

    Und bevor die Frage kommt hier auch ein Script welches den unRaid automatisch für die nächste Aufnahme aufwachen lässt (musste anpassen):
    https://gist.github.com/bjoerns1983/c3…614462cf003e631

  • ich klinke mich hier mal kurz ein:
    Verstehe ich das richtig, dass dieses Sleep-Plugin welches "offiziell" zu installieren ist defekt ist und mit den Datien von @darkside40 gefixxt werden kann ?
    Bezieht sich das jetzt nur auf den Zusammenhang mit tvheadend oder sollten die Daten generell getauscht werden weil das "Plugin" noch defekt ist ?
    Ich wollte demnächst meinen Rechner schlafen legen, wenn keine Clients (Abfrage über IP-Adressen) errecihbar sind. Aufgeweckt wird er über KODI Wake-on-Lan Script.
    TvHeademd hab ich (aktuell) nicht im Einsatz.

  • Nein ist generell und nicht nur im Zusammenhang mit TVH.
    Irgendwann wurde letztes Jahr eine zusätzliche Prüfung in dem Plugin eingefügt die aber einfach nicht funktioniert (HDD's werden als aktiv erkannt obwohl Sie schlafen).
    Keine Ahnung ob der Author keinen Bock hat meinen kleinen Fix einzufügen (kein echter fix einfach nur ein revert) oder ob das Plugin zu unwichtig ist aber meine Variante funktioniert.

  • ich klinke mich hier mal kurz ein:
    Verstehe ich das richtig, dass dieses Sleep-Plugin welches "offiziell" zu installieren ist defekt ist und mit den Datien von @darkside40 gefixxt werden kann ?
    Bezieht sich das jetzt nur auf den Zusammenhang mit tvheadend oder sollten die Daten generell getauscht werden weil das "Plugin" noch defekt ist ?
    Ich wollte demnächst meinen Rechner schlafen legen, wenn keine Clients (Abfrage über IP-Adressen) errecihbar sind. Aufgeweckt wird er über KODI Wake-on-Lan Script.
    TvHeademd hab ich (aktuell) nicht im Einsatz.

    Wenn du nen Account fürs unRaid Forum hast kannste gern ein bisschen Druck machen :P https://forums.unraid.net/topic/34889-dy…lugins/?page=91


    @darkside40

    VIELEN DANK, das schau ich mir auf jeden Fall an ! Mal sehen ob und wie ich das installiert bekomme.

    Alles kein Hexenwerk, du hast ja scheinbar schon Linux Erfahrung und die zusammen geklöppelten Scripte sollten selbsterklärend sein.

  • Das reload script kommt z.B. in den Ordner /boot/config/custom wenn es den noch nicht gibt anlegen.
    Per chmod +x ausführbar machen.

    Dann kannste im S3 Sleep plugin bei Custom command before sleep folgendes eingeben:
    /boot/config/custom/reload_dvb.sh stop
    angeben.

    After Wakeup funktioniert dann fast gleich:
    /boot/config/custom/reload_dvb.sh start

    Sollte so funktionieren. Kannst das Script vorher auch auf der CLI ausprobieren, vorallem um zu schauen ob du auch den richtigen Namen für den Docker eingetragen hast.

Jetzt mitmachen!

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