You are not logged in.

Dear visitor, welcome to VDR Portal. If this is your first visit here, please read the Help. It explains in detail how this page works. To use all features of this page, you should consider registering. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

mtron

Trainee

Posts: 106

Location: Tirol (A)

  • Send private message

181

Wednesday, March 30th 2011, 5:14pm

Hallo!

Ich habe heute die anfänglichen Tests mit meiner TerraTec Cinergy S2 PCI HD gemacht.

Vorerst das Testergebnis mit "Astra_DVBS2_only.txt"

s2-liplianin:
lok_errs =20, runs=86 of sequ=3333, multi=134, multi_max=94

real 157m44.872s
user 0m1.020s
sys 0m30.118s

also alles andere als berauschend...

v4l-dvb:
lok_errs =20, runs=86 of sequ=3333, multi=19, multi_max=1

real 11m13.195s
user 0m0.064s
sys 0m13.281s

Der unterschied bei dvb-s2 ist hier gravierend. von 157 minuten runter auf 11 minuten soweit großartig! Woher die lok_errs herkommen ist mir schleierhaft. werde mal in windows testen aber wahrscheinlich ist es die schlechte Ausrichtung der Schüssel. Nur der einzige drawback ist, dass mit v4l die Remote Control nicht erkannt wird. S2-liplianin erkennt diese als "Linux Input Device" und sie funktioniert praktisch out-of-the-box. Jemand eine Idee wie ich v4l die bei der TerraTec Cinergy S2 PCI HD beiliegende Remote schmackhaft machen kann?

