Astrometa AMDVB-T2 v2 teardown
|
Astrometa AMDVB-T2 v2 |
That device appeared to market very recently, maybe on September or August 2014. It is clearly successor of older
Astrometa HD-901T2 stick, basically having only new version of demodulator chip. Demodulator is changed from
Panasonic MN88472 to MN88473. Also PCB is revised marginally. Even USB ID same old 15f4:0131 :-(
Linux support was added to kernel 3.13, as support for old device version was added at that time. Linux driver supports only DVB-T. DVB-T2 and DVB-C are not supported as there is no driver for
MN88473 demodulator which provides those DTV standards.
I am not explaining hardware internals very detailed now, as I did quite careful review for old device version, which is very similar. Look old review here.
Key components:
Realtek RTL2832P
Panasonic MN88473
Rafael Micro R828D
PCB upper side
|
Astrometa AMDVB-T2 v2 PCB |
|
All important chips are assembled that side of the PCB. Chips counted from antenna connector are R828D
(RF tuner), MN88473 (demodulator), RTL2832P
(USB-bridge + DVB-T demodulator).
Rafael Micro R828D
|
Rafael Micro R828D |
RF tuner.
16.000 MHz crystal
|
16.000 MHz Xtal |
That 16 MHz crystal provides clock for R828D. Located near R828D, same side of PCB.
Panasonic MN88473
|
Panasonic MN88473 |
DVB-T/T2/C DTV demodulator. I think it is direct successor of MN88472. 25 MHz clock is coming from crystal located other side of the PCB.
Realtek RTL2832P
|
Realtek RTL2832P |
That chip is DTV USB-bridge, integrated DVB-T demodulator and having TS interface to connect external demodulator. On that case external demodulator is MN88473.
28.8 MHz clock is feed from the crystal, which is located another side of the PCB.
IR receiver needed by RTL2832P is assembled another side of PCB too.
2Kbit I2C serial eeprom is also other side of PCB. RTL2832P USB ID is stored there.
PCB bottom side
|
Astrometa AMDVB-T2 v2 PCB |
Visible parts are, two crystals, eeprom and IR receiver.
PCB printings:
234T2_1405
T24C02A eeprom
|
T24C02A eeprom |
Serial (I2C) eeprom, package marking "T24C02A". It is 2 Kbit eeprom. That chip contains device specific configuration, like USB ID. RTL2832P chip reads USB ID from this chip during power on and enumerates to USB bus using ID stored there.
25.000 MHz crystal
|
25.000 MHz Xtal |
That crystal provides clock for
Panasonic MN88473 chip located on the other-side of PCB.
28.800 MHz crystal
|
28.800 MHz Xtal |
That crystal provides clock for Realtek RTL2832P
chip located on the other-side of PCB.
USB interface
IDLE current drain without a driver: 94 mA
Pictures
Hi. Great work on these devices!
ReplyDeleteWhat's the state of your linux driver for this and its new demodulator? I see you made some commits recently. Does dvb-c work? Or is it the same problem as with the old revision, that missing PID filtering causes too much data for the usb bus with qam256?
Yes, I did some hacking for that device. It initially works ("works for me") on all modes, DVB-T/T2/C. Also old device version started working, but its driver supports only DVB-C. I have feeling it wasn't the PID filter problem, but some other which I was able to eventually fix...
DeleteTree is here up for testing, supporting both device versions, with standards I mentioned:
http://git.linuxtv.org/cgit.cgi/anttip/media_tree.git/log/?h=astrometa
Ok, thanks man :) I'm gonna buy a HD-901T2 and try it out
DeleteBuy that new model, I am not sure if model number is changed or same. There is newer demodulator chip and new PCB. I hope that new PCB fixes some I2C errors (likely caused by noisy I2C bus).
DeleteYeah it's the same price, so I'll just buy the new model
DeleteThis comment has been removed by the author.
ReplyDeleteHi Antti,
ReplyDeleteThank you for the drivers. I have MN88473, though in the old case, and I made it to work under Kernel 3.13 (Ubuntu 12.04LTS), and T2 and C works ok.
I have a question regarding support for Enigma 2 (Mipsel) linux set-top-boxes. The kernel is a little bit older, I think 2.6 (http://linuxtv.org/wiki/index.php/How_to_Obtain,_Build_and_Install_V4L-DVB_Device_Drivers). Is it possible to compile drivers for such devices?
You could try media_build.
Delete./build --git git://linuxtv.org/anttip/media_tree.git astrometa
-----------------
[crope@localhost media_build]$ ./build --help
Usage:
build [--help] [--man] [--verbose] [--check-only] [<--git> [URL]
[BRANCH]] [--main-git]
Options:
--help Print a brief help message and exits.
--man Prints the manual page and exits.
--verbose
Be more verbose.
--check-only
Don't do anything, except for checking if the needed
dependencies are there.
--git [URL] [BRANCH]
Allows specifying a URL and a git branch, instead of the default
ones. Currently, only linuxtv.org git URL's are supported, as
the build needs to warrant an unique namespace for git remotes.
--main-git
Use the main development git tree, as found at
.
[crope@localhost media_build]$ ./build --git git://linuxtv.org/anttip/media_tree.git astrometa
Checking if the needed tools for Fedora release 20 (Heisenbug) are available
How can i install this driver in Ubuntu???? Step by step ...pls
Deleteanyone tried compiling for openwrt ar7xx?
ReplyDeletethat would be ultra awesome... tvheadend :)
Who can help me compiling this driver for a vu+ solo2 stb box which runs kernel 3.13.3 ?
ReplyDeletehttp://archive.vuplus.com/download/kernel/stblinux-3.13.5.tar.bz2
Hi,
DeleteYou need to Install and configure VU Plus-toolchain and software development kit (SDK) to be able to compile for mipsel architecture. Please see:
http://blog.videgro.net/2013/05/how-to-compile-software-for-vu-plus/
My problem is the kernel version mismatch, I tried to take the necessary driver parts from Antti's git source (3.18) and put them in the Vu 3.13 kernel.
DeleteI know well how to build vu/dreambox images and how to use the toolchain to crosscompile a kernel manually.
You can't do like this. Try to compile as Antti explained.
Deletecd /tmp
git clone --depth=1 git://linuxtv.org/media_build.git
cd media_build
ARCH=mips \
CROSS_COMPILE=/opt/openpli4/build/tmp/sysroots/x86_64-linux/usr/bin/mipsel-oe-linux/mipsel-oe-linux- \
DIR=/opt/openpli4/build/tmp/sysroots/dm800se/usr/src/kernel/ \
make cleanall
ARCH=mips \
CROSS_COMPILE=/opt/openpli4/build/tmp/sysroots/x86_64-linux/usr/bin/mipsel-oe-linux/mipsel-oe-linux- \
DIR=/opt/openpli4/build/tmp/sysroots/dm800se/usr/src/kernel/ \
make download untar
ARCH=mips \
CROSS_COMPILE=/opt/openpli4/build/tmp/sysroots/x86_64-linux/usr/bin/mipsel-oe-linux/mipsel-oe-linux- \
DIR=/opt/openpli4/build/tmp/sysroots/dm800se/usr/src/kernel/ \
make menuconfig
### Choose what you need here (eg Enable drivers not supported by this kernel (NEW) and disabled modules not required eg Analog TV support, AM/FM radio receivers/transmitters support, Software defined radio support, Media PCI Adapters, GSPCA based webcams, USB Philips Cameras, USB ZR364XX Camera support, USB Syntek DC1125 Camera support, USB Sensoray 2255 video capture device, USBTV007 video capture support, Sensors used on soc_camera driver, Media test drivers, Remote controller decoders, Remote Controller devices)
ARCH=mips \
CROSS_COMPILE=/opt/openpli4/build/tmp/sysroots/x86_64-linux/usr/bin/mipsel-oe-linux/mipsel-oe-linux- \
DIR=/opt/openpli4/build/tmp/sysroots/dm800se/usr/src/kernel/ \
make -j 4
This is for dm800se, similar for VU+
DeleteI can't get the the compiled with the vu+solo2 3.13.5 kernel, but I succeeded for the dm800se, but the drivers are not working.
DeleteI did the following for a dm800se:
cd /data2
mkdir -p openpli4_kernel/dm800se
cd openpli4_kernel/dm800se
wget https://www.kernel.org/pub/linux/kernel/v3.0/linux-3.2.tar.gz
wget https://www.kernel.org/pub/linux/kernel/v3.0/patch-3.2.60.gz
wget http://sources.dreamboxupdate.com/download/kernel-patches/linux-dreambox-3.2-4e0356d04e89df800361b9252f990716f5523c6e.patch
untar the kernel and apply the patches
git clone --depth=1 git://linuxtv.org/media_build.git
cd media_build
ARCH=mips \
CROSS_COMPILE=/home/gertjan/openpli-oe-core.upstream/build/tmp/sysroots/x86_64-linux/usr/bin/mipsel-oe-linux/mipsel-oe-linux- \
DIR=/data2/openpli4_kernel/dm800se/linux/ \
make cleanall
ARCH=mips \
CROSS_COMPILE=/home/gertjan/openpli-oe-core.upstream/build/tmp/sysroots/x86_64-linux/usr/bin/mipsel-oe-linux/mipsel-oe-linux- \
DIR=/data2/openpli4_kernel/dm800se/linux/ \
make download untar
vi v4l/versions.txt
#[3.15.0]
# needs reset_control_get_optional
#RC_ST
#[3.10.0]
# needs include/linux/mfd/syscon.h
#IR_HIX5HD2
vi v4l/Makefile
EXTRA_CFLAGS += -Werror-implicit-function-declaration -Wno-implicit
ARCH=mips \
CROSS_COMPILE=/home/gertjan/openpli-oe-core.upstream/build/tmp/sysroots/x86_64-linux/usr/bin/mipsel-oe-linux/mipsel-oe-linux- \
DIR=/data2/openpli4_kernel/dm800se/linux/ \
make menuconfig
ARCH=mips \
CROSS_COMPILE=/home/gertjan/openpli-oe-core.upstream/build/tmp/sysroots/x86_64-linux/usr/bin/mipsel-oe-linux/mipsel-oe-linux- \
DIR=/data2/openpli4_kernel/dm800se/linux/ \
make -j 4
Somehow all modules get a vermagic=3.2.60-dm800se SMP mod_unload MIPS32_R1 32BIT, I created a little patcher to set it to 3.2-dm800se SMP mod_unload MIPS32_R1 32BIT
#!/bin/sh
Deletefor m in $(find /tmp/v4l -name "*.ko")
do
grep -q "3.2.60" $m && {
echo "patching vermagic ${m}"
sed -i 's/3.2.60-dm800se SMP mod_unload MIPS32_R1 32BIT /3.2-dm800se SMP mod_unload MIPS32_R1 32BIT \x00\x00\x00/g' $m || exit 1
}
done
exit 0
}
But I can't use drivers. I can't load dvb-usb-rtl28xxu.ko / rtl2832.ko / dvb_usb_v2.ko / dvb-core.ko
dvb_core: exports duplicate symbol dvb_ca_en50221_camchange_irq (owned by kernel)
dvb_usb_rtl28xxu: Unknown symbol dvb_usbv2_reset_resume (err 0)
dvb_usb_rtl28xxu: Unknown symbol rtl2832_get_private_i2c_adapter (err 0)
dvb_usb_rtl28xxu: Unknown symbol dvb_usbv2_suspend (err 0)
dvb_usb_rtl28xxu: Unknown symbol rtl2832_get_i2c_adapter (err 0)
dvb_usb_rtl28xxu: Unknown symbol dvb_usbv2_disconnect (err 0)
dvb_usb_rtl28xxu: Unknown symbol dvb_usbv2_probe (err 0)
dvb_usb_rtl28xxu: Unknown symbol dvb_usbv2_resume (err 0)
dvb_usb_rtl28xxu: Unknown symbol rtl2832_enable_external_ts_if (err 0)
dvb_usb_v2: Unknown symbol dvb_dmx_swfilter_raw (err 0)
dvb_usb_v2: Unknown symbol dvb_frontend_resume (err 0)
dvb_usb_v2: Unknown symbol dvb_frontend_suspend (err 0)
mn88472: Unknown symbol regmap_write (err 0)
mn88472: Unknown symbol regmap_init_i2c (err 0)
mn88472: Unknown symbol regmap_read (err 0)
mn88472: Unknown symbol regmap_bulk_write (err 0)
mn88472: Unknown symbol regmap_exit (err 0)
mn88473: Unknown symbol regmap_write (err 0)
mn88473: Unknown symbol regmap_init_i2c (err 0)
mn88473: Unknown symbol regmap_read (err 0)
mn88473: Unknown symbol regmap_bulk_write (err 0)
mn88473: Unknown symbol regmap_exit (err 0)
Hi Antti,
ReplyDeleteThere are two brunches on your git for astrometa. "astrometa_20141111" and "astrometa". Which one includes driver for demodulator for MN88473 (for T2/C)? Does the demodulator works with some of next kernel versions natively?
astrometa is newer and astrometa_20141111 is old. I will try to keep latest development stuff in astrometa tree. Currently all those astrometa tree patches are merged into linux media master also, so you could wish to try ir instead.
DeleteHi, sorry how do you compile and install the driver?
ReplyDeleteI did git clone git://linuxtv.org/anttip/media_tree.git astrometa
and then make but it seems to be compiling other kernel stuff as well?
Thanks
As initial driver is now merged to media master tree, you could try media build:
Deletehttp://www.linuxtv.org/wiki/index.php/How_to_Obtain,_Build_and_Install_V4L-DVB_Device_Drivers
Though I am not 100% sure if it will compile and install those MN88472 and MN88473 drivers, due to fact those are placed under kernel staging directory (Staging is directory in kernel tree having stuff that does not meet mainline quality. Staging stuff is not compiled by distributions.). But I still suspect media build builds staging too. Is there anyone who could confirm?
Nope, it doesn't. I think staging has to be enabled by running make menuconfig, but I encountered strange syntax errors reading Kconfig file on ubuntu 14.04lts, as many other users.
DeleteThis comment has been removed by the author.
DeleteHm i have tried make menuconfig but that has given me error as well. How did you get it installed and working on ubuntu please?
Deleteenable staging drivers and build it again
Deletemake stagingconfig
make
make install
Ok thanks will give that a go
DeleteSo:
Deletegit clone git://linuxtv.org/media_build.git
cd media_build
./build
make stagingconfig
make
make install
Would be the way to go to get this Stick up and running?
This comment has been removed by the author.
DeleteThis comment has been removed by the author.
DeleteLooks like ive got some Problems with already installed media_build_experimental, which i need for my Digital Devices Cine CT.
DeleteEverything builds fine but mn8847x does not get detected while its working on a similar System without another DVB Card and media_build_experimental installed.
Any Idea how to solve this?
No idea. You have now mixed 2 different media builds - the official one and some other for Cine CT.
DeleteLooks like Module failes to load:
Deletemn88473: Unknown symbol regmap_init_i2c (err 0)
Within a virtualbox machine the firmware failes to load. So DD Cine CT and Astrometa USB in same machine seems to be a dead end for now :(
This comment has been removed by the author.
ReplyDeleteHi. If driver for MN88472(3) now support DVB-T DVB-T2 and DVB-C how made MN88472(3) to be /dev/dvb/adapter0/frontend0, and not frontend1 ? Many program ignore frontend1 -"Panasonic MN88472" and show the only frontend0 -> "Realtek RTL2832 (DVB-T)"
ReplyDeleteYou cannot do it without changing the code... But you could still watch DVB-T even your application does not support multiple frontends ;p
DeleteI need dvb-c. However i use old trick - mv /dev/dvb/adapter0/frontend0 /dev/dvb/adapter0/frontend2 and mv /dev/dvb/adapter0/frontend1 /dev/dvb/adapter0/frontend0 .I can now watch tv :)
ReplyDeleteBut HD channels dont work. The problem with PID filters not completely solved?
What happens if you blacklist rtl28xxu driver in /etc/modprobe.d/ backlist-astrometa.conf with the content blacklist dvb-usb-rtl28xxu?
DeleteYou could not blacklist dvb-usb-rtl28xxu nor rtl2832 as those are needed.
DeleteSorry, HD channels working. The problem was in Mplayer is not correctly handles h264 stream.
ReplyDeleteP.S. What application to watch TV do you recommend?
I use VLC. There is not many reasonable choices for desktop users.
DeleteIs it possible to compile driver for kernel version 3.10.33 ?
ReplyDeleteI think it is possible. use media_build.
DeleteI have problem with firmware downloading for mn88472 getting 30-50% downloading ok , the rest fault (. After I сhanged rc-interval from 400 to 200 downloading firmware is ok ) The patch "rtl28xxu: lower the rc poll time to mitigate i2c transfer errors" from Benjamin Larsson is work fine )
ReplyDeleteI have this problem using branch "astrometa_next" _with_ the patch "rtl28xxu: lower the rc poll time to mitigate i2c transfer errors" from Benjamin Larsson with rc-interval 200. It is not so easy for driver to successfully download firmware for mn88473 for the first time after plug in the device (firmware download failed=-32). I working under VirtualBox
DeleteYou have to try in real system. Virtualbox can provide time delays that lead to such errors
DeleteThis comment has been removed by the author.
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteПривет, Друзья.
ReplyDeleteМое Устройство MN88473 в старом корпусе.
Я Научился компилировать драйвера.Спасибо всем. Но...
Windows 7 - родная программа находит 3 частоты с открытыми каналами:578Mhz(DVB-T),546Mhz(DVB-T2),498MHz(DVB-T2).
Ubuntu(Kernel 3.13.0-44) w_scan с обоими фронтендами находит 1 частоту с кодированными каналами: 562MHz(DVB-T).Аналогично Kaffeine с фронтендом RT2832
Вопрос, чего хватает ubuntu, может быть какихто dvb библиотек
Hello, Friends.
My Device MN88473 in the old building.
I Learned how to compile the driver.Thank you to everyone. But...
Windows 7 - home program finds 3 frequencies with open channels:578Mhz(DVB-T),546Mhz(DVB-T2),498MHz(DVB-T2).
Ubuntu(Kernel 3.13.0-44) w_scan with both frontends finds 1 frequency encoded channels: 562MHz(DVB-T).Similarly Kaffeine with frontend RT2832
The question of what is enough for ubuntu, maybe some dvb libraries
Приветствую. Лично я не очень давно использую данные драйвера, но думаю тебе будет полезно ознакомиться с:
Deletehttp://blog.palosaari.fi/2014/09/linux-dvb-t2-tuning-problems.html
Лично я использую dvbv5-scan для проверки и загрузки прошивки (из-за проблем, о которых писал выше) и vlc для воспроизведения. Первый мультиплекс 546Mhz DVB-T2 всё отлично работает. Второй 498MHz DVB-T2 честно говорят даже и не проверял, но, если нужно, могу завтра посмотреть.
For english speakers: just recommends for Ivan that will possibly solve his tuning problems
> 578Mhz(DVB-T)
DeleteБудьте внимательны!
Вещание цифрового эфирного телевидения стандарта DVB-T (первый мультиплекс) в Москве прекращено 15 января 2015 года.
Теперь на 578Mhz транслируют в стандарте DVB-T2.
There is no DVB-T left in Moscow, Russia. Last channel 578Mhz was switch to DVB-T2
Thank you, that I already knew.
DeleteThis comment has been removed by the author.
ReplyDeleteThis comment has been removed by the author.
DeleteI have trouble with dvblast (stable version and last one from git - same result), it tells me after timeout that there is no ts data available (warning: no DVR output, resetting). At the same time frontend has acquired signal, has acquired carrier, has acquired stable FEC, has acquired sync, has acquired lock.
ReplyDeleteAstrometa works in Vlc - receive and playing TV programs.
turn on debug in some files in astrometa_next driver
dmesg tells same usual things when playing in Vlc and when run dvblast:
rtl2832: "setting PIP mode"
dvb_usb_start_feed: "adap=0 active_fe=1 feed_type=0 setting pid [no]: 0000 (0000) at index 0
(and other different pids depending of programs chosen)
I work under VirtualBox and have visual proof that there is data stream from usb astrometa device.
For sure I even add debug message dvb_usb_core in dvb_usb_data_complete function - there was "constant" ts data reception by 4096 bytes for both vlc and dvblast that fill up dmesg log :)
I tried dvblast with different parameters. For instance:
dvblast -d 192.168.56.102:5555 -a 0 -f 546000000 -b 8
p.s. one time I started dvblast, just after vlc have stoped playing, dvblast debug told me about continuity interruption in mpeg ts packets for some pid. As far as I understand it: dvblast reading from dvr works well, but dvblast tunes astrometa in some different way than vlc.
Demod lock status bits are currently dummy - all are just set always.
DeleteI cannot see how you tell use frontend #1 for dvblast. There is option a which is set to 0, I assume it means adapter. Frontend is typically chosen using parameter named f (~all those tools uses 'a' for adapter and 'f' for frontend). So test -a 0 -f 1. Still, as it sets all demod lock flags it must be correct frontend... - or it is valid DVB-T signal and frontend 0 (RTL2832) is locked to channel. Try to remove antenna => if lock disappears you are using frontend0 (RTL2832), if it does not disappear you are using frontend1 (MN88472) (because MN88472 driver returns always full lock currently).
This comment has been removed by the author.
DeleteThank you for information about locks
Delete> I cannot see how you tell use frontend #1 for dvblast.
option -n. -f is for frequency.
I know about two available frontedns for RTL and MN. I already tried both variants -a 0 -n 0 and -a 0 -n 1, but dvblast choose always panasonic: "debug: Frontend "Panasonic MN88473" supports:". Now I can't check dvb-t channel cause there is no dvb-t left in Moscow!
I have tried to remove antenna - locks does not disappear, so I use frontend1 (MN88472) so dvblast not lying :)
Oh, by the way, when choose frontend1 "-a 0 -n 1" dvblast try to use /dev/dvb/adapter0/dvr1, and I don't see where I can tell dvblast to use dvr0.
DeleteSo anyway I theoretical choose frontend0 by "-a 0" or "-a 0 -n 0", it automatically choose frontend1 MN88472
or another variant to get dvblast to work is to move /dev/dvb/adapter0/frontend1 to /dev/dvb/adapter0/frontend0
I solved this problem. It was just because dvblast do not support DVB-T2 (I am a careful reader, yes))
DeleteAnd they even don't want it, judging by their null react on suggested patches in 2012: https://mailman.videolan.org/pipermail/dvblast-devel/2012-April/001002.html and Feb 2014:
https://mailman.videolan.org/pipermail/dvblast-devel/2014-February/001372.html (both from Russia :)
Last one help me build dvblast with DVB-T2 support that I needed.
Thank you for your attention and spirit of helpfulness!
Hi Antti,
ReplyDeleteAwesome work on the driver.
I've managed to get the MN88473 running in DVB-C mode in linux, but i'm having trouble tuning it to anything below 347MHz. Everything above 347MHz works fine.
I've got a PCTV 292e running off the same input which doesn't suffer from this issue.
Keep up the great work.
Which Software do you use test the DVB-C functionality? My Driver compiled fine, everything looks good, modules and firmware loaded, im changing the frontends by moving them manually, so frontend0 is DVB-C but dvbtune always give me 0 SNR, strength and error rate, no matter what freq. i tune to.
DeleteMy DD Cine CT does however work fine.
I'm using TVHeadend.
DeleteI had to modify the MN88473 drivers to present the adapter as a DVB-C tuner first.
How did you do this? Maybe thats the Problem why dvbtune does not work, only moving the frontend files under /dev/dvb is not enough?!?!
DeleteUpgrade to the 3.18 kernel if you haven't already.
DeleteUse my script below to run the media_build compile and insert the modifications. (this may take a while!)
$ wget https://www.dropbox.com/s/3dwntqnawh9fsi0/media_build.sh
$ chmod +x media_build.sh
$ sudo ./media_build.sh
Download the firmware and put it in the "/lib/firmware" folder
$ cd /lib/firmware/
$ sudo wget http://palosaari.fi/linux/v4l-dvb/fi...-mn88473-01.fw
Reboot and try it again.
Daniel Wandrei: current driver does not implement any signal statistics and due to that you will see zero (application should still rather show N/A than 0...)
DeleteLacie: Poor sensitivity on low DVB-C frequencies sounds more like a tuner driver problem (r820t).
DeleteDoes anyone know if there is DVB-T2 demodulator chip with hardware PID filtering possibility? (not on usb bridge side, as like rtl2832)
ReplyDeleteI don't know any. Si2168, MN88472, MN88473 all seems not to have PID filters. Also there is some Sony demods, no PID filters. PID filters are very typically implemented by bridge chip.
DeleteYou are wrong about RTL2832 filters - it is indeed RTL2832 demod (as well older RTL2830) which has PID filters - not the USB bridge.
Thank you for information. I considered silicon labs chips and didn't find anything, too :(
Delete> You are wrong about RTL2832 filters - it is indeed RTL2832 demod (as well older RTL2830) which has PID filters - not the USB bridge.
Sorry, I expressed myself with ambiguity. By "usb bridge" I meant RTL2832 as DTV USB-bridge chip with external demodulator with PID filtering, certainly.
Yeah, that's a very special case - slave demod TS is connected through a master demod and master demod even implements PID filters for slave demod. There is 2 PID filters on RTL2832 demod - one for demod itself and another for external TS IF (slave demod).
DeleteYeah, I've already found this information https://www.linuxtv.org/wiki/index.php/Astrometa_DVB-T2 and clumsy coded ext. PID-filter for only one or several PIDs just in frontend choosing function :))
Delete(I'm using it for special-purpose case, not just for watching TV as is).
Thank you for your great work once again!
Did anyone have any luck on getting DVB-C on an Enigma 2 box? I've been trying openvix with Antti drivers on media build) but have been getting kernel errors trying to load it.
ReplyDeleteWhat kind of errors?
DeleteHI Anti,
DeleteI can load some of the drivers on my Mut@nt (mn88473, r820, rtl2830, rtl2832) but if I try to load rtl28xxu or dvb_usb_v2 I am unable to.
My understanding is that I have to load rtl28xxu and dv_usb_v2 from the media_build, right?
This is what I get:
Deletedvb_usb_v2: Unknown symbol dvb_register_frontend (err -22)
dvb_usb_v2: disagrees about version of symbol dvb_frontend_suspend
dvb_usb_v2: Unknown symbol dvb_frontend_suspend (err -22)
dvb_usb_v2: disagrees about version of symbol dvb_unregister_adapter
dvb_usb_v2: Unknown symbol dvb_unregister_adapter (err -22)
dvb_usb_v2: disagrees about version of symbol dvb_dmx_init
dvb_usb_v2: Unknown symbol dvb_dmx_init (err -22)
Although the others (mn88473, r820t, etc) load fine.
Looks like dvb-core.ko module is not compatible with dvb_usb_v2.ko module. Copy all /media/ modules from media build, otherwise those are not compatible usually.
DeleteThis comment has been removed by the author.
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteHi, guys. I have obstacles to make modules after updating media_build on step when applying backports/api_version.patch.
ReplyDeletepatch -s -f -N -p1 -i ../backports/api_version.patch
The text leading up to this was:
--------------------------
|diff --git a/drivers/media/usb/uvc/uvc_driver.c b/drivers/media/usb/uvc/uvc_driver.c
|index f8135f4..9df68b6 100644
|--- a/drivers/media/usb/uvc/uvc_driver.c
|+++ b/drivers/media/usb/uvc/uvc_driver.c
--------------------------
No file to patch. Skipping patch.
1 out of 1 hunk ignored
The text leading up to this was:
--------------------------
|diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c b/drivers/media/v4l2-core/v4l2-ioctl.c
|index e0bafda..6225391 100644
|--- a/drivers/media/v4l2-core/v4l2-ioctl.c
|+++ b/drivers/media/v4l2-core/v4l2-ioctl.c
--------------------------
No file to patch. Skipping patch.
Files certainly exist, but, yes, they don't fit for patch: number of line where patch want to replace code is not match number of line in a file where it should be.
If I understand mechanism of patches correctly (sorry, I am noob in this theme) all this is due to differences between Antti's media_tree and main one, whereas patches in media_build are directed to main media_tree.
I thought I need to know old commit of media_build git upon which I built modules from Antti's media_tree successfully, but as I see only two commits 61ac3b2d... (28.01.2015) and 70eeca44... (26.11.2014) of media_build correct api_version.patch, and this correction is not regarding to uvc_driver.c or v4l2-ioctl.c! If I remember correctly I started and successfully built modules for desktop Ubuntu in December 2014.
This tells that reason of errors not in differences between Antti's and main media trees, am I right?
Of course I can apply patches manually, but I want to understand how it works. Thank you in advance.
You could use latest media tree (and media_build) as it contains all the same patches on my astrometa tree. I just updated astrometa tree to same as media tree.
DeleteCould someone make instructions how to enable staging and use media build? It is surely most easiest solution.
My bad. Forgot to call ./build :)
DeleteBy instruction you mean this one that you already wrote upwards almost all?
git clone git://linuxtv.org/media_build.git
cd media_build
./build --git git://linuxtv.org/anttip/media_tree.git astrometa #or astrometa_next
#Turn staging drivers
cd v4l
make stagingconfig
cd ..
make menuconfig
Better to use main tree, unless some good reason to test some possible latest changes.
Delete$ git clone git://linuxtv.org/media_build.git
$ cd media_build
$ ./build
$ make stagingconfig
$ make -C ./v4l/
# make install
make install must be executed as a root user.
I tried to install with latest media tree, everything is ok with install part my device is recognizes as realtek(dvb t) and panasonic as dvb c but after trying to scan every program stopped with working w_scan stopped, tvheadend stopped everything just crash. Tried with couple of system reinstalls of everything but same thing happens. What is problem ? Im talking about older astrometa stick then this.
ReplyDeleteSorry for my English and thanks in forward
Same error here with the latest media git tree.
ReplyDeleteUnable to handle kernel NULL pointer dereference at virtual address 00000008
pgd = c0004000
[00000008] *pgd=00000000
Internal error: Oops: 17 [#1] PREEMPT ARM
Modules linked in: snd_bcm2835 snd_pcm snd_seq snd_seq_device snd_timer snd ir_lirc_codec(O) ir_xmp_decoder(O) ir_mce_kbd_decoder(O) lirc_dev(O) ir_sharp_decoder(O) ir_sanyo_decoder(O) ir_sony_decoder(O) ir_jvc_decoder(O) ir_rc6_decoder(O) evdev ir_rc5_decoder(O) ir_nec_decoder(O) rtl2832_sdr(O) videobuf2_vmalloc(O) videobuf2_memops(O) videobuf2_core(O) v4l2_common(O) videodev(O) r820t(O) mn88473(O) regmap_i2c rtl2832(O) i2c_mux dvb_usb_rtl28xxu(O) dvb_usb_v2(O) dvb_core(O) btusb rc_core(O) bluetooth media(O) rfkill uio_pdrv_genirq uio sg
CPU: 0 PID: 2274 Comm: kdvb-ad-0-fe-0 Tainted: G O 3.18.7+ #755
task: d6f52880 ti: d521a000 task.ti: d521a000
PC is at media_entity_pipeline_start+0x18/0x29c [media]
LR is at dvb_frontend_thread+0x2dc/0x65c [dvb_core]
pc : [] lr : [] psr: 60000013
sp : d521be40 ip : d521bf10 fp : d521bf0c
r10: d50f2c00 r9 : 00000000 r8 : 00000000
r7 : d50f2c00 r6 : d5061094 r5 : 00000000 r4 : d5061094
r3 : 00000000 r2 : 00000000 r1 : d50f2dfc r0 : 00000000
Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel
Control: 00c5387d Table: 162f8008 DAC: 00000015
Process kdvb-ad-0-fe-0 (pid: 2274, stack limit = 0xd521a1b0)
Stack: (0xd521be40 to 0xd521c000)
be40: d521be84 d521be50 c004bca4 c004b79c c007ead4 c001d478 000157c0 c0810508
be60: d6f528b0 d521a038 c08104c0 d6f52880 00000000 c08104c0 d521beb4 d521be88
be80: c004cd94 c004bbb8 c004cd04 d6f52bc0 00000000 d521a038 c08104c0 d6f52bc0
bea0: 00000000 d521a038 d521bf54 d521beb8 c0556b80 c00c46bc d521beec d521bec8
bec0: c0046320 c00c3f98 d62b5ce4 00000001 d62b5cf0 c0556c74 00000000 00000003
bee0: d521befc d5061094 00000000 d5061094 d50f2c00 00000000 00000000 d50f2c00
bf00: d521bf64 d521bf10 bf132ae4 bf02c5ec 00000000 00000000 d521bf44 d521bf28
bf20: c0556e20 c05565ec 00000002 d6058080 00000000 d5061094 bf132808 d6058080
bf40: 00000000 d5061094 bf132808 00000000 00000000 00000000 d521bfac d521bf68
bf60: c003edf8 bf132814 d521bf94 00000000 c0046010 d5061094 00000000 d521bf7c
bf80: d521bf7c 00000000 d521bf88 d521bf88 d6058080 c003ed20 00000000 00000000
bfa0: 00000000 d521bfb0 c000e988 c003ed2c 00000000 00000000 00000000 00000000
bfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
bfe0: 00000000 00000000 00000000 00000000 00000013 00000000 ffffffff ffffffff
[] (media_entity_pipeline_start [media]) from [] (dvb_frontend_thread+0x2dc/0x65c [dvb_core])
[] (dvb_frontend_thread [dvb_core]) from [] (kthread+0xd8/0xf4)
[] (kthread) from [] (ret_from_fork+0x14/0x20)
[ 219.435521] Code: e24cb004 e24dd0a4 e52de004 e8bd4000 (e5903008)
Media build is currently broken. Fix is here, waiting for commit.
Deletehttps://patchwork.linuxtv.org/patch/28372/
Same error, changed the line in the c file and run make; sudo make install.
DeleteOr need I run ./build again?
First patch was buggy. Mauro made new one, which he already committed to master. I think master will be synchronized to media build once per day.
Delete"[PATCH v2] [media] dvb core: only start media entity if not NULL"
https://patchwork.linuxtv.org/patch/28387/
Thanks Antti, will try it out now.
DeleteIt works now but get a new error.
ReplyDeletemn88473 0-0018: Panasonic MN88473 successfully attached
mn88473 0-0018: downloading firmware from file 'dvb-demod-mn88473-01.fw'
mn88473 0-0018: firmware download failed=-32
Must the firmware to be recompiled for a ARM CPU?
I will try out this patch now.
ReplyDeletehttps://patchwork.linuxtv.org/patch/27348/
It works now with this patch; firmware downloading without error.
ReplyDeleter820t 1-003a: r820t_write: i2c wr failed=-32 reg=1d len=1: dd
ReplyDeleteWhat about this error?
Scanned with w_scan and no channels found .
It is those same random I2C errors happening... I suspect root of cause is mn88473, maybe it tries clock stretching in order to slow down I2C bus speed => which causes I2C communication failure. However, single error should not have much impact.
DeleteDid you try terrestrial or cable?
pi@raspberrypi ~ $ w_scan -fc -o 21 >> channels.conf22
Deletew_scan -fc -o 21
w_scan version 20141122 (compiled for DVB API 5.10)
guessing country 'DE', use -c to override
using settings for GERMANY
DVB cable
DVB-C
scan type CABLE, channellist 7
output format vdr-2.1
output charset 'UTF-8', use -C 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)
This dvb driver is *buggy*: the symbol rate limits are undefined - please report to linuxtv.org
-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
73000: sr6900 (time: 00:00.839) signal ok: QAM_AUTO f = 73000 kHz S6900C999 (0:0:0)
Info: no data from PAT after 2 seconds
deleting (QAM_AUTO f = 73000 kHz S6900C999 (0:0:0))
*
new transponder: (QPSK f = 0 kHz S0C0 (133:1:3)) 0x4000
new transponder: (QPSK f = 0 kHz S0C0 (133:1:33)) 0x4000
new transponder: (QPSK f = 0 kHz S0C0 (133:1:4)) 0x4000
new transponder: (QPSK f = 0 kHz S0C0 (133:1:5)) 0x4000
new transponder: (QPSK f = 0 kHz S0C0 (133:1:6)) 0x4000
new transponder: (QPSK f = 0 kHz S0C0 (133:1:7)) 0x4000
new transponder: (QPSK f = 0 kHz S0C0 (133:1:8)) 0x4000
new transponder: (QPSK f = 0 kHz S0C0 (133:1:9)) 0x4000
new transponder: (QPSK f = 0 kHz S0C0 (1:1:1043)) 0x4000
new transponder: (QPSK f = 0 kHz S0C0 (133:1:1)) 0x4000
new transponder: (QPSK f = 0 kHz S0C0 (133:1:10)) 0x4000
new transponder: (QPSK f = 0 kHz S0C0 (1:1:1003)) 0x4000
*
Update DVB-C, w_scan find sometimes channels on QAM64, vdr doesn't work with this driver. Tvheadend working on QAM64 and it find and stream tv-channels and radio. Does the driver support DVB-C QAM128 and QAM256?
DeleteI have a V1 stick, and it does work with DVB-C QAM256. However, I get quite a lot I2C errors, and it seems like it always fails to scan on some of the frequencies; there are a couple of mux'es where it always fails to find anything (where it works fine on Windows).
DeleteI used the latest media_build. I needed to apply the the rc poll time patch from Benjamin Larsson to make it succeed to load the firmware.
Is there anyway one can help out with testing/debugging of this driver?
I tried cable, maybe not enough power on the USB port? I have four USB ports on my raspberrypi, one bluetooth dongle, one 32G USB dongle and one TV dongle is connected. Also one camera with two 1w IR LEDs is connected to the mainboard. Power supply has 2A output.
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteHey! I hope you dont mind a total newbie in need of help on your blog...
ReplyDeleteI am trying to make this TV dongle work on a Synology Diskstaion (Ds211j) running (a Synology tailormade) Linux version 2.6.32.12
No recognition of stick, except it shows up at the info screen as "dvbt2 - Hanftek".
Directory /dev/dvb doesnt exist.
Once again, the newbie I am, I tried downloadong this firmware http://palosaari.fi/linux/v4l-dvb/firmware/MN88473/01/latest/ , but still no recognition....
Would appreciate any help, in as simple newbie language as possible....
Do I need to recompile your .fw file for my specific linux version?
this wont work with 2.x kernel
DeleteThis comment has been removed by the author.
ReplyDeleteHi I Have Astromedata dongle vith MN88743 chip, instaled on ubuntu desktop 14.04 with 3.19 kernel. I downloaded http://palosaari.fi/linux/v4l-dvb/firmware/MN88473/01/latest/dvb-demod-mn88473-01.fw firmware and put in /lib/firmware/.
ReplyDeleteIn kernel.log reports that everything is OK, but w_scan don`t find any channel.
It`s DVB-T2
Frekvencija 570MHz
Modulaciona šema 256-QAM
Kompresioni standard MPEG-4.10 (H.264/AVC)
Mod rada 32K
Nominalna širina kanala 8 MHz
Zaštitni interval 1/16 (1/8)
Kodni kolicnik 3/4
Pilot šema PP4 (PP2)
Tip mreže SFN
Ulazni mod A
Antenski mod SISO
PLP mod Single
Frekvencijski mod Normalni/Prošireni
FEC dužina okvira 648000
Zauzeta širina opsega 7.61 MHz
Trajanje korisnog dela simbola 3584 μs
Trajanje zaštitnog intervala 224 (448) μs
Procenjen bitski protok 40.58/41.43 (36.72/37.52)Mbps
Any help ?
Have you compiled the driver? It is not enough only to add the fw file.
DeleteWhen you run w_scan do you get message that Panasonic is detected, or just RTL?
It should be like this:
Info: using DVB adapter auto detection.
/dev/dvb/adapter0/frontend0 -> TERRESTRIAL "Realtek RTL2832 (DVB-T)": good :-)
/dev/dvb/adapter0/frontend1 -> TERRESTRIAL "Panasonic MN88473": very good :-))
Yes that ok, than scann all frequencies and find nothing :(
DeleteHi is there any solution for my problem, a try evrithing, comiled driver from source, but still no luck scaning any channel
DeleteHello,
ReplyDeleteI tried to compile media_build on Arm Orange PI with Debian 3.19.3. Make process finishes without errors but needed module (dvb-usb-rtl28xxu) not present. Can you please suggest ways to solve this issue?
Also can you say, is it possible to extract from whole media build driver and dvb core for this tuner? This maybe very useful for devices with small disk resources.
I've got the same situation, on bpi. I tried backporting as it described here ( https://backports.wiki.kernel.org/index.php/Documentation/packaging ), the compilation went well without any error or warning, but I still missing these modules: i2c_mux, dvb_usb_rtl28xxu and rtl2832
DeleteIf you compile a 3.19 kernel with Igor's script, you can select the needed modules before compiling. Don't forget to select those modules what I wrote before as well.
DeleteSee the "How to compile my own kernel or SD image?" topic of the FAQ here:
http://www.igorpecovnik.com/2015/01/18/orange-pi-debian-sd-image/
Hello!
ReplyDeleteI have Astrometa dongle first revision with MN88472 chip, installed on ubuntu desktop 15.04 with 3.19 kernel. I downloaded http://palosaari.fi/linux/v4l-dvb/firmware/MN88472/02/latest/dvb-demod-mn88472-02.fw firmware and put in /lib/firmware/.
In kernel.log reports that everything is OK
w_scan write:
Info: using DVB adapter auto detection.
/dev/dvb/adapter0/frontend0 -> TERRESTRIAL "Realtek RTL2832 (DVB-T)": good :-)
/dev/dvb/adapter0/frontend1 -> TERRESTRIAL "Panasonic MN88472": very good :-))
I get channels.conf
But vlc installed through "apt-get install vlc" can't show anything.
What do I wrong?
VLC can use the first frontend of a device, which is DVB-T.
DeleteAre you trying DVB-C? If yes:
For a temporary solution, you can swap the frontends by:
sudo mv /dev/dvb/adapter0/frontend0 /dev/dvb/adapter0/frontend2
sudo mv /dev/dvb/adapter0/frontend1 /dev/dvb/adapter0/frontend0
sudo mv /dev/dvb/adapter0/frontend2 /dev/dvb/adapter0/frontend1
Or use kaffeine instead.
I'm trying DVB-T2
Deletetzap -a 0 -d 0 -f 1 -c channels.conf -r
write FE_HAS_LOCK
But
cat /dev/dvb/adapter0/dvr0 >
give me zero size file.
I have no idea. Maybe you could try swapping the frontends, then open vlc, media -> open capture device -> capture mode: tv -> select dvb-t2 -> set the frequency manually -> play.
DeleteBut it's just a guess.
I suggest forget this frontend swapping hack, and give it a try to kaffeine. Just to make sure, that everything is working fine.
This comment has been removed by the author.
ReplyDeleteHello Antti,
ReplyDeleteIs there any news from Panasonic about the demodulator documentation?
Gyuri
Hi Antti,
ReplyDeleteThanks for the great work.
I have a MN88473 based stick and I want to check that I've followed the correct steps, I have done:
$ git clone git://linuxtv.org/media_build.git
$ cd media_build
$ ./build
$ make stagingconfig
$ make -C ./v4l/
# make install
Copied firmware to /lib/firmware
This gives me two frontends, and the first time I ran TVHeadend after this it detected 3 tuners - 2 as MN88473 (DVB-T and DVB-C) and one RTL2832 - which I think is the expected behaviour.
I've tried scanning with w_scan and scan and neither find anything using the MN88473 frontend (frontend1). TVH didn't managed to tune anything.
Since the first time TVH detected 3 frontends it now only sees the RTL2832 and the logs say "linuxdvb: unable to open /dev/dvb/adapter0/frontend1" (MN88473)
dmesg is filled with errors like:
[ 1236.533787] r820t 2-003a: r820t_write: i2c wr failed=-32 reg=0c len=1: f3
[ 1236.538755] rtl2832 1-0010: i2c reg read failed -32
[ 1239.034638] rtl2832 1-0010: i2c reg read failed -32
I've also noticed that on reboot only frontend0 is seen by ubuntu (14.04), the stick needs physically unplugging to get frontend1 back listed, is this expected behaviour?
Another error from TVH when tuning is:
2015-10-03 09:43:15.459 linuxdvb: Unhandled signal scale: 0
2015-10-03 09:43:15.471 linuxdvb: Unhandled SNR scale: 0
2015-10-03 09:43:15.471 linuxdvb: Unable to provide UNC value.
Now trying to scan DVB-C - connected to a DVB-C point and trying to scan using w_scan
Deletesudo w_scan -fc -c GB
....
/dev/dvb/adapter0/frontend1 -> CABLE "Panasonic MN88473": very good :-))
....
Nothing scanned.
dmesg is full of:
[ 647.047298] r820t 2-003a: r820t_write: i2c wr failed=-32 reg=0c len=1: f3
[ 649.548046] r820t 2-003a: r820t_write: i2c wr failed=-32 reg=0c len=1: f3
[ 652.048796] r820t 2-003a: r820t_write: i2c wr failed=-32 reg=0c len=1: f3
[ 654.549669] r820t 2-003a: r820t_write: i2c wr failed=-32 reg=0c len=1: f3
[ 657.050417] r820t 2-003a: r820t_write: i2c wr failed=-32 reg=0c len=1: f3
I've also tried OpenElec 5.95.5 which has the drivers built in and I'm having the same issue. Could it be down to the USB chipset? It's an Intel Atom 330/nvidia ION system.
DeleteI guess it's worth trying on another system.
I had the exact same issues on Ubuntu as well as on OpenELEC, didn't manage to solve it. My system is quite old and based on the AMD 780G chipset.
DeleteWith Windows 10 on the same system, the tuner works fine.
Pretty much what I'm seeing. I've resorted to using Win7 + NextPVR then adding the direct streams as IPTV sources on TVHeadend. It's messy but it seems to work surprisingly well.
DeleteThis comment has been removed by the author.
ReplyDeleteIs anyone developing this driver at the moment? From what I can see there hasn't been much activity with the mn88472/3 code for quite some time.
ReplyDeleteI hope I'm wrong tho and that the Panasonic chips get decent support at some point. I've been trying to get this stick to get HD channels with MythTV. So far frontend1 reports as dvb-t instead of 2, which I don't think is an actual problem, and scanning for channels comes up empty.
I've seen Antti has submitted a few patches to improve things on patchwork.linuxtv.org. I might try doing a "media_build" once they're accepted.
DeleteI uploaded those patches also to my git tree
Deletehttp://git.linuxtv.org/anttip/media_tree.git/log/?h=astrometa
So you may use it also using media build. Media build supports developer git trees located linuxtv.org.
$ git clone git://linuxtv.org/media_build.git
$ cd media_build/
$ ./build --git git://linuxtv.org/anttip/media_tree.git astrometa
$ make
$ sudo -s
# make install
Here cover letter of patch which moves mn88473 out of staging. I will pull request it soon. Should go to Kernel 4.6.
Deletehttp://www.spinics.net/lists/linux-media/msg97143.html
Latest firmware:
http://palosaari.fi/linux/v4l-dvb/firmware/MN88473/01/2016-02-07/
Dear Antti,
DeleteAre you planning to finalize mn88472 too or is it a completely different thing?
Thanks,
Gyuri
It is different, but not completely. Finalizing of mn88473 took 3 days, mn88472 is about same size of workload. I have been waiting if Benjamin Larsson would like to finalize it.
DeleteEven I spoke about finalizing, it still does not mean it is final. It is ready enough to mainline with minimal set of features. It just works, but many features are missing: all the signal statistics (block error reporting, bit error reporting, signal noise ratio reporting), and DVB-T2 multi-PLP support.
I hope once you will have time and spirit to make it.
DeleteThanks for your reply and thanks for your works on these DVB stuffs!
Hi Antti,
DeleteI have this device and I'm trying the driver in the current astrometa branch, but I'm getting the following null pointer dereference while starting tvheadend:
http://pastebin.com/DMwM6u56
Did I do something wrong?
Cheers,
Alex
Feb 12 17:42:43 htpc kernel: [ 63.277855] mn88473: module is from the staging directory, the quality is unknown, you have been warned.
DeleteIt is still loading old driver from the staging directory. You have to remove it. Use rmmod mn88473 to remove driver from memory. Then use modinfo mn88473 command to see which driver it loads. If modinfo command show /xx/staging/xx/mn88473 as file patch, when remove that driver by rm /xx/staging/xx/mn88473 and after that run depmod -a. Then do modinfo mn88473 again to see which driver is loaded.
Antti... What kernel is needed?
DeleteI'm running 3.19.0-49-generic on ubuntu 14.04.03 LTS and the patching is failing
http://pastebin.com/PzpTabUd
Is it best if I just upgrade to 4.x?
That was it, Antti, thanks a lot! It works just fine now!
DeleteTried kernel 4.4.1
DeleteIt fails differently - http://pastebin.com/BWHSGFgD
4.2?
AT it fails to that:
DeleteMakefile:660: Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: -fstack-protector-strong not supported by compiler
CC [M] /home/dvbc/astrometa/new-2016/media_build/v4l/msp3400-driver.o
gcc: error: unrecognized command line option '-fstack-protector-strong'
make[3]: *** [/home/dvbc/astrometa/new-2016/media_build/v4l/msp3400-driver.o] Error 1
I really do not care to waste my time to resolve all these media build errors, sorry. Hopefully someone else could do it. Try to disable msp3400 driver from config (and don't ask how to do it :)
According to log Jimbo seems to have 4.2.0-27-generic kernel and media build installed successfully.
Thanks Antti
DeleteI wouldn't want you to waste your time, thanks for all the work on this.
I'll have a look at that and give that kernel a go. Thanks for the pointers.
Media build works generally better for recent kernels as less backporting is needed. Also older kernels could have missing some stuff used by newer drivers - for example I2C mux support is one of such feature which tends to be disabled in many older kernels and it is used by many newer drivers. Regmap is another thing. Both I2C mux and regmap are needed for Astrometa.
DeleteYou could also clone my delopment tree and install it like a new kernel (it contains whole kernel 4.5.0-rc1+).
http://git.linuxtv.org/anttip/media_tree.git/log/?h=astrometa
Compiling breaks with Debian Jessie on 3.16 and 4.6 Kernel:
Deletehttp://pastebin.com/paKHKYwx
Is this a media_build or mn8847X Driver related?
This comment has been removed by a blog administrator.
ReplyDeleteThis comment has been removed by a blog administrator.
ReplyDeleteHi Antti,
ReplyDeleteI just received my astrometa device and verified it can show hd channels on windows. On linux I can scan the channels but viewing them with vlc only works with sd channels. VLC says something about cannot set parameters. MN88473 module is loaded and kernel is stock 4.2.0 general in Ubuntu. Firmware is located in /lib/firmware/dvb-demod-mn88473-01.fw I cannot see any information from firmware loading.
What am I doing wrong? Can you give me some hints?
I think VLC do not know how to tune any other than frontend number 0. That device has 2 frontends. Frontend 0 is RTL2832 which supports only DVB-T and frontend 1 is MN88473 which supports DVB-T, DVB-T2 and DVB-C.
DeleteOne hackish solution is to use dvbv5-zap for tuning and VLC for viewing.
$ dvbv5-zap "Yle TV1 HD" --adapter=0 --frontend=1 --record
$ vlc --dvb-budget-mode dvb://
good afternoon. following problem with the tuner and the latest driver. tvheadend finds no channels at frequencies above 600 mhz. 4.1.18 version of the kernel frequency 88 mhz and 600 mhz channel is excellent.
ReplyDeleteWhich broadcast standard?
Deletedvb-c russian
Deletehardware raspberry pi2 software raspbian or osmc. a problem in any of these distributions
DeleteCan you try both firmwares from here:
Deletehttp://palosaari.fi/linux/v4l-dvb/firmware/MN88473/01/
Also, is it possible to use w_scan ?
What channels are found? Is there some transmission parameter set differently those channels found and not found?
check with both drivers and with the last driver and 2014 logs w-scan lay out in 10 minutes
Deleteosmc@osmc:~$ w_scan -fc -c RU
Deletew_scan version 20130331 (compiled for DVB API 5.4)
using settings for RUSSIAN FEDERATION
Country identifier RU not defined. Using defaults.
scan type CABLE, channellist 4
output format vdr-2.0
WARNING: could not guess your codepage. Falling back to 'UTF-8'
output charset 'UTF-8', use -C 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.a
frontend 'Panasonic MN88473' supports
INVERSION_AUTO
QAM_AUTO
FEC_AUTO
FREQ (42.00MHz ... 1002.00MHz)
SRATE (1.000MSym/s ... 7.200MSym/s)
-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
474000: sr6900 (time: 00:02) sr6875 (time: 00:05)
482000: sr6900 (time: 00:08) sr6875 (time: 00:12)
490000: sr6900 (time: 00:15) sr6875 (time: 00:18)
498000: sr6900 (time: 00:21) sr6875 (time: 00:24)
506000: sr6900 (time: 00:27) sr6875 (time: 00:31)
514000: sr6900 (time: 00:34) sr6875 (time: 00:37)
522000: sr6900 (time: 00:40) sr6875 (time: 00:43)
530000: sr6900 (time: 00:47) sr6875 (time: 00:50)
538000: sr6900 (time: 00:53) (time: 00:54) signal ok:
QAM_AUTO f = 538000 kHz S6900C999
undefined outer fec
updating transponder:
(QAM_AUTO f = 538000 kHz S6900C999) 0x0000
to (QAM_256 f = 538000 kHz S6750C34) 0x4044
546000: sr6900 (time: 01:06) sr6875 (time: 01:09)
554000: sr6900 (time: 01:12) sr6875 (time: 01:16)
562000: sr6900 (time: 01:19) sr6875 (time: 01:22)
570000: sr6900 (time: 01:25) sr6875 (time: 01:28)
578000: sr6900 (time: 01:32) (time: 01:33) signal ok:
QAM_AUTO f = 578000 kHz S6900C999
undefined outer fec
updating transponder:
(QAM_AUTO f = 578000 kHz S6900C999) 0x0000
to (QAM_256 f = 578000 kHz S6750C34) 0x4044
586000: sr6900 (time: 01:45) sr6875 (time: 01:48)
594000: sr6900 (time: 01:51) (time: 01:52) signal ok:
QAM_AUTO f = 594000 kHz S6900C999
undefined outer fec
updating transponder:
(QAM_AUTO f = 594000 kHz S6900C999) 0x0000
to (QAM_256 f = 594000 kHz S6750C34) 0x4044
602000: sr6900 (time: 02:04) sr6875 (time: 02:08)
610000: sr6900 (time: 02:11) sr6875 (time: 02:14)
618000: sr6900 (time: 02:17) sr6875 (time: 02:20)
626000: sr6900 (time: 02:24) sr6875 (time: 02:27)
634000: sr6900 (time: 02:30) (time: 02:33)
sr6875 (time: 02:34)
642000: sr6900 (time: 02:37) sr6875 (time: 02:41)
650000: sr6900 (time: 02:44) sr6875 (time: 02:47)
658000: sr6900 (time: 02:50) sr6875 (time: 02:53)
666000: sr6900 (time: 02:57) sr6875 (time: 03:00)
674000: sr6900 (time: 03:03) sr6875 (time: 03:06)
682000: sr6900 (time: 03:09) (time: 03:10)
sr6875 (time: 03:12) (time: 03:13)
690000: sr6900 (time: 03:15) (time: 03:16) signal ok:
QAM_AUTO f = 690000 kHz S6900C999
Info: no data from NIT(actual)
698000: sr6900 (time: 03:29) (time: 03:30) signal ok:
QAM_AUTO f = 698000 kHz S6900C999
WARNING: received garbage data: crc = 0xea8b6187; expected crc = 0x6196db54
increasing filter timeout.
WARNING: received garbage data: crc = 0xffe9295e; expected crc = 0x6716db56
Info: no data from NIT(actual)
ReplyDelete706000: sr6900 (time: 04:22) (time: 04:24) signal ok:
QAM_AUTO f = 706000 kHz S6900C999
Info: no data from NIT(actual)
714000: sr6900 (time: 04:37) sr6875 (time: 04:40)
722000: sr6900 (time: 04:44) sr6875 (time: 04:47)
730000: sr6900 (time: 04:50) sr6875 (time: 04:53)
738000: sr6900 (time: 04:56) sr6875 (time: 05:00)
746000: sr6900 (time: 05:03) sr6875 (time: 05:06)
754000: sr6900 (time: 05:09) sr6875 (time: 05:12)
762000: sr6900 (time: 05:15) sr6875 (time: 05:19)
770000: sr6900 (time: 05:22) sr6875 (time: 05:25)
778000: sr6900 (time: 05:28) sr6875 (time: 05:31)
786000: sr6900 (time: 05:35) sr6875 (time: 05:38)
794000: sr6900 (time: 05:41) sr6875 (time: 05:44)
802000: sr6900 (time: 05:48) sr6875 (time: 05:51)
810000: sr6900 (time: 05:54) sr6875 (time: 05:57)
818000: sr6900 (time: 06:00) sr6875 (time: 06:04)
826000: sr6900 (time: 06:07) sr6875 (time: 06:10)
834000: sr6900 (time: 06:13) sr6875 (time: 06:16)
842000: sr6900 (time: 06:20) sr6875 (time: 06:23)
850000: sr6900 (time: 06:26) sr6875 (time: 06:29)
858000: sr6900 (time: 06:32) sr6875 (time: 06:35)
tune to: QAM_256 f = 538000 kHz S6750C34
(time: 06:39) undefined outer fec
service = Glazella 3D (DV Crypt)
service = Mute 3D (DV Crypt)
service = AnyDay 3D (DV Crypt)
service = Music 1 HD (DV Crypt)
service = Radio Business (DV Crypt)
service = Radio Humor (DV Crypt)
service = Radio City (DV Crypt)
service = Radio Romantika (DV Crypt)
service = Radio Energy (DV Crypt)
service = Radio Avtoradio (DV Crypt)
service = Radio Dorozhnoe (DV Crypt)
service = Radio R.S.N. (DV Crypt)
service = Radio Record (DV Crypt)
service = Radio Relax (DV Crypt)
service = Radio Chanson (DV Crypt)
tune to: QAM_256 f = 578000 kHz S6750C34
(time: 06:51) undefined outer fec
service = 24 Techno (DV Crypt)
service = HCT (DV Crypt)
service = 24 Doc (DV Crypt)
service = EGE (DV Crypt)
service = Discovery Show HD (DV Crypt)
service = Animal Planet HD (DV Crypt)
service = Ulibka rebenka (DV Crypt)
service = Amedia 1 (DV Crypt)
tune to: QAM_256 f = 594000 kHz S6750C34
(time: 07:03) undefined outer fec
service = Match! Arena HD (DV Crypt)
service = Nayka 2.0 (DV Crypt)
service = Travel+Adventure HD (DV Crypt)
service = Rossia HD (DV Crypt)
service = Telekanal 360 HD (DV Crypt)
tune to: QAM_AUTO f = 690000 kHz S6900C999
Delete(time: 07:15) Info: no data from PAT
Info: no data from SDT(actual)
Info: no data from NIT(actual)
tune to: QAM_AUTO f = 698000 kHz S6900C999
(time: 07:28) Info: no data from PAT
Info: no data from SDT(actual)
Info: no data from NIT(actual)
tune to: QAM_AUTO f = 706000 kHz S6900C999
(time: 07:41) ----------no signal----------
tune to: QAM_AUTO f = 706000 kHz S6900C999 (no signal)
(time: 07:42) WARNING: received garbage data: crc = 0x52032306; expected crc = 0xa242ffff
increasing filter timeout.
Info: no data from SDT(actual)
Info: no data from PAT
Info: no data from NIT(actual)
dumping lists (28 services)
Glazella 3D;DV Crypt:538000:M256:C:6750:4096=27:4097=eng@15:0:0:2144:145:268:0
Mute 3D;DV Crypt:538000:M256:C:6750:4112=27:4113=eng@15:0:0:2145:145:268:0
AnyDay 3D;DV Crypt:538000:M256:C:6750:4128=27:4129=eng@15:0:0:2146:145:268:0
Music 1 HD;DV Crypt:538000:M256:C:6750:4144=27:4145=rus@4:0:0:2147:145:268:0
Radio Business;DV Crypt:538000:M256:C:6750:0:4160@3:0:0:2148:145:268:0
Radio Humor;DV Crypt:538000:M256:C:6750:0:4176@3:0:0:2149:145:268:0
Radio City;DV Crypt:538000:M256:C:6750:0:4192@3:0:0:2150:145:268:0
Radio Romantika;DV Crypt:538000:M256:C:6750:0:4208@3:0:0:2151:145:268:0
Radio Energy;DV Crypt:538000:M256:C:6750:0:6144@3:0:0:2752:145:268:0
Radio Avtoradio;DV Crypt:538000:M256:C:6750:0:6160@3:0:0:2753:145:268:0
Radio Dorozhnoe;DV Crypt:538000:M256:C:6750:0:6176@4:0:0:2754:145:268:0
Radio R.S.N.;DV Crypt:538000:M256:C:6750:0:6192@3:0:0:2755:145:268:0
Radio Record;DV Crypt:538000:M256:C:6750:0:6208@3:0:0:2756:145:268:0
Radio Relax;DV Crypt:538000:M256:C:6750:0:6224@3:0:0:2757:145:268:0
Radio Chanson;DV Crypt:538000:M256:C:6750:0:6240@4:0:0:2758:145:268:0
24 Techno;DV Crypt:578000:M256:C:6750:3456=2:3457@3:0:0:2168:145:271:0
HCT;DV Crypt:578000:M256:C:6750:3458=2:3459@3:0:0:2169:145:271:0
24 Doc;DV Crypt:578000:M256:C:6750:3460=2:3461=rus@4:0:0:2170:145:271:0
EGE;DV Crypt:578000:M256:C:6750:3462=27:3463=rus@4:0:0:2171:145:271:0
Discovery Show HD;DV Crypt:578000:M256:C:6750:3464=27:0;3465,3466:0:0:2172:145:271:0
Animal Planet HD;DV Crypt:578000:M256:C:6750:3467=27:3468=rus@4,3469=eng:0:0:2173:145:271:0
Ulibka rebenka;DV Crypt:578000:M256:C:6750:3470=27:3471@3:0:0:2174:145:271:0
Amedia 1;DV Crypt:578000:M256:C:6750:3472=27:3473@4:0:0:2175:145:271:0
Match! Arena HD;DV Crypt:594000:M256:C:6750:3840=27:3841=rus@4:0:0:2192:145:274:0
Nayka 2.0;DV Crypt:594000:M256:C:6750:3842=2:3843@3:0:0:2193:145:274:0
Travel+Adventure HD;DV Crypt:594000:M256:C:6750:3844=27:3845=rus@3,3846=eng:0:0:2194:145:274:0
Rossia HD;DV Crypt:594000:M256:C:6750:3847=27:3848=eng@3:0:0:2195:145:274:0
Telekanal 360 HD;DV Crypt:594000:M256:C:6750:3849=27:3850=eng@3:0:0:2196:145:274:0
Done.
osmc@osmc:~$
if you want I can give you ssh access to the device
Deletein windows over 600 mhz channels are also shown . therefore defective antenna problem can be eliminated .
Deleteparameters of all channels are equal. 6750 256
DeleteNow w-scan behaves as if all does not see the signal at frequencies above 600mhz signal at exactly there .
Delete602000: sr6900 (time: 02:03) sr6875 (time: 02:06)
Delete610000: sr6900 (time: 02:09) sr6875 (time: 02:13)
618000: sr6900 (time: 02:16) sr6875 (time: 02:19)
626000: sr6900 (time: 02:22) sr6875 (time: 02:25)
634000: sr6900 (time: 02:28) sr6875 (time: 02:32)
642000: sr6900 (time: 02:35) sr6875 (time: 02:38)
650000: sr6900 (time: 02:41) sr6875 (time: 02:44)
658000: sr6900 (time: 02:48) sr6875 (time: 02:51)
666000: sr6900 (time: 02:54) sr6875 (time: 02:57)
674000: sr6900 (time: 03:00) sr6875 (time: 03:04)
682000: sr6900 (time: 03:07) sr6875 (time: 03:10)
690000: sr6900 (time: 03:13) sr6875 (time: 03:16)
698000: sr6900 (time: 03:20) sr6875 (time: 03:23)
706000: sr6900 (time: 03:26) sr6875 (time: 03:29)
714000: sr6900 (time: 03:32) sr6875 (time: 03:36)
722000: sr6900 (time: 03:39) sr6875 (time: 03:42)
730000: sr6900 (time: 03:45) sr6875 (time: 03:48)
738000: sr6900 (time: 03:52) sr6875 (time: 03:55)
746000: sr6900 (time: 03:58) sr6875 (time: 04:01)
754000: sr6900 (time: 04:04) sr6875 (time: 04:07)
762000: sr6900 (time: 04:11) sr6875 (time: 04:14)
770000: sr6900 (time: 04:17) sr6875 (time: 04:20)
778000: sr6900 (time: 04:23) sr6875 (time: 04:27)
786000: sr6900 (time: 04:30) sr6875 (time: 04:33)
794000: sr6900 (time: 04:36) sr6875 (time: 04:39)
802000: sr6900 (time: 04:43) sr6875 (time: 04:46)
810000: sr6900 (time: 04:49) sr6875 (time: 04:52)
818000: sr6900 (time: 04:55) sr6875 (time: 04:59)
826000: sr6900 (time: 05:02) sr6875 (time: 05:05)
834000: sr6900 (time: 05:08) sr6875 (time: 05:11)
842000: sr6900 (time: 05:15) sr6875 (time: 05:18)
850000: sr6900 (time: 05:21) sr6875 (time: 05:24)
858000: sr6900 (time: 05:27) sr6875 (time: 05:31)
For my live network it finds all the muxes, but maximum frequency used is only 394 MHz. Can you send ssh login to my email I could check?
DeleteThis comment has been removed by the author.
DeleteI sent you ssh access to facebook
DeleteGot it. You are running a bit old kernel and driver, but I think I have good idea which causes the problem...
Deletelogs tvheadend
ReplyDelete2016-03-14 18:49:41.000 mpegts: 594MHz in bks - tuning on Panasonic MN88473 : DVB-C #1
2016-03-14 18:49:41.001 subscription: 007E: "scan" subscribing to mux "594MHz", weight: 2, adapter: "Panasonic MN88473 : DVB-C #1", network: "bks", service: "Raw PID Subscription"
2016-03-14 18:49:45.003 mpegts: 594MHz in bks scan complete
2016-03-14 18:49:45.004 subscription: 007E: "scan" unsubscribing
2016-03-14 18:49:55.000 mpegts: 818MHz in bks - tuning on Panasonic MN88473 : DVB-C #1
2016-03-14 18:49:55.001 subscription: 0080: "scan" subscribing to mux "818MHz", weight: 2, adapter: "Panasonic MN88473 : DVB-C #1", network: "bks", service: "Raw PID Subscription"
2016-03-14 18:50:00.000 mpegts: 818MHz in bks - scan no data, failed
I've got a similar issue where anything over 680 MHz fails to scan, but on Windows it scans ok.
ReplyDeleteSensitivity problem of higher frequencies is caused likely one of these r820t driver patches:
ReplyDelete275350a [media] r820t: enable flt_ext_wide for SYS_DVBC_ANNEX_A standard
d03b550 [media] r820t: add settings for SYS_DVBC_ANNEX_C standard
7b7ef4b [media] r820t: add DVBC profile in sysfreq_sel
I could try to dig it out later using signal generator...
thanks
DeleteGood news for Ubuntu user. The kernel 4.5 have compiled module for mn88472 and mn88473 ( but it still in staging )
ReplyDeletebuild.log :
" Media staging drivers
*
Media staging drivers (STAGING_MEDIA) [Y/n/?] y
Broadcom BCM2048 FM Radio Receiver support (I2C_BCM2048) [M/n/?] m
CXD2099AR Common Interface driver (DVB_CXD2099) [M/n/?] m
Panasonic MN88472 (DVB_MN88472) [M/n/?] m
Panasonic MN88473 (DVB_MN88473) [M/n/?] m
"
http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.5-wily/
Not so good news for me since upgrading to the newest 16.04 LTS.
DeleteWorked fine on 15.10 with self compiled staging drivers (as above), but with the newest distro I constantly get a problem with loading the mn88473 firmware:
[Tue May 31 00:23:46 2016] mn88473 7-0018: downloading firmware from file 'dvb-demod-mn88473-01.fw'
[Tue May 31 00:23:46 2016] mn88473 7-0018: firmware download failed=-32
Anybody else having trouble with this?
Do the higher frequency sensitivity problems apply to DVB-T/T2 also?
ReplyDeleteI am quite sure that my adapter0/frontend1 (MN88473) is now working with the correct driver and firmware, as I am able to carry out channel scans in my mythtv backend, but I am unable to see any DVBT2 channels.
DVBT2 channels in my area broadcast on C53, 730.0MHz.
Many thanks Antti for your amazing work on this device.
I seem to have an issue with getting T2 working.
ReplyDeletew_scan (20141122) when scanning finds the T2 mux on the first pass, but on the second pass (where it lists actual channels) it fails to tune to dvb-t2. This is even when specifying slowest tuning timeout. Regular T channels are detected OK. I have only managed to it to find T2 channels with dvbscan initial_tuning_data file supplied and even then T2 channels are found if that mux is either first or last in the list.
Tvheadend (4.0.8 and 4.0.9) finds and works with T channels, but fails with T2 channels with what looks like timeouts to the untrained eye? Relevant bits from log:
2016-04-16 11:35:01.308 [ TRACE]:linuxdvb: Panasonic MN88473 : DVB-T #1 - checking FE status (ready)
2016-04-16 11:35:01.310 [ DEBUG]:linuxdvb: Panasonic MN88473 : DVB-T #1 - status GOOD (SIGNAL | CARRIER | VITERBI | SYNC | SIGNAL)
2016-04-16 11:35:01.310 [ DEBUG]:linuxdvb: Panasonic MN88473 : DVB-T #1 - locked
2016-04-16 11:35:01.311 [ TRACE]:thread: created thread -1551896688 [linuxdvb_fronten / 0x859e1(0x136e10)]
2016-04-16 11:35:01.311 [ TRACE]:mpegts: table: mux 0x133378 add pat 00/00 (0) pid 0000 (0)
2016-04-16 11:35:01.311 [ DEBUG]:mpegts: 642MHz in Levira HD - open PID 0000 (0) [20/0x2017b8]
2016-04-16 11:35:01.311 [ TRACE]:mpegts: table: mux 0x133378 add cat 01/FF (1) pid 0001 (1)
2016-04-16 11:35:01.311 [ DEBUG]:mpegts: 642MHz in Levira HD - open PID 0001 (1) [16/0x204530]
2016-04-16 11:35:01.311 [ TRACE]:mpegts: table: mux 0x133378 add nit 00/00 (0) pid 0010 (16)
2016-04-16 11:35:01.311 [ DEBUG]:mpegts: 642MHz in Levira HD - open PID 0010 (16) [16/0x2230a8]
2016-04-16 11:35:01.311 [ TRACE]:mpegts: table: mux 0x133378 add sdt 40/F8 (64) pid 0011 (17)
2016-04-16 11:35:01.312 [ DEBUG]:mpegts: 642MHz in Levira HD - open PID 0011 (17) [20/0x2244c8]
2016-04-16 11:35:01.312 [ TRACE]:mpegts: table: mux 0x133378 add bat 48/F8 (72) pid 0011 (17)
2016-04-16 11:35:01.312 [ DEBUG]:mpegts: 642MHz in Levira HD - open PID 0011 (17) [16/0x2261d0]
2016-04-16 11:35:01.313 [ TRACE]:linuxdvb: Panasonic MN88473 : DVB-T #1 - open PID 0012 (18) fd 43
2016-04-16 11:35:01.314 [ TRACE]:linuxdvb: Panasonic MN88473 : DVB-T #1 - open PID 0039 (57) fd 44
2016-04-16 11:35:01.314 [ TRACE]:linuxdvb: Panasonic MN88473 : DVB-T #1 - open PID 0BBA (3002) fd 42
2016-04-16 11:35:01.314 [ TRACE]:linuxdvb: Panasonic MN88473 : DVB-T #1 - open PID 0BBB (3003) fd 45
2016-04-16 11:35:01.319 [ TRACE]:linuxdvb: Panasonic MN88473 : DVB-T #1 - open PID 0000 (0) fd 46
2016-04-16 11:35:01.319 [ TRACE]:linuxdvb: Panasonic MN88473 : DVB-T #1 - open PID 0001 (1) fd 47
2016-04-16 11:35:01.320 [ TRACE]:linuxdvb: Panasonic MN88473 : DVB-T #1 - open PID 0010 (16) fd 49
2016-04-16 11:35:01.320 [ TRACE]:linuxdvb: Panasonic MN88473 : DVB-T #1 - open PID 0011 (17) fd 50
2016-04-16 11:35:02.308 [ TRACE]:linuxdvb: Panasonic MN88473 : DVB-T #1 - checking FE status (ready)
2016-04-16 11:35:02.311 [ TRACE]:linuxdvb: Panasonic MN88473 : DVB-T #1 - status 1 (001F)
2016-04-16 11:35:03.308 [ TRACE]:linuxdvb: Panasonic MN88473 : DVB-T #1 - checking FE status (ready)
2016-04-16 11:35:03.311 [ TRACE]:linuxdvb: Panasonic MN88473 : DVB-T #1 - status 1 (001F)
2016-04-16 11:35:04.309 [ TRACE]:linuxdvb: Panasonic MN88473 : DVB-T #1 - checking FE status (ready)
2016-04-16 11:35:04.311 [ TRACE]:linuxdvb: Panasonic MN88473 : DVB-T #1 - status 1 (001F)
2016-04-16 11:35:05.000 [ DEBUG]:service: 642MHz in Levira HD: Status changed to [Graceperiod expired] [Data timeout]
...
I've verified that DVB-T2 works in Windows. Under linux all I have gotten only so far that using dvbv5-zap to tune to dvb-t2 and then dumping channel to a file produces playable files.
dvbv5-scan finds channels OK (albeit without BER and such things).
I'm using 4.4.4 with drivers from anttip/media_tree.git (astrometa) patched in on arm box (banana pi with allwinner A20 cpu).
Hi Antti.
ReplyDeleteGreat work assisting with getting this tuner to work.
I am experiencing same behaviour as ssmol on DVB-C - Almost every frequency above 570 causes severe continuity errors - On differnet DVB-C USB tuner(Terratec), I have no errors on exact same coax cable.
I am running Openelec 7 Beta 2 with Kernel 4.4
Did you find the root cause, and is the solution in a later kernel release or firmware?
Logs from Tvheadend:
2016-04-23 20:15:42.089 TS: DVB-C/570MHz/DR2Syn: TELETEXT @ #2329 Continuity counter error (total 143)
2016-04-23 20:15:42.132 TS: DVB-C/570MHz/DR2Syn: MPEG2AUDIO @ #3861 Continuity counter error (total 97)
2016-04-23 20:15:44.568 pass-sdt: invalid checksum (len 430, errors 115)
2016-04-23 20:15:47.228 TS: DVB-C/570MHz/DR2Syn Transport error indicator (total 11539)
2016-04-23 20:15:49.158 TS: DVB-C/570MHz/DR2Syn: H264 @ #2320 Continuity counter error (total 3412)
2016-04-23 20:15:49.409 pass-eit: invalid checksum (len 217, errors 316)
2016-04-23 20:15:57.557 TS: DVB-C/570MHz/DR2Syn: MPEG2AUDIO @ #3861 Continuity counter error (total 103)
2016-04-23 20:15:57.703 TS: DVB-C/570MHz/DR2Syn: TELETEXT @ #2329 Continuity counter error (total 154)
2016-04-23 20:15:58.015 TS: DVB-C/570MHz/DR2Syn Transport error indicator (total 12124)
2016-04-23 20:15:58.717 pass-sdt: invalid checksum (len 110, errors 130)
2016-04-23 20:16:00.016 pass-eit: invalid checksum (len 1342, errors 328)
2016-04-23 20:16:02.297 TS: DVB-C/570MHz/DR2Syn: H264 @ #2320 Continuity counter error (total 3532)
2016-04-23 20:16:09.603 pass-sdt: invalid checksum (len 36, errors 133)
2016-04-23 20:16:11.951 TS: DVB-C/570MHz/DR2Syn Transport error indicator (total 12519)
2016-04-23 20:16:13.056 TS: DVB-C/570MHz/DR2Syn: H264 @ #2320 Continuity counter error (total 3654)
2016-04-23 20:16:13.056 TS: DVB-C/570MHz/DR2Syn: MPEG2AUDIO @ #3861 Continuity counter error (total 110)
2016-04-23 20:16:13.094 TS: DVB-C/570MHz/DR2Syn: TELETEXT @ #2329 Continuity counter error (total 159)
2016-04-23 20:16:14.279 pass-eit: invalid checksum (len 1413, errors 337)
2016-04-23 20:16:20.059 pass-sdt: invalid checksum (len 193, errors 138)
2016-04-23 20:16:23.350 TS: DVB-C/570MHz/DR2Syn Transport error indicator (total 12927)
2016-04-23 20:16:24.880 pass-pat: invalid checksum (len 52, errors 4)
2016-04-23 20:16:24.884 TS: DVB-C/570MHz/DR2Syn: H264 @ #2320 Continuity counter error (total 3829)
2016-04-23 20:16:28.545 TS: DVB-C/570MHz/DR2Syn: MPEG2AUDIO @ #3861 Continuity counter error (total 115)
2016-04-23 20:16:28.620 TS: DVB-C/570MHz/DR2Syn: TELETEXT @ #2329 Continuity counter error (total 167)
2016-04-23 20:16:29.919 pass-eit: invalid checksum (len 1037, errors 365)
2016-04-23 20:16:35.210 pass-sdt: invalid checksum (len 342, errors 146)
2016-04-23 20:16:36.982 TS: DVB-C/570MHz/DR2Syn Transport error indicator (total 13481)
2016-04-23 20:16:36.982 TS: DVB-C/570MHz/DR2Syn: H264 @ #2320 Continuity counter error (total 3943)
Thanks in advance.
/Morten
That poor DVB-C sensitivity on higher frequencies seems to be common issue.
DeleteOn Windows it seems to be ok with higher frequencies.
DeleteHas anyone got this to work with MythTV?
ReplyDeleteI've been trying the media_build tree with the 4.4.0 ubuntu kernel but when I try to scan with MythTV it either fails to find any channels or it fails to open the frontend at all.
I've checked the stick with windows and it worked perfectly.
I also got the same errors as "AT" posted here before. I am on Ubuntu with Kernel 4.4. and really appreciate your work. It would be awesome if somebody could post full instructions how he/she got the MN88473-based stick working with DVB-C/T2!
ReplyDeleteAntti: Are there any difference from kernel 4.4 - > 4.6 regarding discontinuities and higher frequencies.
ReplyDeleteWhat is required to get this card to be properly supported and is there any work in progress?
If needed, I can supply additional logs and/or remote ssh into a workstation running libreELEC/OpenELEC and the dvb tuner with DVB-C connected.
Hope to see this problem resolved, hence stick is currently close to useless.
Thanks in advance
/Morten
Antti: Are there any difference from kernel 4.4 - > 4.6 regarding discontinuities and higher frequencies.
ReplyDeleteWhat is required to get this card to be properly supported and is there any work in progress?
If needed, I can supply additional logs and/or remote ssh into a workstation running libreELEC/OpenELEC and the dvb tuner with DVB-C connected.
Hope to see this problem resolved, hence stick is currently close to useless.
Thanks in advance
/Morten
It is likely some recent r820t tuner driver bug which leads to performance problems on higher frequencies. I have had no motivation / time to examine it further...
Deletegit clone git://linuxtv.org/media_build.git
ReplyDeletecd media_build
./build
make stagingconfig
make -C ./v4l/
make install
copied firmware
After typing these commands the driver compiled, i rebooted but I see only dvb-t
dmesg | grep dvb
[ 3.633376] usb 1-13: dvb_usb_v2: found a 'Astrometa DVB-T2' in warm state
[ 3.701446] usb 1-13: dvb_usb_v2: will pass the complete MPEG2 transport stream to the software demuxer
[ 3.701585] dvb_create_media_entity: media entity 'dvb-demux' registered.
[ 3.704895] dvb_create_media_entity: media entity 'Realtek RTL2832 (DVB-T)' registered.
[ 3.718918] rc rc2: lirc_dev: driver ir-lirc-codec (dvb_usb_rtl28xxu) registered at minor = 2
[ 3.718919] usb 1-13: dvb_usb_v2: schedule remote query interval to 200 msecs
[ 3.730878] usb 1-13: dvb_usb_v2: 'Astrometa DVB-T2' successfully initialized and connected
[ 3.730899] usbcore: registered new interface driver dvb_usb_rtl28xxu
lsdvb
lsdvb: Simple utility to list PCI/PCIe DVB devices
Version: 0.0.4
Copyright (C) Manu Abraham
usb (0:0 1:0) on PCI Domain:-1850267768 Bus:32623 Device:-1852471736 Function:32623
DEVICE:0 ADAPTER:0 FRONTEND:0 (Realtek RTL2832 (DVB-T))
FE_OFDM Fmin=174MHz Fmax=862MHz
DEVICE:0 ADAPTER:2 FRONTEND:0 (Realtek RTL2832 (DVB-T))
FE_OFDM Fmin=174MHz Fmax=862MHz
DEVICE:0 ADAPTER:1 FRONTEND:0 (Realtek RTL2832 (DVB-T))
FE_OFDM Fmin=174MHz Fmax=862MH
And when i try to scan:
w_scan -fc
w_scan version 20130331 (compiled for DVB API 5.10)
WARNING: could not guess your country. Falling back to 'DE'
guessing country 'DE', use -c to override
using settings for GERMANY
DVB cable
DVB-C
scan type CABLE, channellist 7
output format vdr-2.0
WARNING: could not guess your codepage. Falling back to 'UTF-8'
output charset 'UTF-8', use -C to override
Info: using DVB adapter auto detection.
/dev/dvb/adapter0/frontend0 -> "Realtek RTL2832 (DVB-T)" doesnt support CABLE -> SEARCH NEXT ONE.
/dev/dvb/adapter1/frontend0 -> "Realtek RTL2832 (DVB-T)" doesnt support CABLE -> SEARCH NEXT ONE.
/dev/dvb/adapter2/frontend0 -> "Realtek RTL2832 (DVB-T)" doesnt support CABLE -> SEARCH NEXT ONE.
main:3228: FATAL: ***** NO USEABLE CABLE CARD FOUND. *****
Please check wether dvb driver is loaded and
verify that no dvb application (i.e. vdr) is running.
Have you downloaded/installed the firmware?
Deletehttp://palosaari.fi/linux/v4l-dvb/firmware/MN88473/01/latest/dvb-demod-mn88473-01.fw
Yes of course, the card is initialized but i cannot get dvb-c working on it.. it finds no dvb-c tuner
DeleteThis comment has been removed by the author.
DeleteIt is bcoz some other service has lock the dvb-c tuner. If tvheadend installed first stop it then try w_scan..
Delete# sudo /etc/init.d/tvheadend stop
# w_scan -fc -c IN
FWIW, I see the same thing. I need to cold boot, w_scan then start tvheadend.
DeleteHello!
ReplyDeleteI compiled drivers with make stagingconfig and all seems ok but my adapter don't working. I have the same device.
dmesg show output:
[13969.612148] ehci_irq: highspeed device connect
[13969.833191] usb 1-1: new high-speed USB device number 9 using sunxi-ehci
[13969.998739] usb 1-1: dvb_usb_v2: found a 'Astrometa DVB-T2' in warm state
[13970.072192] usb 1-1: dvb_usb_v2: will pass the complete MPEG2 transport stream to the software demuxer
[13970.072255] DVB: registering new adapter (Astrometa DVB-T2)
[13970.072278] usb 1-1: media controller created
[13970.076512] dvb_create_media_entity: media entity 'dvb-demux' registered.
[13970.086037] rtl2832 2-0010: Range 0: selector for 0 in window
[13970.093516] rtl2832: probe of 2-0010 failed with error -22
Maybe do I need somehow turn on more debug output?
That is exactly what I see. Try my workaround: Config your machine so that tvheadend does not autostart. reboot. Run w_scan -fc -c XX, where XX is your country code. Start tvheadend.
Deleteif running w_scan hawe this error:
ReplyDeletesudo w_scan -ft
w_scan -ft
w_scan version 20141122 (compiled for DVB API 5.10)
guessing country 'HU', use -c to override
using settings for HUNGARY
Country identifier HU not defined. Using defaults.
scan type TERRESTRIAL, channellist 4
output format vdr-2.0
output charset 'UTF-8', use -C to override
Info: using DVB adapter auto detection.
main:3904: FATAL: ***** NO USEABLE TERRESTRIAL CARD FOUND. *****
Please check wether dvb driver is loaded and
verify that no dvb application (i.e. vdr) is running.
how it's possible to make astrometa to run on Ubuntu ?
ReplyDeleteMake sure that the module is loaded, and the firmware is in its place. It seems you are missing both. A kábeltv része egy fos, úgyhogy ha arra kell akkor már most engedd el... A földfelszínivel lehet érdemes próbálkozni.
DeleteNem kabelra akarom hasznalni, hanem inkabb DVB-T2-es foldszini adas vetelere. Tudsz valahogy segiteni ?
DeleteMostan igy mutat az egesz:
Deletedmesg|grep DVB
[ 22.631561] usb 1-1.3: dvb_usb_v2: found a 'Astrometa DVB-T2' in warm state
[ 22.708060] DVB: registering new adapter (Astrometa DVB-T2)
[ 23.730395] usb 1-1.3: DVB: registering adapter 0 frontend 0 (Realtek RTL2832 (DVB-T))...
[ 23.730460] usb 1-1.3: DVB: registering adapter 0 frontend 1 (Panasonic MN88473)...
[ 24.184031] input: Astrometa DVB-T2 as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/rc/rc0/input14
[ 24.184100] rc0: Astrometa DVB-T2 as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/rc/rc0
[ 24.197109] usb 1-1.3: dvb_usb_v2: 'Astrometa DVB-T2' successfully initialized and connected
$ w_scan -f t -c FI -a /dev/dvb/adapter0/frontend1
DeleteI reinstall Ubuntu version today, but this w_scan not scanning separatly DVB-T and DVB-T2 frecvencies !
DeleteBefor reinstall Ubuntu W_scan scanning DVB-T all frecvencies after this scanning DVB-T2 frecvencies and fiind channels.
https://ubuntuforums.org/showthread.php?t=2335299
Today scanninf verry fast, but i think scanning only dvb-t. But not have DVB-T signal here only DVB-t2.
$ dvbv5-scan /usr/share/dvbv5/dvb-t/fi-Oulu -a 0 -f 1
DeleteA T2 gondolom ugyanannyira fos, mint a C (frontend1). Azt hittem MindigTV-t szeretnél, ami sima T (frontend0), nem T2. Ezek szerint Erdélyben T2 van... De látom időközben feladtad :D Pedig már közel jársz a megoldáshoz.
DeleteThis comment has been removed by the author.
DeleteI reinstall Ubuntu again, with new w_scan and reinstall drivers and firmware again !
ReplyDeletewith:
$w_scan -f t -c RO -a /dev/dvb/adapter0/frontend1
i hawe this results:
http://imgur.com/a/ts66F
How to play on Ubuntu this ??
This comment has been removed by the author.
ReplyDeleteIf i want to running channels with vlc
ReplyDeletehttp://pastebin.com/bjnFZVGc
if running vith cvlc
http://pastebin.com/B464p70w
This comment has been removed by the author.
ReplyDeleteThis is channels.xpfs for vlc
ReplyDeletehttp://pastebin.com/S7NXtnst
VLC see the channel name, but not running channels.
DVB-T2 not running in Ubuntu :(
ReplyDeleteIn Windows with Dvbviewer Pro Demo running very fast and very good !
I lost a few days with this, but whithout results...
ReplyDeleteThis comment has been removed by the author.
ReplyDelete