femon mit STR in dBm und SNR in dB bei TT S2-1600, Cine S2 u.a mit stv090x - Jetzt auch ohne Treiber Patch!

  • Jetzt müsste sich nur noch Jemand finden, der diese Infos in den VDR bringt. ;)


  • vdr-femon benutzt VDR Funktionen https://github.com/rofafor/vdr…on/blob/master/osd.c#L628 und die benutzen DVBAPI3 Funktionen https://projects.vdr-developer…evice.c?h=stable/2.2#n560
    Klaus hat das in #12 und #15 kommentiert, aber das war vor 3 Jahren.
    Wenn man den VDR auf DVBAPI5 umstellen würde, und vdr-femon entsprechend auch, ginge es.

  • vdr-femon benutzt VDR Funktionen [...] Wenn man den VDR auf DVBAPI5 umstellen würde, und vdr-femon entsprechend auch, ginge es.


    Das Problem ist halt, dass wohl die Allerwenigsten etwas mit den realen Werten anfangen können, da ist die Anzeige in Prozent doch übersichtlicher. ;)


  • I guess that's a typical "chicken & egg" problem ;-).
    Applications won't use this new API unless all frontend drivers support it.
    Once it is supported by all frontends, I'll be more than glad to use it in VDR.


    Klaus


    So wie es aussieht, werden immer Leute noch Karten haben, die nur DVBAPI3 unterstützen, und andere welche, die nur DVBAPI5 vernünftig unterstützen. Daher eine Idee, wie wäre es BEIDES zu unterstützen? Dann wären Alle glücklich, und keine kruden Patche mehr nötig.
    Man könnte einfach die Schnittstelle zwischen VDR und vdr-plugin-femon "aufbohren", indem man für DVBAPI3 alles so lässt, wie es ist, aber für DVBAPI5 die Werte mit negativem Vorzeichen übergibt, also -0xFFFF ... 0. In vdr-femon wüsste man dann bei negativem Wert, dass DVBAPI5 verarbeitet werden muss. Im VDR müsste man nur prüfen, ob DVBAPI5 geht, wenn Ja wird die genommen, wenn Nein, wird DVBAPI3 genommen (so wie bisher).
    Das müsste relativ leicht einzubauen sein.

  • Zitat

    I guess that's a typical "chicken & egg" problem ;-).
    Applications won't use this new API unless all frontend drivers support it.
    Once it is supported by all frontends, I'll be more than glad to use it in VDR.


    Klaus


    Das ist kein "chicken & egg" Problem, sondern ein Problem mit der erzwungenen Abwärtskompatibilität!


    Wenn beim VDR die API geändert wird, wird komischerweise Niemand gefragt, insbesondere die Pluginentwickler nicht.
    Aber wenn ein User mit aller Gewalt irgendeine vorkriegs DVB-Karte und Steinzeit Hardware verwenden will, wird alles dran gesetzt, dass diese auch weiterhin unterstützt wird!


    Weshalb macht man da nicht einfach mal einen Schnitt? Wer alte (nicht mehr unterstützte) Hardware verwenden will, der soll halt auch die alte Softwareversion verwenden!

  • Dank dieses Threads ist mir aufgefallen, dass dvb-fe-tool bei meiner DVBSky T9580 (v3) sowohl für DVB-S als auch für DVB-T sowohl Signalstärke (in dBm) als auch CNR (in dB) angezeigt werden. Mit dem normalen Femon (egal ob Kommandozeile oder das femon-Plugin für vdr) wird bei DVB-T gar nichts und bei DVB-S ausschließlich die CNR in einem nicht gut lesbaren Format (Hex) angezeigt.


    Ich hab jetzt mal quick&dirty das Femon-Plugin so umgebaut, dass die Werte für STR und SNR über libdvbv5 abgerufen und korrekt in dBm bzw. dB angezeigt werden. Der Patch ist wirklich nur für das Femon-Plugin, der vdr Core oder gar der Kernel werden nicht angerührt. Es werden auch wirklich nur diese beiden Werte geändert. Also NICHT die beiden Balken für Stärke und Qualität, sondern wirklich nur die Zahlenanzeige.


    Lustigerweise hat das Femon-Plugin für beides sowieso getrennte Werte (strengthM, qualityM für die Balken und signalM und snrM für die Zahlenanzeigen) und lustigerweise werden signalM und snrM schon in der Originalversion des Femon-Plugins nicht über den vdr Core abgefragt, sondern direkt vom Kerne per ioctl. Alles, was der Patch macht, ist diese beiden Werte über die libdvbv5 anzufragen. Dadurch entsteht logischerweise eine Abhängigkeit zu libdvbv5 (in Ubuntu müssen die Pakete libdvbv5-0 und libdvbv5-dev installiert sein).


    Hier der Patch:


    Im Patch fehlt noch die Abfrage von BER, UNC (die könnte man auch über libdvbv5 abfragen). Das hab ich noch nicht eingebaut, war mir auch erstmal nicht so wichtig aber sollte sich einfach einbauen lassen.


    Außerdem werden die beiden Zahlenanzeigen (also STR, SNR) mit dem Patch, so wie er jetzt ist, wohl nicht mehr für nicht DVB-Geräte funktionieren, da der Code zur Anzeige nicht prüft, ob die beiden Werte im alten Format vorliegen oder halt eben in dBM/dB und einfach von letzterem ausgeht. Kompatibel ist der Patch wie gesagt mit meiner DVBSky T9850v3 und ich würde mal vermuten mit allen anderen Karten, die als Frontend den Silicon Labs Si2168 oder Montage M88DS3103 benutzten.


    Ich vermute mit dem stv090x könnte es auch klappen, da wäre interessant, ob die Ergebnisse identisch sind zu der von jrie benutzen Methode mit der Umrechnungsliste und API v3.

  • Das dvb-fe-tool scheint auch noch nicht der Weisheit letzter Schluss zu sein. :(


    Hier mal am Beispiel von ORF1-HD, das laut der channels.conf so aussieht:


    Code
    ORF1 HD;ORF:11302:HC23M5O35P0S1:S19.2E:22000:1920=27:0;1921=deu@106,1922=mis@106:1925:648,650,D95,D98,500,9C4,98C:4911:1:1007:0


    und das ist das, was das dvb-fe-tool ausgibt:



    So wie ich das sehe, stimmt weder die Polarisation, noch die Frequenz, noch die SID.

  • Interessant. Bei mir das gleiche. Frequenz stimmt nicht, Polarisation wird als "OFF" angezeigt und STREAM_ID ist immer 0. Das Delivery-System und die Symbolrate stimmen dagegen. Und auch die gleiche Fehlermeldung am Schluss, wenn er versucht, das Handle auf das Device wieder freizugeben. Aber die Ausgabe von "--femon" ist bei mir immerhin plausibel.

  • Seltsam ist auch dass, verschiedene Versionen unterschiedliche Werte bei der Frequenz ausgeben:


    Version 1.10.1


    Version 1.11.0 (git)

  • Dementsprechend der Patch aus #9 an vdr-femon-2.2.2 angepasst (noch völlig ungetestet). Wie gesagt erst ab Kernel 4.10.

    Hier eine verbesserte und getestete Version:

  • Der Patch von eins höher ist nur für VDR 2.2.0 und femon 2.2.2 .


    Seit ca. Mai 2017 können VDR 2.3.4 und höher sowie femon 2.3.0 (und höher) DVB API 5.

    Dafür wäre DVB API 5 im stv090x-Treiber angesagt, das könnte man von dddvb übernehmen.

  • Hallo!


    Wie sieht es ein Jahr später aus?


    Im GitHub von DD (https://github.com/DigitalDevices/dddvb) gibt es den Pull Request "Anevia suggestions", der folgenden Commit enthält:

    Zitat

    commit b53ad2c450d28f4984351a6922cdf32ff512a31f
    Enhance signal strength reporting for DVB-S1/S2 modules Updated RF lookup table with fine grained values for better precision. Listing has been made using a Dektec DTA-107 as source and Promax TV Explorer for measurements.

    Dort wird auch stv090x_tab stv090x_rf_tab angepasst um genauere Messwerte zu erhalten (so, dass am Ende der Wert mit einem Promax TV Explorer Pegelmessgerät übereinstimmt).

    Funktioniert das dann sofort mit einem upstream femon wenn ich den dddvb mit dem commit kompiliere oder muss das auch gepatcht werden?


    TIA,

    Heiko.

  • Da dddvb DVB API 5 hat, sollte es mit dddvb und aktuellem vdr und aktuellem femon gehen.


    Wenn du Mischbetrieb von DD und Anderen hast, brauchst du den Patch von HelmutB.

    Sein Patch ist nicht für dddvb, sondern für den Kernel.

  • Hallo!

    Danke für die schnelle Antwort.

    Ich habe nur eine DD Cine S2 6.5 im System, sollte also "raus aus der Box" funktionieren. Dann habe ich ja am Wochenende etwas zu tun:S


    Hat schon jemand den "Genauigkeits-"Patch ausprobiert oder kommt der gar von jemandem hier?

    Wenn man die alten mit den neuen Werten vergleicht klaffen die ja schon recht ordentlich auseinander.

  • Wegen -Werror=unused-function beim Kompilieren habe ich HelmutB's Patch entsprechend angepasst.

Jetzt mitmachen!

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