Feature #649
Power saving: Close DVB file descriptor when DVB device is idle
0%
Description
Current DVB-S(2) devices need a lot of current, especially when feeding the LNB with power.
They often tend to overheat in 24/7 usage, too.
The DVB-API shuts down the tuner-frontend/LNB power-supply when the file-descriptor of the DVB-device is closed.
So, please close the file-descriptor on idle DVB-devices to save power and prevent overheating.
Files
History
Updated by Mario D about 13 years ago
It should be useful also to use the xmltv grabbers based on DVB signal. There exists a grabber tv_grab_it_dvb that uses the sat card to quickly get the EPG data from the sat. If tvheadend frees the not-used adapters, it could be used.
Updated by Jaakko . almost 13 years ago
- File close-fd.patch close-fd.patch added
I have made a small patch to enable this feature. My problem was that my dvb-t tuner crashed tvheadend about once a day when it constantly received a dvb stream. Now when the file descriptor is closed, the tuner goes to 'no signal' state and stops receiving the stream. You have to disable the idle scanning from configuration to allow the tuner to go to idle state. The only downside with this patch is that it doesn't receive epg updates when the tuner is not used so if you don't record something or watch live tv for a long time the epg might get empty.
I know the patch is a little bit of a hack, but it works for me. Try it yourself and feel free to enhance the quality of the patch!
Updated by Andy Brown almost 13 years ago
Interesting, I applied this patch when it came out, and looked fine, saw the DVB-T go into idle (I added some syslog messages so I could watch what adapter went into close/idle), but noticed that the patch wasn't doing this to my DVB-S cards, is there any reason for this?
Updated by renne - almost 13 years ago
Lazy vendors not implementing powersaving in the firmware ...
Updated by Frank Meerköter over 12 years ago
I have applied this patch and it works in the sense that it closes the frontend-device but this isn't
enough to allow my device (Sundtek DVB-C) to go into power-saving mode.
By placing some logs in tvh_open()/tvh_close() i can see that tvheadend still has the
demux0 and dvr0 files open. I guess this prevents the device from shutting down?
At least i can observe that a few seconds after tvheadend has stopped, the USB-device will
shut down.
Can someone who knows the DVB-API better advice how to handle this?
Updated by Richard Kunze over 12 years ago
- File close-all-fd.patch close-all-fd.patch added
Here's another patch (based on Jaakkos) that closes all device file descriptors for idle adapters.
Updated by Markus Bonet over 12 years ago
I will gibe this patch a try.
How will I be able to check the success? First, I would check if lsof comes up with any open file descriptors.
But then, is there a way to check if my DVB card (TeVii S480) went in power saving mode?
Updated by Rene Herbrich over 12 years ago
Jaakko . wrote:
I have made a small patch to enable this feature. My problem was that my dvb-t tuner crashed tvheadend about once a day when it constantly received a dvb stream. Now when the file descriptor is closed, the tuner goes to 'no signal' state and stops receiving the stream. You have to disable the idle scanning from configuration to allow the tuner to go to idle state. The only downside with this patch is that it doesn't receive epg updates when the tuner is not used so if you don't record something or watch live tv for a long time the epg might get empty.
I know the patch is a little bit of a hack, but it works for me. Try it yourself and feel free to enhance the quality of the patch!
what's about implementing the epg updates that way, that the thread idles for 24h and then it runs for let's say 30min to get the updates (if that's enough?)
Updated by Adam Sutton over 12 years ago
- Status changed from New to Rejected
This is being handled elsewhere and will be included shortly.