Project

General

Profile

Bug #5328

TBS6985 unusable with latest git

Added by LubosD - about 6 years ago. Updated about 6 years ago.

Status:
Fixed
Priority:
Normal
Assignee:
-
Category:
DVB
Target version:
-
Start date:
2018-11-13
Due date:
% Done:

100%

Estimated time:
Found in version:
git master
Affected Versions:

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

scan.dvb-s.12168V.log (23 KB) scan.dvb-s.12168V.log Log from scanning DVB-S multiplex [email protected] Peter Bašista, 2018-11-13 23:30

History

#1

Updated by saen acro about 6 years ago

multistream used ?

#2

Updated by LubosD - about 6 years ago

Nope, just a plain DVB-S2 mux.

#3

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

#4

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.

#5

Updated by Peter Bašista about 6 years ago

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.

#6

Updated by Luis Alves about 6 years ago

This looks like broken drivers...

#7

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.

#8

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.

#10

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.

#11

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.

#13

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.

#14

Updated by Jaroslav Kysela about 6 years ago

Default is GOLD=0 or ROOT=1 (it's equal).

#15

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]
#16

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.

#17

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.

#18

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.

#19

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).

Also available in: Atom PDF