Die gesamten Test folgen dann später. Darf jetzt leider nicht mehr weil der vdr gebraucht wird :(
mtron has attached the following file:
  • zap.log.zip (10.01 kB - 32 times downloaded - latest: Nov 26th 2014, 6:12am)

System


VDR: 2.1.6 (vanilla build ohne einen patch)
VDR Plugins: (alle dev Versionen vom git) softhddevice (via va-api), status, streamdev-server, live, skinflatplus, epgsearch, osdteletext, tvguide, femon, xvdr
CPU: 4x Intel i5-4570 CPU @ 3.20GHz mit 24341MB RAM
OS: Ubuntu 14.04 LTS - Linux 3.13.0*-generic (x86_64) kompiliert mit GCC 4.8.2
Display : Dell P2214H @ 1920x1080 pixels
OpenGL Renderer : Intel Haswell Desktop mit Mesa 10.1.0 und VA-API 0.35.0
SATA 1 : Samsung SSD 840
SATA 2 : Hitachi HDS72202
DVB Device : Terratec Cinergy S2 PCI HD
Kernel Module : lnbp21 stb6100 stb0899 mantis mantis_core dvb_core

182

Wednesday, March 30th 2011, 9:13pm

Hallo!
s2-liplianin:
real 157m44.872s
v4l-dvb:
real 11m13.195s


Also dann bist du einer der wenigen wo lou's Patch es verschlechtert. Teste mal meine Änderungen, wenn du Lust und Zeit hast.

@lou

Wusstest du was du da machst oder hast du einfach herumgespielt?

Also der 2.6.38 Code sucht das Timing mit ca. 9Mhz Schritten, dann das Signal mit 0.5Mhz Schritten dann die Daten mit 4.5Mhz Schritten.
Die Daten mit 4.5 Mhz Schritten zusuchen ist eindeutig falsch, deshalb werden bei mir und vielen anderen viele Sender nicht gefunden.

s2-liplianin Code sucht Timing mit 2Mhz Schritten, dann das Signal mit 1Mhz Schritten und dann die Daten mit 0.5Mhz Schritten. Was richtiger
ist. In welchen Schritten man nun genau suchen muss, da bin ich nicht mehr in der Materie drin.

Was mich an dem s2-liplianin Code und damit an Lou's Patch stört, ist das er mit index = 0 anfängt, also index = 1 ist schon richtig.
Man stellt die gewünschte Frequenz ein und guckt ob ein Signal kommt, wenn nicht guckt man dann unterhalb und oberhalb, bis man
es findet. Bei index = 0, wird nun bei Timing, Signal und Data immer noch einmal die gleiche Frequenz geprüft, 0 * Werte bleibt 0.

Johns
Sag mir, wo die Developer sind. Wo sind sie geblieben? . . . . . . . . . . . . . . . . . . . . SoftHdDevice - A software and GPU emulated HD output device plugin.
Sag mir, wo die Developer sind. Was ist geschehn?

Client0: Crown CW02 MSI_C847MS-E33 Zotac_GT640_passiv Cine-S2 iMon-MCE / streamdev softhddevice
Client1: Lian_Li_PC-Q09FB ASRock_H67M-ITX/HT I3-2100 ASUS_ENGT520_passiv / streamdev softhddevice
Test: Lian_Li_PC-Q09R Asus C60M1-I / streamdev
Server0: Dockstar TT-S2-3600-USB / streamdev
Server2: Lian_Li_PC-Q07R Intel_DH61DL G620 WD20EARX 90W PicoPSU Cine-S2+DuoFlex-S2+DuoFlex-CT / streamdev / 22 Watt Verbrauch

183

Wednesday, March 30th 2011, 9:58pm

@Johns:
ich habe mal deinen Patch mit s2-liplianin vergleichen. Auch wenn ich den Algorhytmus noch nicht näher betrachtet und verstanden habe,

warum setzt du derot_step = internal->derot_step * 8;
und s2-lip setzt es derot_step = internal->derot_step * 4;

woher kommt der Faktor?

Im s2-lip code wird in der stb0899_status stb0899_search_data funktion noch die base_freq berücksichtigt, das ist beim v4l gar nicht mehr der Fall.

184

Wednesday, March 30th 2011, 10:12pm

@Johns:
ich habe mal deinen Patch mit s2-liplianin vergleichen. Auch wenn ich den Algorhytmus noch nicht näher betrachtet und verstanden habe,

warum setzt du derot_step = internal->derot_step * 8;
und s2-lip setzt es derot_step = internal->derot_step * 4;

woher kommt der Faktor?

Im s2-lip code wird in der stb0899_status stb0899_search_data funktion noch die base_freq berücksichtigt, das ist beim v4l gar nicht mehr der Fall.


Einfach geraten, wie gesagt gibts dafür Formeln und Erfahrungswerte, bin darin nicht mehr fit.

Das wäre ein minimalistischer Patch, damit es funktioniert. (aber der derot_step ist auch noch geraten)

Source code

1
2
3
4
5
6
7
8
9
10
11
12
--- /usr/src/linux/drivers/media/dvb/frontends/stb0899_algo.c   2011-03-15 02:20:08.000000000 +0100
+++ linux/drivers/media/dvb/frontends/stb0899_algo.c    2011-03-30 21:18:09.000000000 +0200
@@ -390,9 +390,8 @@ static enum stb0899_status stb0899_searc
        int index = 1;

        struct stb0899_internal *internal = &state->internal;
-       struct stb0899_params *params = &state->params;

-       derot_step = (params->srate / 4L) / internal->mclk;
+       derot_step = internal->derot_step;
        derot_limit = (internal->sub_range / 2L) / internal->mclk;
        derot_freq = internal->derot_freq;


Über base_freq kann man streiten. Der Kernel begrenzt die Suche immer um die gewünschte Frequenz herum.
Mit base_freq wird die Suche um die bisher beste gefunden Frequenz (als Mitte) begrenzt.

Johns
Sag mir, wo die Developer sind. Wo sind sie geblieben? . . . . . . . . . . . . . . . . . . . . SoftHdDevice - A software and GPU emulated HD output device plugin.
Sag mir, wo die Developer sind. Was ist geschehn?

Client0: Crown CW02 MSI_C847MS-E33 Zotac_GT640_passiv Cine-S2 iMon-MCE / streamdev softhddevice
Client1: Lian_Li_PC-Q09FB ASRock_H67M-ITX/HT I3-2100 ASUS_ENGT520_passiv / streamdev softhddevice
Test: Lian_Li_PC-Q09R Asus C60M1-I / streamdev
Server0: Dockstar TT-S2-3600-USB / streamdev
Server2: Lian_Li_PC-Q07R Intel_DH61DL G620 WD20EARX 90W PicoPSU Cine-S2+DuoFlex-S2+DuoFlex-CT / streamdev / 22 Watt Verbrauch

185

Wednesday, March 30th 2011, 10:53pm

danke Johns für deine Info. Hat das ganze auch Auswirkungen auf DVB-S oder betrifft dies nur DVB-S2?
Ich habe mal die base_freq bei mir rausgenommen und und den Faktor von 4 auf 8 erhöht. Das waren die einzigen Unterschiede die ich zwischen deinem Patch zu v4l und s2-lip feststellen konnte.
Ich werde dann mal ein paar SCPC Signale testen, um zu testen, ob sie weiterhin gut oder sogar besser locken.

Ich hatte vor einiger Zeit auch mal versucht den Treiber so anzupassen, um auch DVB-S Signale mit einer SR < 1 MS/s zu empfangen. Hat leider nicht geklappt mit nem Lock. Also offiziel beherrscht der stb0899 das auch nicht, aber einige Demodulatoren beherrschen das trotzdem (z.B. der der Skystar 2).

186

Thursday, March 31st 2011, 12:15pm

@Johns: wahnsinn, der stb0899 kann also doch SR < 1 MS/s verarbeiten! Bisher hat wohl base_freq immer einen Lock verhindert.
Es dauert wirklich sehr lange bis ein Lock zu Stande kommt, aber funktionieren tut es.

Getestet habe ich es auf Astra 3A 12660 V SR 477 FEC 1/2 DVB-S, das ist der SCPC Feed von Antenne Bayern.

Wenn es noch jemand testen möchte, sollte er wissen, dass man im Treiber noch 2-3 Dinge ändern muss, sonst wird das Setzen von SR < 1 MS/s vom Treiber verhindert.

187

Thursday, March 31st 2011, 1:45pm

ich habe mich jetzt auch noch eine Stufe weiter getraut mit Joe FM and CFN auf 16°Ost
12678 H 330 und 12681 H 330

leider scheint hier noch ein Bug im Treiber vorhanden zu sein. Wenn ich szap beende und einen Transponder mit hoher SR wähle bekomme ich kein Signal mehr. Dann muss ich erst wieder den s2-liplianin entladen. das make rrmod bleibt dabei ganzes Stück beim rmmod budget_ci hängen.

Wie kann ich am besten die DEBUG Ausgaben des Treibers aktiveren?

188

Thursday, March 31st 2011, 2:17pm

ich hab jetzt die DEBUG ausgaben einfach mit printk reingemacht

@Johns: hast du eine Idee warum mir bei den letzten zwei Beispielen auf 16°Ost kein Lock möglich ist?
den Faktor zu Beginn habe ich wieder auf 4 gesetzt, so wie ursprünglich in s2-lip.
hier zum Vergleich Antenne Bayern SR 477:

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Mar 31 14:11:36 newsy kernel: [12808.779925] stb6100_set_bandwidth: Bandwidth=13837135
Mar 31 14:11:36 newsy kernel: [12808.782066] stb6100_get_bandwidth: Bandwidth=14000000
Mar 31 14:11:36 newsy kernel: [12808.783927] stb0899_dvbs_algo: 9 derot_step
Mar 31 14:11:36 newsy kernel: [12808.787394] stb6100_get_bandwidth: Bandwidth=14000000
Mar 31 14:11:36 newsy kernel: [12808.788054] stb0899_dvbs_algo: 0 derot_freq
Mar 31 14:11:37 newsy kernel: [12808.856958] stb6100_set_frequency: Frequency=2060000
Mar 31 14:11:37 newsy kernel: [12808.858708] stb6100_get_frequency: Frequency=2060015
Mar 31 14:11:37 newsy kernel: [12809.073905] stb6100_get_bandwidth: Bandwidth=14000000
Mar 31 14:11:37 newsy kernel: [12809.074319] stb0899_search_tmg: 36 derot_step
Mar 31 14:11:37 newsy kernel: [12809.505824] stb0899_search_carrier: -84 derot_freq
Mar 31 14:11:37 newsy kernel: [12809.721958] stb0899_search_carrier: -102 derot_freq
Mar 31 14:11:38 newsy kernel: [12809.937423] stb0899_search_carrier: -66 derot_freq
Mar 31 14:11:38 newsy kernel: [12810.153430] stb0899_search_carrier: -120 derot_freq
Mar 31 14:11:38 newsy kernel: [12810.369865] stb0899_search_carrier: -48 derot_freq
Mar 31 14:11:38 newsy kernel: [12810.585871] stb0899_search_carrier: -138 derot_freq
Mar 31 14:11:38 newsy kernel: [12810.801857] stb0899_search_carrier: -30 derot_freq
Mar 31 14:11:39 newsy kernel: [12811.019308] stb0899_search_carrier: -156 derot_freq
Mar 31 14:11:39 newsy kernel: [12811.234330] stb0899_search_carrier: -12 derot_freq
Mar 31 14:11:39 newsy kernel: [12811.451570] stb0899_search_carrier: -174 derot_freq
Mar 31 14:11:39 newsy kernel: [12811.665840] stb0899_search_carrier: 6 derot_freq
Mar 31 14:11:40 newsy kernel: [12811.882766] stb0899_search_carrier: -192 derot_freq
Mar 31 14:11:40 newsy kernel: [12812.097350] stb0899_search_carrier: 24 derot_freq
Mar 31 14:11:40 newsy kernel: [12812.313664] stb0899_search_data: 9 derot_step
Mar 31 14:11:40 newsy kernel: [12812.345407] stb0899_search_data: 44 derot_freq
Mar 31 14:11:46 newsy kernel: [12818.164922] stb0899_search_data: 53 derot_freq
Mar 31 14:11:52 newsy kernel: [12824.033487] stb0899_search_data: 35 derot_freq
Mar 31 14:11:58 newsy kernel: [12830.149565] stb0899_search_data: 62 derot_freq
Mar 31 14:12:04 newsy kernel: [12836.070401] stb0899_search_data: 26 derot_freq
Mar 31 14:12:10 newsy kernel: [12842.029495] stb0899_search_data: 71 derot_freq
Mar 31 14:12:16 newsy kernel: [12848.121399] stb0899_search_data: 17 derot_freq
Mar 31 14:12:22 newsy kernel: [12854.117394] stb0899_search_data: 80 derot_freq


dagegen JoeFM:

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
Mar 31 14:13:44 newsy kernel: [12936.576683] stb6100_set_bandwidth: Bandwidth=13584415
Mar 31 14:13:44 newsy kernel: [12936.582569] stb6100_get_bandwidth: Bandwidth=14000000
Mar 31 14:13:44 newsy kernel: [12936.584443] stb0899_dvbs_algo: 6 derot_step
Mar 31 14:13:44 newsy kernel: [12936.587592] stb6100_get_bandwidth: Bandwidth=14000000
Mar 31 14:13:44 newsy kernel: [12936.588474] stb0899_dvbs_algo: 0 derot_freq
Mar 31 14:13:44 newsy kernel: [12936.660994] stb6100_set_frequency: Frequency=2081000
Mar 31 14:13:44 newsy kernel: [12936.672752] stb6100_get_frequency: Frequency=2081003
Mar 31 14:13:45 newsy kernel: [12936.979040] stb6100_get_bandwidth: Bandwidth=14000000
Mar 31 14:13:45 newsy kernel: [12936.979477] stb0899_search_tmg: 24 derot_step
Mar 31 14:13:45 newsy kernel: [12937.586629] stb0899_search_carrier: -52 derot_freq
Mar 31 14:13:46 newsy kernel: [12937.889350] stb0899_search_carrier: -64 derot_freq
Mar 31 14:13:46 newsy kernel: [12938.197673] stb0899_search_carrier: -40 derot_freq
Mar 31 14:13:46 newsy kernel: [12938.501810] stb0899_search_carrier: -76 derot_freq
Mar 31 14:13:47 newsy kernel: [12938.810209] stb0899_search_carrier: -28 derot_freq
Mar 31 14:13:47 newsy kernel: [12939.113328] stb0899_search_carrier: -88 derot_freq
Mar 31 14:13:47 newsy kernel: [12939.418229] stb0899_search_carrier: -16 derot_freq
Mar 31 14:13:47 newsy kernel: [12939.721907] stb0899_search_carrier: -100 derot_freq
Mar 31 14:13:48 newsy kernel: [12940.027348] stb0899_search_carrier: -4 derot_freq
Mar 31 14:13:48 newsy kernel: [12940.329578] stb0899_search_carrier: -112 derot_freq
Mar 31 14:13:48 newsy kernel: [12940.633456] stb0899_search_carrier: 8 derot_freq
Mar 31 14:13:49 newsy kernel: [12940.937616] stb0899_search_carrier: -124 derot_freq
Mar 31 14:13:49 newsy kernel: [12941.241911] stb0899_search_carrier: 20 derot_freq
Mar 31 14:13:49 newsy kernel: [12941.545907] stb0899_search_carrier: -136 derot_freq
Mar 31 14:13:50 newsy kernel: [12941.849423] stb0899_search_carrier: 32 derot_freq
Mar 31 14:13:50 newsy kernel: [12942.154937] stb0899_search_carrier: -148 derot_freq
Mar 31 14:13:50 newsy kernel: [12942.457446] stb0899_search_carrier: 44 derot_freq
Mar 31 14:13:50 newsy kernel: [12942.761421] stb0899_search_carrier: -160 derot_freq
Mar 31 14:13:51 newsy kernel: [12943.065846] stb0899_search_carrier: 56 derot_freq
Mar 31 14:13:51 newsy kernel: [12943.369929] stb0899_search_carrier: -172 derot_freq
Mar 31 14:13:51 newsy kernel: [12943.673426] stb0899_search_carrier: 68 derot_freq
Mar 31 14:13:52 newsy kernel: [12943.977865] stb0899_search_carrier: -184 derot_freq
Mar 31 14:13:52 newsy kernel: [12944.281851] stb0899_search_carrier: 80 derot_freq
Mar 31 14:13:52 newsy kernel: [12944.585869] stb0899_search_carrier: -196 derot_freq
Mar 31 14:13:53 newsy kernel: [12944.889851] stb0899_search_carrier: 92 derot_freq
Mar 31 14:13:53 newsy kernel: [12945.193970] stb0899_search_carrier: -208 derot_freq
Mar 31 14:13:53 newsy kernel: [12945.497955] stb0899_search_carrier: 104 derot_freq
Mar 31 14:13:53 newsy kernel: [12945.801446] stb0899_search_carrier: -220 derot_freq
Mar 31 14:13:54 newsy kernel: [12946.109131] stb0899_search_carrier: 116 derot_freq
Mar 31 14:13:54 newsy kernel: [12946.413474] stb0899_search_carrier: -232 derot_freq
Mar 31 14:13:54 newsy kernel: [12946.717467] stb0899_search_carrier: 128 derot_freq
Mar 31 14:13:55 newsy kernel: [12947.021905] stb0899_search_carrier: -244 derot_freq
Mar 31 14:13:55 newsy kernel: [12947.325867] stb0899_search_carrier: 140 derot_freq
Mar 31 14:13:55 newsy kernel: [12947.630777] stb0899_search_carrier: -256 derot_freq
Mar 31 14:13:56 newsy kernel: [12947.933826] stb0899_search_carrier: 152 derot_freq
Mar 31 14:13:56 newsy kernel: [12948.237328] stb0899_search_carrier: -268 derot_freq
Mar 31 14:13:56 newsy kernel: [12948.541403] stb0899_search_carrier: 164 derot_freq
Mar 31 14:13:57 newsy kernel: [12948.845945] stb0899_search_carrier: -280 derot_freq
Mar 31 14:13:57 newsy kernel: [12949.150059] stb0899_search_carrier: 176 derot_freq
Mar 31 14:13:57 newsy kernel: [12949.453535] stb0899_search_carrier: -292 derot_freq
Mar 31 14:13:57 newsy kernel: [12949.757831] stb0899_search_carrier: 188 derot_freq
Mar 31 14:13:58 newsy kernel: [12950.064635] stb0899_search_carrier: -304 derot_freq
Mar 31 14:13:58 newsy kernel: [12950.370306] stb0899_search_carrier: 200 derot_freq
Mar 31 14:13:58 newsy kernel: [12950.673352] stb0899_search_carrier: -316 derot_freq
Mar 31 14:13:59 newsy kernel: [12950.977792] stb0899_search_carrier: 212 derot_freq
Mar 31 14:13:59 newsy kernel: [12951.282342] stb0899_search_carrier: -328 derot_freq
Mar 31 14:13:59 newsy kernel: [12951.585576] stb0899_search_carrier: 224 derot_freq
Mar 31 14:14:00 newsy kernel: [12951.889834] stb0899_search_carrier: -340 derot_freq
Mar 31 14:14:00 newsy kernel: [12952.194955] stb0899_search_carrier: 236 derot_freq
Mar 31 14:14:00 newsy kernel: [12952.497868] stb0899_search_carrier: -352 derot_freq
Mar 31 14:14:01 newsy kernel: [12952.801923] stb0899_search_carrier: 248 derot_freq
Mar 31 14:14:01 newsy kernel: [12953.105939] stb0899_search_carrier: -364 derot_freq
Mar 31 14:14:01 newsy kernel: [12953.412666] stb0899_search_carrier: 260 derot_freq
Mar 31 14:14:01 newsy kernel: [12953.717427] stb0899_search_carrier: -376 derot_freq
Mar 31 14:14:02 newsy kernel: [12954.021378] stb0899_search_carrier: 272 derot_freq
Mar 31 14:14:02 newsy kernel: [12954.325369] stb0899_search_carrier: -388 derot_freq
Mar 31 14:14:02 newsy kernel: [12954.629321] stb0899_search_carrier: 284 derot_freq
Mar 31 14:14:03 newsy kernel: [12954.933869] stb0899_search_carrier: -400 derot_freq
Mar 31 14:14:03 newsy kernel: [12955.237515] stb0899_search_carrier: 296 derot_freq
Mar 31 14:14:03 newsy kernel: [12955.541386] stb0899_search_carrier: -412 derot_freq
Mar 31 14:14:04 newsy kernel: [12955.845338] stb0899_search_carrier: 308 derot_freq
Mar 31 14:14:04 newsy kernel: [12956.150864] stb0899_search_carrier: -424 derot_freq
Mar 31 14:14:04 newsy kernel: [12956.456975] stb0899_search_carrier: 320 derot_freq
Mar 31 14:14:04 newsy kernel: [12956.761326] stb0899_search_carrier: -436 derot_freq
Mar 31 14:14:05 newsy kernel: [12957.066150] stb0899_search_carrier: 332 derot_freq
Mar 31 14:14:05 newsy kernel: [12957.369870] stb0899_search_carrier: -448 derot_freq
Mar 31 14:14:05 newsy kernel: [12957.674346] stb0899_search_carrier: 344 derot_freq
Mar 31 14:14:06 newsy kernel: [12957.977862] stb0899_search_carrier: -460 derot_freq
Mar 31 14:14:06 newsy kernel: [12958.284759] stb0899_search_carrier: 356 derot_freq
Mar 31 14:14:06 newsy kernel: [12958.589850] stb0899_search_carrier: -472 derot_freq
Mar 31 14:14:07 newsy kernel: [12958.893805] stb0899_search_carrier: 368 derot_freq
Mar 31 14:14:07 newsy kernel: [12959.197898] stb0899_search_carrier: -484 derot_freq
Mar 31 14:14:07 newsy kernel: [12959.505186] stb0899_search_carrier: 380 derot_freq
Mar 31 14:14:08 newsy kernel: [12959.809798] stb0899_search_carrier: -496 derot_freq
Mar 31 14:14:08 newsy kernel: [12960.113817] stb0899_search_carrier: 392 derot_freq
Mar 31 14:14:08 newsy kernel: [12960.417828] stb0899_search_carrier: -508 derot_freq
Mar 31 14:14:08 newsy kernel: [12960.721851] stb0899_search_carrier: 404 derot_freq
Mar 31 14:14:09 newsy kernel: [12961.025334] stb0899_search_carrier: -520 derot_freq
Mar 31 14:14:09 newsy kernel: [12961.329338] stb0899_search_carrier: 416 derot_freq
Mar 31 14:14:09 newsy kernel: [12961.633416] stb0899_search_carrier: -532 derot_freq
Mar 31 14:14:10 newsy kernel: [12961.937868] stb0899_search_carrier: 428 derot_freq
Mar 31 14:14:10 newsy kernel: [12962.241596] stb0899_search_carrier: -544 derot_freq
Mar 31 14:14:10 newsy kernel: [12962.545854] stb0899_search_carrier: 440 derot_freq
Mar 31 14:14:11 newsy kernel: [12962.853760] stb0899_search_carrier: -556 derot_freq
...

mtron

Trainee

Posts: 106

Location: Tirol (A)

  • Send private message

189

Friday, April 1st 2011, 7:34am

Wenn es noch jemand testen möchte, sollte er wissen, dass man im Treiber noch 2-3 Dinge ändern muss, sonst wird das Setzen von SR < 1 MS/s vom Treiber verhindert.
Kannst du dazu bitte einen patch machen?

Danke!

System


VDR: 2.1.6 (vanilla build ohne einen patch)
VDR Plugins: (alle dev Versionen vom git) softhddevice (via va-api), status, streamdev-server, live, skinflatplus, epgsearch, osdteletext, tvguide, femon, xvdr
CPU: 4x Intel i5-4570 CPU @ 3.20GHz mit 24341MB RAM
OS: Ubuntu 14.04 LTS - Linux 3.13.0*-generic (x86_64) kompiliert mit GCC 4.8.2
Display : Dell P2214H @ 1920x1080 pixels
OpenGL Renderer : Intel Haswell Desktop mit Mesa 10.1.0 und VA-API 0.35.0
SATA 1 : Samsung SSD 840
SATA 2 : Hitachi HDS72202
DVB Device : Terratec Cinergy S2 PCI HD
Kernel Module : lnbp21 stb6100 stb0899 mantis mantis_core dvb_core

190

Friday, April 1st 2011, 1:46pm

Wenn es noch jemand testen möchte, sollte er wissen, dass man im Treiber noch 2-3 Dinge ändern muss, sonst wird das Setzen von SR < 1 MS/s vom Treiber verhindert.
Kannst du dazu bitte einen patch machen?

Danke!
gerne, ist in Arbeit ;)

