mn88473 (Astrometa?) problem

Added by Anders Gustafsson 9 months ago

So, I had it working, and suddenly after a restart it no longer works. The Stick is detected as DVB-T only. TVH is 4.0.7 and nothing else has changed. I have two DVB-C sticks ro recording works, but I like to have multiple tuners.

Found several posts with similar issues, fir example https://www.tvheadend.org/boards/5/topics/17895

Someone suggested running w_scan prior, which I did:

w_scan version 20141122 (compiled for DVB API 5.10)
using settings for FINLAND
DVB cable
DVB-C FI
scan type CABLE, channellist 8
output format vdr-2.0
WARNING: could not guess your codepage. Falling back to 'UTF-8'
output charset 'UTF-8', use -C <charset> to override
Info: using DVB adapter auto detection.
        /dev/dvb/adapter0/frontend0 -> "Realtek RTL2832 (DVB-T)" doesnt support CABLE -> SEARCH NEXT ONE.
        /dev/dvb/adapter0/frontend1 -> CABLE "Panasonic MN88473": very good :-))

Using CABLE frontend (adapter /dev/dvb/adapter0/frontend1)
-_-_-_-_ Getting frontend capabilities-_-_-_-_
Using DVB API 5.10
frontend 'Panasonic MN88473' supports
INVERSION_AUTO
QAM_AUTO
FEC_AUTO
FREQ (42.00MHz ... 1002.00MHz)
SRATE (1.000MSym/s ... 7.200MSym/s)
-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
146000: sr6900 (time: 00:02.424)         signal ok:     QAM_AUTO f = 146000 kHz S6900C999  (0:0:0)

No change though. Ie I disabled the tvheadend service so it would not start upon boot. Power down, power up (even pulled the sick briefly just to be sure), w-scan, then start tvheadend. It appears to loaf the firmware, but then refuses to open the adapter?

Aug 28 11:24:03 tvburk tvheadend[4201]: dvr: Creating new configuration ''
Aug 28 11:24:03 tvburk tvheadend[4201]: linuxdvb: unable to open /dev/dvb/adapter0/frontend1
Aug 28 11:22:20 tvburk tvheadend[4201]: linuxdvb: adapter added /dev/dvb/adapter0
Aug 28 11:22:20 tvburk kernel: usb 4-1.1: DVB: adapter 0 frontend 0 frequency 0 out of range (174000000..862000000)
Aug 28 11:22:19 tvburk kernel: usb 4-1.5: DVB: adapter 1 frontend 0 frequency 0 out of range (174000000..862000000)
Aug 28 11:22:19 tvburk tvheadend[4201]: linuxdvb: adapter added /dev/dvb/adapter1
Aug 28 11:22:11 tvburk tvheadend[4201]: linuxdvb: adapter added /dev/dvb/adapter2
Aug 28 11:22:11 tvburk kernel: usb 4-1.6: DVB: adapter 2 frontend 0 frequency 0 out of range (174000000..862000000)
Aug 28 11:22:04 tvburk kernel: usb 2-2: DVB: adapter 3 frontend 0 frequency 0 out of range (55000000..862000000)
Aug 28 11:22:04 tvburk kernel: si2157 14-0060: firmware version: 3.0.5
Aug 28 11:22:04 tvburk tvheadend[4201]: linuxdvb: adapter added /dev/dvb/adapter3
Aug 28 11:22:04 tvburk kernel: si2157 14-0060: found a 'Silicon Labs Si2157-A30'
Aug 28 11:22:04 tvburk kernel: si2168 13-0064: firmware version: 4.0.11
Aug 28 11:22:03 tvburk kernel: si2168 13-0064: downloading firmware from file 'dvb-demod-si2168-b40-01.fw'
Aug 28 11:22:03 tvburk kernel: si2168 13-0064: found a 'Silicon Labs Si2168-B40'
Aug 28 11:22:02 tvburk tvheadend[4201]: scanfile: ATSC - loaded 2 regions with 14 networks
Aug 28 11:22:02 tvburk tvheadend[4201]: scanfile: DVB-C - loaded 16 regions with 51 networks
Aug 28 11:22:02 tvburk tvheadend[4201]: scanfile: DVB-S - loaded 1 regions with 92 networks
Aug 28 11:22:02 tvburk tvheadend[4201]: scanfile: DVB-T - loaded 43 regions with 729 networks
Aug 28 11:22:02 tvburk tvheadend[4201]: config: loaded
Aug 28 11:22:02 tvburk tvheadend[4201]: main: Log started
Aug 28 11:22:02 tvburk systemd[1]: Cannot add dependency job for unit logrotate.timer, ignoring: Unit logrotate.timer failed to l
Aug 28 11:21:34 tvburk kernel: rtl2832 6-0010: i2c reg read failed -32
Aug 28 11:15:01 tvburk CRON[3313]: pam_unix(crond:session): session closed for user root
Aug 28 11:15:01 tvburk cron[3313]: pam_unix(crond:session): session opened for user root by (uid=0)
Aug 28 11:06:32 tvburk kernel: mn88473 6-0018: firmware parity check succeeded=0x20
Aug 28 11:06:31 tvburk kernel: mn88473 6-0018: downloading firmware from file 'dvb-demod-mn88473-01.fw'

