Bug #5328
TBS6985 unusable with latest git
100%
Description
Not sure what features have been added somewhen between February and now, but this is the result:
Nov 13 17:31:02 [tvheadend] mpegts: 11973V in Astra 23.5E - tuning on TurboSight TBS 6985 DVB-S/S2 #1- napravo
Nov 13 17:31:02 [tvheadend] subscription: 000E: "scan" unsubscribing
Nov 13 17:31:02 [tvheadend] linuxdvb: TurboSight TBS 6985 DVB-S/S2 #1- napravo - failed to tune [e=Invalid argument]
The driver keeps printing this:
[9873826.706740] SAA716x Budget 0000:09:00.0: dtv_property_dump: SET tvp.cmd = 0x00000046 undefined
[9873832.508589] SAA716x Budget 0000:09:00.0: dtv_property_dump: SET tvp.cmd = 0x00000046 undefined
[9873832.509844] SAA716x Budget 0000:09:00.0: dtv_property_dump: SET tvp.cmd = 0x00000046 undefined
[9873832.511070] SAA716x Budget 0000:09:00.0: dtv_property_dump: SET tvp.cmd = 0x00000046 undefined
[9873833.385633] SAA716x Budget 0000:09:00.0: dtv_property_dump: SET tvp.cmd = 0x00000046 undefined
Files
History
Updated by saen acro about 6 years ago
some more info
uname -a lsb_release -a lscpu dmesg | grep DMI #work near fresh restart cat /proc/interrupts
Updated by Joe User about 6 years ago
dvb input config (lnb only, switch, etc)
--trace linuxdvb,diseqc
There was a change with the high voltage, but for me that shows a different error.
Updated by Peter Bašista about 6 years ago
- File scan.dvb-s.12168V.log scan.dvb-s.12168V.log added
LubosD - wrote:
Nov 13 17:31:02 [tvheadend] linuxdvb: TurboSight TBS 6985 DVB-S/S2 #1- napravo - failed to tune [e=Invalid argument]
I used to see the same error messages on some channels. I assumed that the satellite no longer broadcasts them using the stored parameters, so a fresh scan would help.
But it did not.
I am now using:
tvheadend: version 4.3-1531~g743da3e1f@
with Si21662
tuner and Tvheadend can no longer scan properly. During the scanning, DVB-S multiplexes are scanned fine (see the attached log from an example scan attempt), but DVB-S2 multiplexes cannot be scanned at all:
2018-11-13 23:23:53.185 [ DEBUG]:mpegts: adding mux 12343.5H in 23.5 Network to scan queue weight 6 flags 4000 2018-11-13 23:23:53.186 [ DEBUG]:mpegts: 12343.5H in 23.5 Network - add raw service 2018-11-13 23:23:56.182 [ DEBUG]:settings: saving to /home/root/.hts/tvheadend/input/dvb/networks/93034e9fabeb7193076822c80975e124/muxes/a3fa23b6e037995ac26411861845e3cc 2018-11-13 23:24:17.755 [ DEBUG]:mpegts: removing mux 12343.5H in 23.5 Network from scan queue 2018-11-13 23:24:20.697 [ DEBUG]:settings: saving to /home/root/.hts/tvheadend/input/dvb/networks/93034e9fabeb7193076822c80975e124/muxes/a3fa23b6e037995ac26411861845e3cc 2018-11-13 23:25:29.597 [ DEBUG]:mpegts: adding mux 12090V in 23.5 Network to scan queue weight 6 flags 4000 2018-11-13 23:25:29.597 [ DEBUG]:mpegts: 12090V in 23.5 Network - add raw service 2018-11-13 23:25:29.597 [ DEBUG]:service: 3: 12090V in 23.5 Network si 0x7f957608 Si21662 #0 : DVB-S #0 weight 0 prio 12 error 0 (OK) 2018-11-13 23:25:29.597 [ INFO]:mpegts: 12090V in 23.5 Network - tuning on Si21662 #0 : DVB-S #0 2018-11-13 23:25:29.597 [ TRACE]:linuxdvb: Si21662 #0 : DVB-S #0 - frontend clear 2018-11-13 23:25:29.598 [ TRACE]:linuxdvb: Si21662 #0 : DVB-S #0 - opening FE /dev/dvb/adapter0/frontend0 (23) 2018-11-13 23:25:29.598 [ DEBUG]:diseqc: rotor already positioned to 23.5E 2018-11-13 23:25:29.598 [ TRACE]:diseqc: set voltage 13V 2018-11-13 23:25:29.613 [ TRACE]:diseqc: set diseqc tone on 2018-11-13 23:25:29.646 [ DEBUG]:linuxdvb: Si21662 #0 : DVB-S #0 - starting 12090V in 23.5 Network 2018-11-13 23:25:29.646 [ TRACE]:linuxdvb: Si21662 #0 : DVB-S #0 - tuning 2018-11-13 23:25:29.646 [ TRACE]:linuxdvb: Si21662 #0 : DVB-S #0 - frontend clear 2018-11-13 23:25:29.646 [ TRACE]:linuxdvb: tuner Si21662 #0 : DVB-S #0 tuning to DVB-S2 23.5E freq 12090000 V sym 29900000 fec 2/3 mod PSK/8 roff 20 is_id -1 pls_mode ROOT pls_code 0 (freq 1490000) 2018-11-13 23:25:29.647 [ TRACE]:linuxdvb: S2CMD 17 => 6 2018-11-13 23:25:29.647 [ TRACE]:linuxdvb: S2CMD 03 => 1490000 2018-11-13 23:25:29.647 [ TRACE]:linuxdvb: S2CMD 06 => 2 2018-11-13 23:25:29.647 [ TRACE]:linuxdvb: S2CMD 08 => 29900000 2018-11-13 23:25:29.647 [ TRACE]:linuxdvb: S2CMD 09 => 2 2018-11-13 23:25:29.647 [ TRACE]:linuxdvb: S2CMD 04 => 9 2018-11-13 23:25:29.647 [ TRACE]:linuxdvb: S2CMD 12 => 2 2018-11-13 23:25:29.647 [ TRACE]:linuxdvb: S2CMD 13 => 1 2018-11-13 23:25:29.647 [ TRACE]:linuxdvb: S2CMD 42 => 4294967295 2018-11-13 23:25:29.647 [ TRACE]:linuxdvb: S2CMD 70 => 262143 2018-11-13 23:25:29.647 [ TRACE]:linuxdvb: S2CMD 01 => 0 2018-11-13 23:25:29.647 [ ERROR]:linuxdvb: Si21662 #0 : DVB-S #0 - failed to tune [e=Invalid argument] 2018-11-13 23:25:32.541 [ DEBUG]:settings: saving to /home/root/.hts/tvheadend/input/dvb/networks/93034e9fabeb7193076822c80975e124/muxes/f7329934d48917c8d388edca362132ab
It definitely used to work before.
Perhaps unrelated:
The Si21662
tuner has two frontends, but only the first one works used to work with tvheadend, not sure why. I was never able to properly debug it. I have tried to test both frontends side by side using a simple command line utility dvbv5-zap
, but I was not able to make it work with any of the frontends. None of them would lock. I suppose that the tuner expects different commands than are being sent to it by dvbv5-zap
, but I am not sure. Tvheadend, however, used to be able to work correctly at least with the first frontend.
Updated by Peter Bašista about 6 years ago
Luis Alves wrote:
This looks like broken drivers...
There are multiple comments and multiple statements in each of them, so it is unclear what you refer to.
Updated by LubosD - about 6 years ago
This is the bug right here:
Nov 14 09:53:51 [tvheadend] linuxdvb: TurboSight TBS 6985 DVB-S/S2 #0 - frontend clear Nov 14 09:53:51 [tvheadend] linuxdvb: tuner TurboSight TBS 6985 DVB-S/S2 #0 tuning to DVB-S2 23.5E freq 12363000 V sym 29500000 fec 3/4 mod PSK/8 roff 20 is_id -1 pls_mode ROOT pls_code 0 (freq 1763000) Nov 14 09:53:51 [tvheadend] linuxdvb: S2CMD 17 => 6 Nov 14 09:53:51 [tvheadend] linuxdvb: S2CMD 03 => 1763000 Nov 14 09:53:51 [tvheadend] linuxdvb: S2CMD 06 => 2 Nov 14 09:53:51 [tvheadend] linuxdvb: S2CMD 08 => 29500000 Nov 14 09:53:51 [tvheadend] linuxdvb: S2CMD 09 => 3 Nov 14 09:53:51 [tvheadend] linuxdvb: S2CMD 04 => 9 Nov 14 09:53:51 [tvheadend] linuxdvb: S2CMD 12 => 2 Nov 14 09:53:51 [tvheadend] linuxdvb: S2CMD 13 => 1 Nov 14 09:53:51 [tvheadend] linuxdvb: S2CMD 42 => 4294967295 Nov 14 09:53:51 [tvheadend] linuxdvb: S2CMD 70 => 262143 Nov 14 09:53:51 [tvheadend] linuxdvb: S2CMD 01 => 0 Nov 14 09:53:51 [tvheadend] linuxdvb: TurboSight TBS 6985 DVB-S/S2 #0 - failed to tune [e=Invalid argument]
It looks like it is caused by DTV_SCRAMBLING_SEQUENCE_INDEX ("S2CMD 70 => 262143").
The muxes, where it happens to me, have PLS mode=ROOT and PLS code=0 (see at the beginning!), and yet Tvheadend adds a command to set DTV_SCRAMBLING_SEQUENCE_INDEX to 0x3ffff.
So I don't think the drivers are at fault here. DTV_SCRAMBLING_SEQUENCE_INDEX is not a mandatory feature I suppose.
Updated by LubosD - about 6 years ago
This is the commit that introduced the issue: https://github.com/tvheadend/tvheadend/commit/0b8d903f230c29fd8a213e8a06a5a11bcc1ecae8
Updated by LubosD - about 6 years ago
LubosD - wrote:
This is the commit that introduced the issue: https://github.com/tvheadend/tvheadend/commit/0b8d903f230c29fd8a213e8a06a5a11bcc1ecae8
Along with a few more commits. The root cause is that when pls_mode=ROOT and pls_code=0 (which is the default!), it tries to set the scrambling sequence to 0x3ffff even if I've never used this PLS stuff in my life.
Updated by Luis Alves about 6 years ago
You are right... something is wrong:
Tvh is calculating the root code based on the user input "sequence index" and passing it to the driver.
But
The drivers are expecting a sequence number not a root code (they calculate the root code themselfs).
I believe that commit should be reverted.
Updated by Luis Alves about 6 years ago
Driver examples:
Calculating on driver: https://git.linuxtv.org/media_tree.git/tree/drivers/media/dvb-frontends/mxl5xx.c#n383
Calculating on firmware: https://git.linuxtv.org/media_tree.git/tree/drivers/media/dvb-frontends/stv090x.c#n3433
Updated by Jaroslav Kysela about 6 years ago
- Status changed from New to Fixed
- % Done changed from 0 to 100
Applied in changeset commit:tvheadend|409a70630801375afd3c95ddf001171c32fcc03d.
Updated by Peter Bašista about 6 years ago
Thanks Jaroslav Kysela, it indeed seems to have helped:
2018-11-15 08:29:00.362 [ DEBUG]:mpegts: 12090V in 23.5 Network - add raw service 2018-11-15 08:29:00.362 [ DEBUG]:service: 4: 12090V in 23.5 Network si 0x7faf7680 Si21662 #0 : DVB-S #1 weight 0 prio 11 error 0 (OK) 2018-11-15 08:29:00.362 [ DEBUG]:service: 3: 12090V in 23.5 Network si 0x7fb12200 Si21662 #0 : DVB-S #0 weight 0 prio 12 error 0 (OK) 2018-11-15 08:29:00.362 [ INFO]:mpegts: 12090V in 23.5 Network - tuning on Si21662 #0 : DVB-S #0 2018-11-15 08:29:00.362 [ TRACE]:linuxdvb: Si21662 #0 : DVB-S #0 - frontend clear 2018-11-15 08:29:00.362 [ DEBUG]:diseqc: rotor already positioned to 23.5E 2018-11-15 08:29:00.362 [ DEBUG]:linuxdvb: Si21662 #0 : DVB-S #0 - starting 12090V in 23.5 Network 2018-11-15 08:29:00.362 [ TRACE]:linuxdvb: Si21662 #0 : DVB-S #0 - tuning 2018-11-15 08:29:00.362 [ TRACE]:linuxdvb: Si21662 #0 : DVB-S #0 - frontend clear 2018-11-15 08:29:00.362 [ TRACE]:linuxdvb: tuner Si21662 #0 : DVB-S #0 tuning to DVB-S2 23.5E freq 12090000 V sym 29900000 fec 2/3 mod PSK/8 roff 20 is_id -1 pls_mode GOLD pls_code 0 (freq 1490000) 2018-11-15 08:29:00.362 [ TRACE]:linuxdvb: S2CMD 17 => 6 2018-11-15 08:29:00.362 [ TRACE]:linuxdvb: S2CMD 03 => 1490000 2018-11-15 08:29:00.362 [ TRACE]:linuxdvb: S2CMD 06 => 2 2018-11-15 08:29:00.362 [ TRACE]:linuxdvb: S2CMD 08 => 29900000 2018-11-15 08:29:00.362 [ TRACE]:linuxdvb: S2CMD 09 => 2 2018-11-15 08:29:00.362 [ TRACE]:linuxdvb: S2CMD 04 => 9 2018-11-15 08:29:00.362 [ TRACE]:linuxdvb: S2CMD 12 => 2 2018-11-15 08:29:00.362 [ TRACE]:linuxdvb: S2CMD 13 => 1 2018-11-15 08:29:00.362 [ TRACE]:linuxdvb: S2CMD 42 => 4294967295 2018-11-15 08:29:00.362 [ TRACE]:linuxdvb: S2CMD 01 => 0 2018-11-15 08:29:00.362 [ DEBUG]:mpegts: 12090V in 23.5 Network - started 2018-11-15 08:29:00.362 [ DEBUG]:tbl-eit: eit: grab started 2018-11-15 08:29:00.362 [ DEBUG]:mpegts: 12090V in 23.5 Network - open PID tables subscription [0042/0x7fb04960]
Updated by LubosD - about 6 years ago
Somehow, this commit made no difference in my case :-/ It is still being set and still results in EINVAL.
Updated by Jaroslav Kysela about 6 years ago
LubosD: set PLS mode to ROOT and PLS code to 1 (or GOLD / 0) for all your muxes.
Updated by LubosD - about 6 years ago
Jaroslav, I have five pages of muxes (so a lot of work to do this manually) and the config files are compressed (see #4498). I'll find a way around this, but I suspect it'll upset quite a few users out there.
Updated by Jaroslav Kysela about 6 years ago
It's not as bad as you think. Use multi-edit webui feature - select multiple DVB-S rows and click on the edit button to change the settings. Do not forget to mark the fields which you want to change (checkboxes in the front of them).