191

Friday, April 1st 2011, 1:47pm

Patch für kernel stb0899

Moin,

Es wäre gut, wenn dieser Patch getestet würde, bevor ich Ihn (oder andere) auf der v4l Mailingliste posten würde.

Es ist einer reiner Bugfix Patch, versucht also nichts am Algorithmus oder Timing zuverändern.

Die Schrittweite war einfach falsch, bei der Trägerfrequenzsuche wurde internal->derot_step verwendet und
dann bei der Datenfrequenzsuche eine viel zu Große. Deshalb konnte viele Sender nicht gefunden bzw. gelockt werden.
Dazu kam, das die erste Suche häufig erfolglos war, weil das Loop Flag bereits gestezt war.

Lou Patch bzw. s2-liplianin ändern dies auch.

Einziger Nachteil, könnte sein, das es etwas länger dauert, wenn kein Lock möglich ist.

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
--- /usr/src/linux-2.6.38-gentoo-r1/drivers/media/dvb/frontends/stb0899_algo.c 2011-03-15 02:20:08.000000000 +0100
+++ linux/drivers/media/dvb/frontends/stb0899_algo.c    2011-04-01 13:08:07.000000000 +0200
@@ -359,6 +359,8 @@
                dataTime = 500;
 
        stb0899_write_reg(state, STB0899_DSTATUS2, 0x00); /* force search loop */
