USB Tuner für DM800

  • Hallo,


    mir ist es gelungen Kernel Module für flexcop-b2c2 USB Tuner, für die DM800 zu erstellen. Diese Boxen waren als DVB-S/T oder -C Varianten von z. B. Technisat erhältlich.


    Enigma2 kann den USB Tuner, zumindest nach einigen Tricks, auch verwenden. Mir ist es gelungen zwei Aufnamen, von zwei verschiedenen Transpondern, durchzuführen. Es gibt aber auch noch Einschränkungen, so kann der USB Tuner (noch) nicht für LiveTV verwendet werden und auch nur FTA Sender.


    Da ich von Enigma2 bis jetzt noch keine Ahnung habe, hier ein paar Fragen:


    1.) E2 findet die verfügbaren DVB Devices über /proc/bus/nim_sockets. Wie bekomme ich den USB Tuner in diese Liste. Zum testen habe ich eine Datei mit entsprechendem Inhalt erstellt und den Pfad in E2 umgebogen.


    2.) Offenbar fehlt für LiveTV eine Funktion um Daten aus /dev/dvb/adapterX/dvr0 nach /dev/dvb/adapter1/video0 zu kopieren. Diese Funktion war bisher auch nicht notwendig. Wie/wo sollte man das am günstigsten implementieren.


    3.) Gerätepriorität. Da nicht alle Sender über den USB Tuner empfangen werden können währe es gut wenn dieser für Aufnahmen bevorzugt wird, wenn möglich. Wer hat eine Idee wie das implementiert werden kann.


    Roland



    EDIT: Homey hat hier Support für USB-DVB-Tuner (TwinTuner) das gleiche Thema gestartet.

  • Zitat

    Original von adenin
    Ich besorg mir heut so'n Stick und mach mit.


    beste Grüße
    adenin


    Besorg mir einen mit :]


    Wo kriegt'stn du 'auf die schnelle' son teil her?


    Ich bin bei Eb@y aktiv, aber da dauerts noch 3-4 tage bis die ersten Angebote auslaufen ...


    Wehe ihr pusht meine Gebote unnütz in die Höhe da :smiling_face: Ich bin da die "manillaconnection", finger weg von den Dingen wo ich mitbiete :face_with_tongue:

    Theorie ist, wenn man alles weiß, aber nichts funktioniert.
    Praxis ist, wenn alles funktioniert aber niemand weiß warum.

  • In Leipzig gibt es verschiedene Quellen für so ein Teil, bezahlt aus dem "das-will-ich-jetzt-sofort-haben-(*mit dem Fuß aufstampf*)-Fonds". Das billigste Angebot lag hier bei einem Vox mini II für 19.99€.
    Hab mich für eine Cinergy T USB XXS entschieden, der war so schön klein. Chip ist ein DIB7770PA, da gibt auch irgendwelche Treiber für Linux, bin schon auf der Suche.


    beste Grüße
    adenin

  • Ich habe mal versucht ob sich Treiber aus dem aktuellen DVB Sourcetree bauen lassen, das Resultat war negativ.
    Versuch evtl. die USB ID im Erfahrung zu bringen, da wird eine Aussage einfacher

  • hmm..


    so richtig weiter gekommen bin ich noch nicht.


    Da um 1) im Augenblick leicht "herumgearbeitet" werden kann habe ich mal bei 2) weitergemacht. Stecke aber ein bischen fest.


    Das Ziel ist es die Daten aus aus /dev/dvb/adapterX/pvr0 nach /dev/dvb/adapter0/video0|audio0 zu kopieren. Der szap aus dem QuickTV Plugin sollte genug Beispiel sein wie das funktioniert. BTW: Willkommen an Board adenin, Danke für die Vorlage. Wie aber kann man daß mit e2 verbinden?


    Meine Idee an dieser Stelle ist es einen FIFO zu verwenden, in welchen e2 Information über Adapter, Frontend und PID's schreibt, szap müßte dann nur bei Bedarf (adapter != 0) das Video Device öffnen und die Daten kopieren. Die PID Filter sollten bereits von Enigma richtig eingestellt werden, e2 muß aber vermutlich das video0/audio0 Device vorher freigeben.


    Die Lösung hätte einige Vorteile:
    - minimale Änderungen an e2
    - kurze Entwicklungszyklen, da enigma nur selten zu kompilieren ist
    - PlugIn tauglich


    Nachteile:
    - schlecht wartbar, da der Code verteilt ist
    - brisantes Timing, können die die Device schnell genug freigegeben werden?


    Wer das selbst beurteilen will kann mal demux.cpp und decoder.cpp untersuchen, vorallem die Klassen eDVBVideo, eDVBAudio, eTSMPEGDecoder und eDVBDemux.


    Roland

  • So, ich fange jetzt mal ganz langsam an rumzuexperimentieren.
    UsbID? Also ich hab idVendor 0x0ccd (für TerraTec Electronic Gmbh) und idProduct 0x0078 und product CinergyTUSB XXS.
    Ich werde erst mal sehn was es für Treiber gibt,
    [OT]
    Hat schon jemand den internen USB benutzt (jaja, der ist kein 2.0). Der Stick passt da super rein. Da melden sich allerdings garnix, wenn ich irgendwas (egal was) dranstecke, /usb1 ist für usb2.0-Geräte (1-1 unterer Port; 1-2 oberer Port ) /usb2 meldet sich bei USB1.1Geräten(2-1 unterer Port; 2-2 oberer Port ). Für was ist /usb3 ?
    Der dib7770 sollte theoretisch auch an USB1.1 laufen, ist mir erst mal egal, ob der für Video zu langsam ist, es gibt ja auch noch Radio über DVB-T.


    beste Grüße
    adenin

  • vergiss den internen USB Port, der ist scheinbar im moment auf der 800er durch den secondstage loader kastriert, da kannst du maximal strom holen.

  • Eine Frage an die Profis hier:


    Ist Build my own image offline das der richtige Weg Änderungen am Quellcode von Enigma2 zu compilieren, oder gibt es einen einfacheren/besseren?


    Was für ein Image solle ich auf der Box installieren wenn ich den Stand von enigma2 aus dem CVS verwende? Sind im letzten experimental Image auch alle CVS changes entahlten?


    Danke


    Roland

  • Also für die dm800 verwende ich dieses script

    Code
    #! /bin/sh
    rm  /home/adenin/dm800/build/tmp/stamps/enigma2-2.4cvs*.do_build*
    rm  /home/adenin/dm800/build/tmp/stamps/enigma2-2.4cvs*.do_populate*
    rm  /home/adenin/dm800/build/tmp/stamps/enigma2-2.4cvs*.do_package*
    rm  /home/adenin/dm800/build/tmp/stamps/enigma2-2.4cvs*.do_install*
    rm  /home/adenin/dm800/build/tmp/stamps/enigma2-2.4cvs*.do_compile*
    rm  /home/adenin/dm800/build/tmp/stamps/enigma2-2.4cvs*.do_configure*
    make -f Makefile-opendreambox image
  • Hallo ,
    habe diese Frage schon im Schlumpfforum gepostet und wollte hier auch mal nach fragen .
    Ich versuche für meinen Usb-T sctick eine Kernel Modul zu backen und komme trotz hielfe nicht weiter.


    Sorry ,


    stelle mich grade etwas dusselig an.


    Ich habe diesen Fehler und frage mich ob ich etwas falsch verstanden habe.


    make -C /home/boris/af9015/v4l all


    make[1]: Entering directory `/home/boris/af9015/v4l'


    Updating/Creating .config


    Preparing to compile for kernel version


    File not found: /home/boris/tuxbox-bb/openembedded/1.5/dm800/dm800/openembedded/packages/li


    nux/dm800/.config at ./scripts/make_kconfig.pl line 32.


    make[1]: *** Keine Regel vorhanden, um das Target ».myconfig«,


    benötigt von »config-compat.h«, zu erstellen. Schluss.


    make[1]: Leaving directory `/home/boris/af9015/v4l'


    make: *** [all] Fehler 2




    in /home/boris/af9015/tools/bin findet man die crosscomliler.


    in /home/boris/tuxbox-bb/openembedded/1.5/dm800/dm800/openembedded/packages/li


    nux/dm-800 die kernel config




    Bevor ich make all eingab ,habe ich im Verzeichniss af9015 das hier als comando ausgeführt,


    make release DIR=/home/boris/tuxbox-bb/openembedded/1.5/dm800/dm800/openembedded/package


    s/linux/dm-800


    Dann habe ich eine Textdatei erstell mit dem Namen env.source und auch
    im Verzeichniss af9015 gespeichert Rechte auf 755 und die Datei
    ausgeführt alles mit dem obrigen ergebniss.




    Ich habe auch mit dm800_defconf in .config unbennen versucht aber auch ohne Erfolg .




    Ich hoffe ihn könnt mir auf die Sprünge helfen.




    __________________

    Gruß
    troll032000