I am stuck here :( Any ideas?


Replies (11)

RE: mn88473 (Astrometa?) problem - Added by Anders Gustafsson 9 months ago

OK. Talking to myself here...

If I reboot and start tvheadend, I get an error downloading firmware:

Aug 28 11:37:20 tvburk tvheadend[2097]: linuxdvb: adapter 3 has multiple tuners 2 for type DVB-T, only one can be use
Aug 28 11:37:20 tvburk kernel: usb 4-1.1: DVB: adapter 3 frontend 1 frequency 0 out of range (42000000..1002000000)
Aug 28 11:37:19 tvburk kernel: mn88473 13-0018: firmware download failed=-32
Aug 28 11:37:19 tvburk kernel: mn88473 13-0018: downloading firmware from file 'dvb-demod-mn88473-01.fw'

If I power on, then run 'w_scan -fc -cFI', then start tvheadend, I see:

Aug 28 12:10:07 tvburk kernel: rtl2832 6-0010: i2c reg read failed -32
Aug 28 11:55:07 tvburk kernel: mn88473 6-0018: firmware already running
Aug 28 11:55:06 tvburk kernel: mn88473 6-0018: firmware parity check succeeded=0x20
Aug 28 11:55:06 tvburk kernel: mn88473 6-0018: downloading firmware from file 'dvb-demod-mn88473-01.fw'

And the adapter shows up:

RE: mn88473 (Astrometa?) problem - Added by Mark Clarkstone 9 months ago

I have the older version of this stick using the mn88472 driver and have exactly the same issue using DVB-T. It looks like the stick locks up or something.

RE: mn88473 (Astrometa?) problem - Added by Anders Gustafsson 9 months ago

OK. I guess there is some consolation in the fact that I am not alone...

Both adapters work now:

ug 28 15:11:10 tvburk tvheadend[4552]: http: 192.168.1.4: using ticket F40D7572A1DADFECC00EB13949AF85848A1A01C0 for /stream/channel/4411270327a9c6646c48096869b552aa
Aug 28 15:11:10 tvburk tvheadend[4552]: mpegts: 138MHz in MCA - tuning on Silicon Labs Si2168 : DVB-C #0
Aug 28 15:11:10 tvburk tvheadend[4552]: subscription: 004A: "HTTP" subscribing on channel "Nelonen MP4", weight: 100, adapter: "Silicon Labs Si2168 : DVB-C #0", network: "MCA", mux: "138MHz", provider: "MCA", service: "Nelonen MP4", profile="pass", hostname="192.168.1.4", client="VLC/2.2.1 LibVLC/2.2.1" 
Aug 28 15:11:29 tvburk tvheadend[4552]: http: 192.168.1.4: HTTP/1.1 GET /1_0_1_130_B_1_FFFF0000_0_0_0.png -- 1
Aug 28 15:11:32 tvburk tvheadend[4552]: http: 192.168.1.4: using ticket 968BD59242AC76F6D977BB44BC49880D110B9DAF for /stream/channel/85a80c57c1990828c6b5f71202f4f271
Aug 28 15:11:32 tvburk tvheadend[4552]: mpegts: 162MHz in MCA - tuning on Panasonic MN88473 : DVB-C #1
Aug 28 15:11:32 tvburk tvheadend[4552]: subscription: 004B: "HTTP" subscribing on channel "TV3", weight: 100, adapter: "Panasonic MN88473 : DVB-C #1", network: "MCA", mux: "162MHz", provider: "MCA", service: "TV3", profile="pass", hostname="192.168.1.4", client="VLC/2.2.1 LibVLC/2.2.1" 
Aug 28 15:11:34 tvburk tvheadend[4552]: TS: MCA/162MHz/TV3 Transport error indicator (total 1)
Aug 28 15:11:34 tvburk tvheadend[4552]: TS: MCA/162MHz/TV3: TELETEXT @ #948 Continuity counter error (total 1)
Aug 28 15:11:34 tvburk tvheadend[4552]: TS: MCA/162MHz/TV3: MPEG2VIDEO @ #772 Continuity counter error (total 1)

even if I see this:


Aug 28 14:21:23 tvburk tvheadend[4552]: mpegts: 130MHz in MCA - tuning on Panasonic MN88473 : DVB-C #1
Aug 28 14:21:23 tvburk tvheadend[4552]: linuxdvb: Panasonic MN88473 : DVB-C #1 - failed to tune [e=Invalid argument]
Aug 28 14:21:23 tvburk tvheadend[4552]: mpegts: 202MHz in MCA - tuning on Panasonic MN88473 : DVB-C #1
Aug 28 14:21:23 tvburk tvheadend[4552]: subscription: 0018: "epggrab" subscribing to mux "202MHz", weight: 4, adapter: "Panasonic MN88473 : DVB-C #1", network: "MCA", service: "Raw PID Subscription" 

RE: mn88473 (Astrometa?) problem - Added by Anders Gustafsson 9 months ago

FWIW, this is the driver I am using:

" 
tvburk:~ # modinfo mn88473
filename:       /lib/modules/4.1.15-8-default/kernel/drivers/staging/media/mn88473/mn88473.ko
firmware:       dvb-demod-mn88473-01.fw
license:        GPL
description:    Panasonic MN88473 DVB-T/T2/C demodulator driver
author:         Antti Palosaari <[email protected]>
srcversion:     38C33AEBA4CF9046C1EFAF4
alias:          i2c:mn88473
depends:        regmap-i2c
staging:        Y
intree:         Y
vermagic:       4.1.15-8-default SMP preempt mod_unload modversions
signer:         openSUSE Secure Boot Signkey
sig_key:        03:32:FA:9C:BF:0D:88:BF:21:92:4B:0D:E8:2A:09:A5:4D:5D:EF:C8
sig_hashalgo:   sha256

I also see this patch: https://patchwork.kernel.org/patch/9094681/

RE: mn88473 (Astrometa?) problem - Added by Christian Brunner 8 months ago

I did some debuging and found out, that newer kernel drivers are looking for a specific chip_id (0x03), whereas my device reports 0x08. The behavior changed in this commit:

https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/drivers/media/dvb-frontends/mn88473.c?id=7908fad99a6cc08a41c666d425df42809b34dce2

You could try this patch:

--- mn88473.c.orig         2016-09-17 23:02:36.207362191 +0200
+++ mn88473.c      2016-09-17 23:03:10.420786897 +0200
@@ -492,7 +492,7 @@

           dev_dbg(&client->dev, "chip id=%02x\n", uitmp);

-          if (uitmp != 0x03) {
+          if (uitmp != 0x03 && uitmp != 0x08) {
               ret = -ENODEV;
               goto err_regmap_0_regmap_exit;
           }

RE: mn88473 (Astrometa?) problem - Added by Fabian Bissig 8 months ago

I have the same problem.

Also allowing chip ID 0x08 results in the stick reappearing in Tvheadend indeed.

However, I'm not able to tune in frequencies above roughly 500 MHz in DVB-C mode very well. The video becomes more and more choppy then. I'm running Tvheadend on Raspbian (Linux kernel 4.4) on a Raspberry Pi 2. By the way, this issue doesn't occur under Windows.

Can you confirm the same or is it working for you now?

RE: mn88473 (Astrometa?) problem - Added by Anders Gustafsson 8 months ago

Problem is that I have no DVB-C channels above 500MHz that I watch (or can watch). All channnels here are 130MHz to 250MHz

Still have not tried updating driver. I am running Open SUSe 42.1 FWIW

RE: mn88473 (Astrometa?) problem - Added by Эдуард Мяги 3 months ago

I'm not able to tune in frequencies above roughly 500 MHz in DVB-C mode very >> well.

Add patch:

RE: mn88473 (Astrometa?) problem - Added by Louis C 16 days ago

Hi,
I had a similar issue in the past (only getting DVB-T) but was related with user/group permissions. I've forced Tvheadend to start with "hts" user and "video" group and got back the tuner.

If I'm allowed I take the opportunity to also make a question.
I'm unable to tune 3 freq/muxes between 215 to 270 Mhz they fail to scan, all other freq/muxes are ok, inclusive some within the range.
Not sure if it will solve but I want to try the patch above on r820t.ko.
I was able to compile r820t.ko, first just this module alone after applying the patch, replace it on Kernel using same rigths, it load ok but when open channels they don't open.
I've changed the approach and compile the whole V4L modules and the them copied just the r820t.ko and replace it on the kernel, it load ok, but then is unable to open channels, similar behavior as above.
Can you give me some lights on the compilation/installation, most likely I'm doing something wrong...
Thanks!

RE: mn88473 (Astrometa?) problem - Added by Эдуард Мяги 16 days ago

Hi
Patch helps for DVB-C. When scanning ranges above 500 MHz.

Eduard.

RE: mn88473 (Astrometa?) problem - Added by Louis C 15 days ago

Hi Eduard,
Thanks for the feedback.
Any addiotional sugestion on this would be much appreciated.
Regards.

(1-11/11)