+       stb0899_read_reg(state, STB0899_VSTATUS);       /* reset flags */
+
        while (1) {
                /* WARNING! VIT LOCKED has to be tested before VIT_END_LOOOP   */
                reg = stb0899_read_reg(state, STB0899_VSTATUS);
@@ -384,22 +386,20 @@
  */
 static enum stb0899_status stb0899_search_data(struct stb0899_state *state)
 {
-       short int derot_freq, derot_step, derot_limit, next_loop = 3;
+       short int derot_freq, derot_limit, next_loop = 3;
        u8 cfr[2];
        u8 reg;
        int index = 1;
 
        struct stb0899_internal *internal = &state->internal;
-       struct stb0899_params *params = &state->params;
 
-       derot_step = (params->srate / 4L) / internal->mclk;
        derot_limit = (internal->sub_range / 2L) / internal->mclk;
        derot_freq = internal->derot_freq;
 
        do {
                if ((internal->status != CARRIEROK) || (stb0899_check_data(state) != DATAOK)) {
 
-                       derot_freq += index * internal->direction * derot_step;/* next zig zag derotator position */
+                       derot_freq += index * internal->direction * internal->derot_step;       /* next zig zag derotator position */
                        if (abs(derot_freq) > derot_limit)
                                next_loop--;


Insgesamt ist aber Lou's Patch bzw. s2-liplianin noch etwas besser, aber die wollen Sie ja nicht haben.
Am besten ist eine gefixte s2-liplianin, bei mir.

Natürlich alles mit gefixten stb6100 Tuner.

Johns
Sag mir, wo die Developer sind. Wo sind sie geblieben? . . . . . . . . . . . . . . . . . . . . SoftHdDevice - A software and GPU emulated HD output device plugin.
Sag mir, wo die Developer sind. Was ist geschehn?

Client0: Crown CW02 MSI_C847MS-E33 Zotac_GT640_passiv Cine-S2 iMon-MCE / streamdev softhddevice
Client1: Lian_Li_PC-Q09FB ASRock_H67M-ITX/HT I3-2100 ASUS_ENGT520_passiv / streamdev softhddevice
Test: Lian_Li_PC-Q09R Asus C60M1-I / streamdev
Server0: Dockstar TT-S2-3600-USB / streamdev
Server2: Lian_Li_PC-Q07R Intel_DH61DL G620 WD20EARX 90W PicoPSU Cine-S2+DuoFlex-S2+DuoFlex-CT / streamdev / 22 Watt Verbrauch

192

Friday, April 1st 2011, 2:24pm

Wie wäre es dann die Patches in 2 aufzubrechen. Zuerst dein Bugfix, dann die Veränderung der Schrittweite um es nachvollziehbar zu machen ? Es gab ja auch noch den Signalstärke Patch und den Patch von Old_man und noch was ?

Sagt mir Bescheid wenn ich das v4l-dvb-dkms patchen soll und wie. (Ich hab keine solche Karte an der Stelle kann ich nichts helfen.) :)
VDR User: 87 - LaScala LC14B - LG/Phillipps 6,4" VGA Display | Asrock H61/U3S3 | G630T | 1x 16GB Mobi Mtron 3035 1x WD 750GB 2,5" |1x L4m DVB-S2 Version 5.4

193

Friday, April 1st 2011, 3:31pm

Wie wäre es dann die Patches in 2 aufzubrechen. Zuerst dein Bugfix, dann die Veränderung der Schrittweite um es nachvollziehbar zu machen ? Es gab ja auch noch den Signalstärke Patch und den Patch von Old_man und noch was ?

Sagt mir Bescheid wenn ich das v4l-dvb-dkms patchen soll und wie. (Ich hab keine solche Karte an der Stelle kann ich nichts helfen.) :)


Du willst meinen Patch noch zerlegen? Sind aber beide Änderungen bug-fixes.

So hier noch mein s2-liplianin patch:

Meiner Meinung ist das Problem in stb0899_check_data. Da ist loop bereits gesetzt und es wird nicht auf lock gewartet.
Der erste Read reseted das Loopflag.

Habe index = 0, wieder rückgängig gemacht, weil es unnötig ist zweimal die gleiche Frequenz einzustellen. Ohne meinen
Patch in stb0899_check_data hat es auch das loop Flag reseted.

Dann habe ich die msleep wieder herausgenommen, ich vermute die sollten auch das loop Problem fixen. Der Kernel
Treiber hat dies auch nicht.
Das msleep in der Schleife habe ich gelassen, ich denke so ist es besser.
Dann habe ich die Berechnung der Wartezeit auf den Datenlock zum Setup verschoben, wenn man es besonders schön
will, kann man daraus auch eine Funktion machen, wie stb0899_calc_derot_time.

Johns
johns has attached the following file:
Sag mir, wo die Developer sind. Wo sind sie geblieben? . . . . . . . . . . . . . . . . . . . . SoftHdDevice - A software and GPU emulated HD output device plugin.
Sag mir, wo die Developer sind. Was ist geschehn?

Client0: Crown CW02 MSI_C847MS-E33 Zotac_GT640_passiv Cine-S2 iMon-MCE / streamdev softhddevice
Client1: Lian_Li_PC-Q09FB ASRock_H67M-ITX/HT I3-2100 ASUS_ENGT520_passiv / streamdev softhddevice
Test: Lian_Li_PC-Q09R Asus C60M1-I / streamdev
Server0: Dockstar TT-S2-3600-USB / streamdev
Server2: Lian_Li_PC-Q07R Intel_DH61DL G620 WD20EARX 90W PicoPSU Cine-S2+DuoFlex-S2+DuoFlex-CT / streamdev / 22 Watt Verbrauch

194

Friday, April 1st 2011, 4:22pm

@johns: da die Doku wegen einem NDA nur dem Maintainer mitgegeben wurde musste ich wie Du ausprobieren und raten. Dabei war die Vorlage von Alex Betis sehr hilfreich. Ich find's gut wenn Du den Code auf Fehler untersucht, weil ich bin überzeugt der Treiber hat als Ganzes noch diverse Böcke drin (Intel Bug, DVB-S2 code)

Ich frage mich bloss ob sich der Einsatz auszahlt, wenn der Treiber Maintainer am Ende den Code ablehnt anstatt zu helfen.

Sehe ich das richtig? Der Remote Support in liplianin basiert auf diesem Patch, welcher auf v4l-dvb portiert werden müsste?
MSI P6NGM-FD | ASROCK A785GXH | Grafik: GeForce 9400GT| DVB-S2 Karten: Twinhan VP 1041 & Skystar HD

195

Friday, April 1st 2011, 4:59pm

hier mein Quick&Dirty Patch für s2-liplianin, damit bekomme ich die SR < 1 MS/s gelockt. Mit enthalten ist der Old_man Patch und der Signal Strength Patch.
Bezüglich Remote Control sollte man in der budget-ci.c noch folgendes ändern:

Source code

1
2
3
4
    	case 0x1019:
            	/* For the TT 3200 bundled remote */
            	ir_codes = RC_MAP_TT_1500;
            	break;


Damit funktionieren dann auch alle Tasten. Ist glaub ich im v4l ausnamsweise schon drinnen. Aber ich muss zugeben, dass der IR Sensor eh nicht besonders empfindlich ist :(

@steffen_b: der Signal Strength Patch wurde auch abgelehnt, der Maintainer ist leider alles andere als kooperativ, die Verbesserungen von Alex Betis sind damals auch nicht angenommen worden...

Einen gravierenden Bug hätte ich noch im Angebot: Und zwar unterstützt die Karte kein Inverses Spektrum. Der ORF hatte dies ja vor nem Jahr versehentlich aktiviert und auf einmal hatten alle TT S2-3200 Besitzer kein Signal mehr. Leider ist mir zum Testen kein Signal bekannt, welches auch inverses Spektrum verwendet.
newsy has attached the following file:

This post has been edited 1 times, last edit by "newsy" (Apr 1st 2011, 5:18pm)


196

Saturday, April 2nd 2011, 9:26am

Ich meinte nicht noch weiter aufbrechen sondern den bugfix in der Art von johns, weitere Verbesserung um in Richtung Lou zu kommen als seperaten Patch.

@newsy: das weiter nebenher zu pflegen ist ja auch keine Lösung. Man braucht halt irgendeine Handhabe.
VDR User: 87 - LaScala LC14B - LG/Phillipps 6,4" VGA Display | Asrock H61/U3S3 | G630T | 1x 16GB Mobi Mtron 3035 1x WD 750GB 2,5" |1x L4m DVB-S2 Version 5.4

197

Saturday, April 2nd 2011, 3:48pm

Ich meinte nicht noch weiter aufbrechen sondern den bugfix in der Art von johns, weitere Verbesserung um in Richtung Lou zu kommen als seperaten Patch.


Ok, habe es verstanden. Es wäre gut, wenn du die Patches sammelst,

Gibts ein Archive wie https://bugs.yavdr.com/projects/yavdr/re…e-dkms/patches/ für Mainline
Kernel oder sollen wir gegen v4l-dvb arbeiten?

Mir ist nur nicht klar, wie man die Patches sauber und richtig übergibt. Vielleicht kann sich jemand darum
kümmern der die nötigen Accounts bereits hat?

Hat noch jemand Kontakt zu Alex? Da ich ja ein Teil seiner Änderungen rückgängig gemacht habe.

Also wir haben.
stb0899_algo.c: loop patch Fixt das der Erste Lockcheck, immer misslingt
stb0899_algo.c: stepping patch Fixt zu große Schrittweite beim Datenlockcheck.
stb0899_algo.c: stepping patch Vergrößert die Schrittweite beim Carriercheck.
(Das ist das was von Lou's Patch übrigbleibt)
stb0899_drv.c: FEC patch Fixt das Lock von 3/4 ... FEC's (von old_man thread)
stb0899_drv.c: signal strength patch Fixt die falsche Signalstärke.
stb0899_drv.c: low symbol rate patch Niedrige Symbolraten erlauben

Wo bei ich die Signalstärke anders fixen würde.

Die Änderung von Lou mit der Basisfrequenz würde ich weglassen, da sie nicht ganz 100% richtig ist.

Johns
Sag mir, wo die Developer sind. Wo sind sie geblieben? . . . . . . . . . . . . . . . . . . . . SoftHdDevice - A software and GPU emulated HD output device plugin.
Sag mir, wo die Developer sind. Was ist geschehn?

Client0: Crown CW02 MSI_C847MS-E33 Zotac_GT640_passiv Cine-S2 iMon-MCE / streamdev softhddevice
Client1: Lian_Li_PC-Q09FB ASRock_H67M-ITX/HT I3-2100 ASUS_ENGT520_passiv / streamdev softhddevice
Test: Lian_Li_PC-Q09R Asus C60M1-I / streamdev
Server0: Dockstar TT-S2-3600-USB / streamdev
Server2: Lian_Li_PC-Q07R Intel_DH61DL G620 WD20EARX 90W PicoPSU Cine-S2+DuoFlex-S2+DuoFlex-CT / streamdev / 22 Watt Verbrauch

This post has been edited 1 times, last edit by "johns" (Apr 2nd 2011, 4:12pm)


198

Saturday, April 2nd 2011, 5:28pm

Hat noch jemand Kontakt zu Alex? Da ich ja ein Teil seiner Änderungen rückgängig gemacht habe.
ich hatte ihm vor einiges Zeit eine Mail geschrieben, als ich schonmal versucht habe SR < 1 MS/s zu locken. Er hat keine DVB-S2 Karte mehr.
Wo bei ich die Signalstärke anders fixen würde.
Klingt interessant.

Die Änderung von Lou mit der Basisfrequenz würde ich weglassen, da sie nicht ganz 100% richtig ist.
da stimme ich dir 100% zu.


Diese Fallunterscheidung scheint auch nicht ganz zu stimmen oder?

Source code

1
2
3
4
if (params->srate <= bandwidth / 2)
                    stb0899_search_tmg(state); /* For low rates (SCPC)                          */
            else   
                    stb0899_check_tmg(state); /* For high rates (MCPC)                          */

199

Saturday, April 2nd 2011, 5:34pm

Hallo johns

Zum Thema Patch formatieren gibt es einen linuxtv wiki Artikel

Accounts brauchst du keinen -> schick den Patch inline mit dem Betreff "[PATCH] Beschreibung des Patches" an die Mailingliste, eine Kopie davon sollte an den Maintainer (Manu) gehen. Der Majordomo erledigt den Rest. Attachments gehen zwar, sind aber problematisch wegen der Virengefahr.

Wenn du den Patch in ein git Repository stellen willst schick eine Kopie davon an Björn Mork - er hostet so ziemlich jeden Mantis Patch, und arbeit selber am Code für seine Mantis Cable Karten.

Alex hat sich 2009 mal abgemeldet von der Mailingliste, auch seine Projekte (szap-s2/scan-s2) werden nur noch von Igor gehostet. Ich glaub nicht das er die Karte noch aktiv verwendet.
MSI P6NGM-FD | ASROCK A785GXH | Grafik: GeForce 9400GT| DVB-S2 Karten: Twinhan VP 1041 & Skystar HD

200

Saturday, April 2nd 2011, 8:24pm

Abend,

Funktioniert bei jemanden die Signalstärke bei S2 und stb0899?
Ich bekomme bei allen Sendern nur
IF_AGC_GAIN = 0x0000, C = 700 * 0.1 dBm
Wäre bei femon 5AA ohne signal patch bzw. 5aa0 mit Signalstärke Patch.

Wenn ich es richtige sehe, konnte sich v4l nicht auf einen gemeinsamen Standard für die Signalstärke einigen.

Ich würde deshalb die Signalstärke auf 0 (schlechtester Wert) bis 0xffff (bester Wert) skalieren. Ist in etwa fast
das Selbe was der bisherige Patch macht.

Johns
Sag mir, wo die Developer sind. Wo sind sie geblieben? . . . . . . . . . . . . . . . . . . . . SoftHdDevice - A software and GPU emulated HD output device plugin.
Sag mir, wo die Developer sind. Was ist geschehn?

Client0: Crown CW02 MSI_C847MS-E33 Zotac_GT640_passiv Cine-S2 iMon-MCE / streamdev softhddevice
Client1: Lian_Li_PC-Q09FB ASRock_H67M-ITX/HT I3-2100 ASUS_ENGT520_passiv / streamdev softhddevice
Test: Lian_Li_PC-Q09R Asus C60M1-I / streamdev
Server0: Dockstar TT-S2-3600-USB / streamdev
Server2: Lian_Li_PC-Q07R Intel_DH61DL G620 WD20EARX 90W PicoPSU Cine-S2+DuoFlex-S2+DuoFlex-CT / streamdev / 22 Watt Verbrauch