[mythtv-users] "Tuner 5 has an error"

Stephen Worthington stephen_agent at jsw.gen.nz
Thu Apr 25 09:14:53 UTC 2019


On Thu, 25 Apr 2019 00:06:21 -0400, you wrote:

>I am using mythtv 29.1 under Ubuntu 18.04 running under kernel 5.0.9.
>
>I initially installed a Hauppauge WinTV-quadHD PC Express card that
>provides 4 dvb inputs:
>	 /dev/dvb/adapter0/frontend0
> 	 /dev/dvb/adapter1/frontend0
> 	 /dev/dvb/adapter2/frontend0
> 	 /dev/dvb/adapter3/frontend0
>
>The Frontend ID for all is: LGDT3306A VSB/QAM Frontend.
>
>I then added a Hauppauge WinTV-HVR-955Q (aka Hauppauge Digital TV
>Tuner for Xbox One) USB tuner.
>
>That tuner is recognized by Linux as /dev/dvb/adapter4/frontend4.
>It works fine with VLC.
>
>Mythtv recognis the card appropriately as /dev/dvb/adapter4/frontend4
>with Frontend ID also LGDT3306A VSB/QAM Frontend.
>
>Everything seems fine, but I can't switch to the card input on LiveTV.
>System info says "Tuner 5 has an error" with details:
>       Tuner 4 [DVB: /dev/dvb/adapter4/frontend0] has an error
>(Note numbering is off because I name them Tuner 0 through 4 whereas
>System info seems to count them 1 to 5,
>
>The mythtv-setup configuration for the tuner is the exact same as the
>other 4.
>
>When I cycle through the tuners on Live TV, I go from Tuner 0 to 1 to
>2 to 3 and back to 0.
>(Note that when I type M->Source, I get only the first 3 tuners...)
>
>The syslog shows for each tuner switch (but no errors for the 'skipped' Tuner 4):
>Apr 24 23:49:03 consult kernel: [83954.235912] dvb_frontend: dvb_frontend_get_frequency_limits: frequency interval: tuner: 42000000...870000000, frontend: 54000000...858000000
>Apr 24 23:49:03 consult kernel: [83959.284003] dvb_frontend: dvb_frontend_get_frequency_limits: frequency interval: tuner: 42000000...870000000, frontend: 54000000...858000000
>
>Any hints on how to track down the 'error' for the last tuner.

The first thing to do is to check what messages get logged for that
tuner and its drivers.  With mythbackend shut down, unplug the USB
tuner and then run this command:

tail -f /var/log/kern.log

Plug the USB tuner back in and see what messages show up.  Drivers
vary considerably about how much they tell you, but you should see the
USB connect messages then the tuner driver(s) should tell you that
/dev/dvb/adapter4 has been created.  This page gives details as to
what the drivers logged in 2016 - it can change in later versions:

https://linuxtv.org/wiki/index.php/Hauppauge_WinTV-HVR-955Q

That page also says that a firmware file is needed:

v4l-cx231xx-avcore-01.fw

Check that you have that in your /lib/firmware directory - I have a
copy so it may be in the standard firmware that is in the Ubuntu
packages.

Next, start up mythbackend.  As it starts, it tests all the tuners and
logs what happens.  Check what is logged for that tuner in
/var/lib/mythtv/mythbackend.log.  You may need to add the "-v record"
option to the mythbackend command line to get more detail.  You do
that by creating a file:

/etc/mythtv/additional.args

Mine has this:

root at mypvr:/etc/mythtv# cat additional.args
ADDITIONAL_ARGS=-v record,dvbcam


Here is some of what I get from testing of one of my (working) DVB-T2
tuners:

Apr 25 01:19:48 mypvr mythbackend: mythbackend[2692]: I CoreContext
tv_rec.cpp:730 (SetRecordingStatus) TVRec[6]:
SetRecordingStatus(Unknown->Unknown) on line 172
Apr 25 01:19:48 mypvr mythbackend: mythbackend[2692]: I CoreContext
tv_rec.cpp:1738 (GetStartChannel) TVRec[6]: GetStartChannel(6)
Apr 25 01:19:49 mypvr mythbackend: mythbackend[2692]: I CoreContext
recorders/dvbchannel.cpp:287 (Open)
DVBChan[6](/dev/dvb/adapter1/frontend0): Using DVB card
/dev/dvb/adapter1/frontend0, with frontend 'Turbosight TBS 6209 (Octa
DVB-T/T2/C2/C(j83-a/b/c)/'.
Apr 25 01:19:49 mypvr mythbackend: mythbackend[2692]: I CoreContext
cardutil.cpp:1448 (GetConflictingInputs) CardUtil:
GetConflictingInputs() input 6
Apr 25 01:19:49 mypvr mythbackend: mythbackend[2692]: I CoreContext
cardutil.cpp:1479 (GetConflictingInputs) CardUtil:
GetConflictingInputs() got input 7
Apr 25 01:19:49 mypvr mythbackend: mythbackend[2692]: I CoreContext
cardutil.cpp:1479 (GetConflictingInputs) CardUtil:
GetConflictingInputs() got input 8
Apr 25 01:19:49 mypvr mythbackend: mythbackend[2692]: I CoreContext
cardutil.cpp:1479 (GetConflictingInputs) CardUtil:
GetConflictingInputs() got input 9
Apr 25 01:19:49 mypvr mythbackend: mythbackend[2692]: I CoreContext
cardutil.cpp:1479 (GetConflictingInputs) CardUtil:
GetConflictingInputs() got input 10
Apr 25 01:19:50 mypvr mythbackend: mythbackend[2692]: I TVRecEvent
tv_rec.cpp:4410 (SetFlags) TVRec[6]: SetFlags(RunMainLoop,) ->
RunMainLoop, @ tv_rec.cpp:1297
Apr 25 01:19:50 mypvr mythbackend: mythbackend[2692]: I TVRecEvent
tv_rec.cpp:4419 (ClearFlags) TVRec[6]:
ClearFlags(ExitPlayer,FinishRecording,) -> RunMainLoop, @
tv_rec.cpp:1298

If you get any errors with the tests at startup, mythbackend will mark
that tuner as "failed" and will not use it - you will not get it
showing up in the LiveTV tuner lists, and the scheduler will not
assign anything to record on it.  That sounds like what is happening
to your tuner.


More information about the mythtv-users mailing list