Project

General

Profile

Feature #3201

Delayed power saving

Added by B C about 9 years ago. Updated about 9 years ago.

Status:
Fixed
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
2015-10-23
Due date:
% Done:

0%

Estimated time:

Description

A possible solution to avoid most startup delays of a bus powered DiSEqC switches on a tuner with LNB power saving enabled would be to not immediately power off the LNB when unsubscribing from a channel but arm a timer which should check shortly after, if the tuner is still in use, and if not, power down the LNB. When switching channels while on the same tuner, the new tune request could skip the startup delay as the device is already powered up. Theoratically this could also benefit switching times for single LNB configurations as there is no glitch in LNB power.

History

#1

Updated by Jaroslav Kysela about 9 years ago

I think that there's 2 seconds delay already. It does not work for you?

#2

Updated by B C about 9 years ago

I still have some unpredictable instabilities when Power Save and Turn of lnb when idle is enabled. Which trace subsystems do I need to enable to narrow it down?

#3

Updated by Jaroslav Kysela about 9 years ago

linuxdvb,diseqc

#4

Updated by B C about 9 years ago

Are you sure the delay is at the right position?

2015-10-23 18:04:12.643 [  TRACE]:diseqc: set voltage 18V
2015-10-23 18:04:12.658 [  TRACE]:diseqc: initial tone off
2015-10-23 18:04:12.659 [  TRACE]:diseqc: sending diseqc (len 4) E0 10 39 FF 
2015-10-23 18:04:12.770 [  TRACE]:diseqc: set diseqc tone on
2015-10-23 18:04:12.790 [  DEBUG]:linuxdvb: STV090x Multistandard : DVB-S #3 - starting 12360.42H in Eurobird 9A

If I change it here https://github.com/tvheadend/tvheadend/blob/master/src/input/mpegts/linuxdvb/linuxdvb_satconf.c#L1522
from 15ms to 100ms I'm fine.

#5

Updated by Jaroslav Kysela about 9 years ago

Could you put a new trace to linuxdvb_satconf_start() - print the delay value and if usleep is called.

#6

Updated by B C about 9 years ago

I found it, delay arrives natively in ms, usleep expects us, so https://github.com/tvheadend/tvheadend/blob/master/src/input/mpegts/linuxdvb/linuxdvb_satconf.c#L716 should be changed to

    usleep(delay*1000);

#7

Updated by Jaroslav Kysela about 9 years ago

  • Status changed from New to Fixed

Fixed in v4.1-739-g061a04d . Thanks.

Also available in: Atom PDF