b-rad-NDi / Ubuntu-media-tree-kernel-builder

Slip stream the latest LinuxTV.org media drivers into an installable Ubuntu kernel package
98 stars 9 forks source link

No Channels found on Ubuntu 16.04.3 with WinTV-dualHD 01595 #31

Closed iuri-gg closed 6 years ago

iuri-gg commented 6 years ago

Hi. I installed kernel from PPA (4.4-apt/ppa and 4.13 - using deb files from ppa). Device is detected in dmesg and using w_scan, however there are 0 channels found. If i connect it to win10 computer, channels are found, but on ubuntu xenial there are no channels found.

Have you seen similar issue? below is output of dmesg and w_scan:

[ 12.016556] em28xx 3-2:1.0: EEPROM ID = 26 00 01 00, EEPROM hash = 0x46990a4e [ 12.016557] em28xx 3-2:1.0: EEPROM info: [ 12.016558] em28xx 3-2:1.0: microcode start address = 0x0004, boot configuration = 0x01 [ 12.025585] em28xx 3-2:1.0: AC97 audio (5 sample rates) [ 12.025586] em28xx 3-2:1.0: 500mA max power [ 12.025588] em28xx 3-2:1.0: Table at offset 0x27, strings=0x0a72, 0x187c, 0x086a [ 12.025643] em28xx 3-2:1.0: Identified as Hauppauge WinTV-dualHD 01595 ATSC/QAM (card=100) [ 12.026273] tveeprom: Hauppauge model 204201, rev B3I6, serial# 13965808 [ 12.026274] tveeprom: tuner model is SiLabs Si2157 (idx 186, type 4) [ 12.026275] tveeprom: TV standards PAL(B/G) NTSC(M) PAL(I) SECAM(L/L') PAL(D/D1/K) ATSC/DVB Digital (eeprom 0xfc) [ 12.026276] tveeprom: audio processor is None (idx 0) [ 12.026276] tveeprom: has no radio, has IR receiver, has no IR transmitter [ 12.026278] em28xx 3-2:1.0: dvb set to bulk mode. [ 12.027250] em28xx 3-2:1.0: chip ID is em28174 [ 13.228772] em28xx 3-2:1.0: EEPROM ID = 26 00 01 00, EEPROM hash = 0x46990a4e [ 13.228773] em28xx 3-2:1.0: EEPROM info: [ 13.228774] em28xx 3-2:1.0: microcode start address = 0x0004, boot configuration = 0x01 [ 13.237875] em28xx 3-2:1.0: AC97 audio (5 sample rates) [ 13.237876] em28xx 3-2:1.0: 500mA max power [ 13.237877] em28xx 3-2:1.0: Table at offset 0x27, strings=0x0a72, 0x187c, 0x086a [ 13.237924] em28xx 3-2:1.0: Identified as Hauppauge WinTV-dualHD 01595 ATSC/QAM (card=100) [ 13.238598] tveeprom: Hauppauge model 204201, rev B3I6, serial# 13965808 [ 13.238599] tveeprom: tuner model is SiLabs Si2157 (idx 186, type 4) [ 13.238600] tveeprom: TV standards PAL(B/G) NTSC(M) PAL(I) SECAM(L/L') PAL(D/D1/K) ATSC/DVB Digital (eeprom 0xfc) [ 13.238600] tveeprom: audio processor is None (idx 0) [ 13.238601] tveeprom: has no radio, has IR receiver, has no IR transmitter [ 13.238602] em28xx 3-2:1.0: dvb ts2 set to bulk mode. [ 13.437694] usbcore: registered new interface driver em28xx [ 13.442684] WARNING: You are using an experimental version of the media stack. As the driver is backported to an older kernel, it doesn't offer enough quality for its usage in production. Use it with care. Latest git patches (needed if you report a bug to linux-media@vger.kernel.org): 330dada5957e3ca0c8811b14c45e3ac42c694651 media: dvb_frontend: fix return error code 5e0d3c3a2c67c060e65e152558fa3cbdabdafe6c media: MAINTAINERS: add si2165 driver 7c4f4d1d7e5e3a5efc0a75410c7dad1c6c0be838 media: cx23885: Use semicolon after assignment instead of comma [ 13.446786] em28xx 3-2:1.0: Binding DVB extension [ 13.466372] i2c i2c-1: Added multiplexed i2c bus 4 [ 13.468056] si2157_probe: probing si2157 tuner fe=ffff9377e22aa810 cfg=ffffa01082a338e8 addr=0X60 [ 13.468057] si2157_setup_configuration: client=ffff9377e2810c00 [ 13.468057] si2157_setup_configuration: dev= (null) [ 13.468059] si2157_attach (4-0060) [ 13.468059] si2157 4-0060: creating new instance [ 13.468060] si2157_attach: instance=1 [ 13.468060] si2157_attach(): new instance for tuner @0x60 [ 13.468060] si2157_setup_configuration: client=ffff9377e2810c00 [ 13.468061] si2157_setup_configuration: dev=ffff9377e22cf600 [ 13.468061] si2157_setup_configuration(0x60): dvb driver submitted configuration; port=1 invert=1 [ 13.472874] si2157 4-0060: Silicon Labs Si2147/2148/2157/2158 successfully attached [ 13.472879] dvbdev: DVB: registering new adapter (3-2:1.0) [ 13.472880] em28xx 3-2:1.0: DVB: registering adapter 0 frontend 0 (LG Electronics LGDT3306A VSB/QAM Frontend)... [ 13.473219] em28xx 3-2:1.0: DVB extension successfully initialized [ 13.473221] em28xx 3-2:1.0: Binding DVB extension [ 13.485036] i2c i2c-3: Added multiplexed i2c bus 5 [ 13.485504] si2157_probe: probing si2157 tuner fe=ffff9377e22ab810 cfg=ffffa01082a338e8 addr=0X62 [ 13.485504] si2157_setup_configuration: client=ffff9377e272a400 [ 13.485505] si2157_setup_configuration: dev= (null) [ 13.485507] si2157_attach (5-0062) [ 13.485507] si2157 5-0062: creating new instance [ 13.485508] si2157_attach: instance=1 [ 13.485508] si2157_attach(): new instance for tuner @0x62 [ 13.485508] si2157_setup_configuration: client=ffff9377e272a400 [ 13.485509] si2157_setup_configuration: dev=ffff9377e22ce600 [ 13.485509] si2157_setup_configuration(0x62): dvb driver submitted configuration; port=1 invert=1 [ 13.489196] si2157 5-0062: Silicon Labs Si2147/2148/2157/2158 successfully attached [ 13.489201] dvbdev: DVB: registering new adapter (3-2:1.0) [ 13.489202] em28xx 3-2:1.0: DVB: registering adapter 1 frontend 0 (LG Electronics LGDT3306A VSB/QAM Frontend)... [ 13.489877] em28xx 3-2:1.0: DVB extension successfully initialized [ 13.489878] em28xx: Registered (Em28xx dvb Extension) extension [ 13.492266] WARNING: You are using an experimental version of the media stack. As the driver is backported to an older kernel, it doesn't offer enough quality for its usage in production. Use it with care. Latest git patches (needed if you report a bug to linux-media@vger.kernel.org): 330dada5957e3ca0c8811b14c45e3ac42c694651 media: dvb_frontend: fix return error code 5e0d3c3a2c67c060e65e152558fa3cbdabdafe6c media: MAINTAINERS: add si2165 driver 7c4f4d1d7e5e3a5efc0a75410c7dad1c6c0be838 media: cx23885: Use semicolon after assignment instead of comma [ 13.496844] em28xx 3-2:1.0: Registering input extension [ 13.524014] Registered IR keymap rc-hauppauge [ 13.524960] rc rc0: 3-2:1.0 IR as /devices/pci0000:00/0000:00:16.0/0000:0b:00.0/usb3/3-2/3-2:1.0/rc/rc0 [ 13.525031] input: 3-2:1.0 IR as /devices/pci0000:00/0000:00:16.0/0000:0b:00.0/usb3/3-2/3-2:1.0/rc/rc0/input6 [ 13.525443] em28xx 3-2:1.0: Input extension successfully initialized [ 13.525444] em28xx 3-2:1.0: Remote control support is not available for this card. [ 13.525445] em28xx: Registered (Em28xx Input Extension) extension

w_scan -fa -c US -Z w_scan version 20141122 (compiled for DVB API 5.10) using settings for UNITED STATES ATSC VSB US/CA, DVB-T TW scan type TERRCABLE_ATSC, channellist 1 output format w_scan XML tuning data output charset 'ISO-8859-1' Info: using DVB adapter auto detection. /dev/dvb/adapter0/frontend0 -> TERRCABLE_ATSC "LG Electronics LGDT3306A VSB/QAM Frontend": good :-) /dev/dvb/adapter1/frontend0 -> TERRCABLE_ATSC "LG Electronics LGDT3306A VSB/QAM Frontend": good :-) Using TERRCABLEATSC frontend (adapter /dev/dvb/adapter0/frontend0) ---- Getting frontend capabilities----_ Using DVB API 5.10 frontend 'LG Electronics LGDT3306A VSB/QAM Frontend' supports INVERSION_AUTO 8VSB QAM_64 QAM256 FREQ (54.00MHz ... 858.00MHz) ----------------------- 57000: 8VSB(time: 00:00.640) 63000: 8VSB(time: 00:03.876) .... ... .... ERROR: Sorry - i couldn't get any working frequency/transponder Nothing to scan!!

iuri-gg commented 6 years ago

Im not sure where log is located - i couldnt find it. either way it broke something and none of the channels would work. after removing debug flag, it started working again. this latest kernel updates screen more often ` fram every 1-2 seconds but it is very pixelated - as if only some part of the frame had data.

b-rad-NDi commented 6 years ago

The log would be in dmesg. It's not very surprising things didn't work, since that option will cause so much output combined with vmware already having issue. If you try again just do this: dmesg > /tmp/dmesg.em28xx.i2c.log Very unfortunate that aligning the buffers was not successful this time.

iuri-gg commented 6 years ago

I tried again. it was not that noisy. i was able to tune one channel. here is the link to dmesg after 5 seconds of tuning to a channel. http://termbin.com/4ze4

iuri-gg commented 6 years ago

And this is the old kernel that works fine with debug flag on: http://termbin.com/mz83

b-rad-NDi commented 6 years ago

Unfortunately that flag doesn't appear helpful, it only logs the eeprom dump. Oh well. I went back and re-re-reviewed the slight documentation I have and turns out I again botched the multiplier. For the multiplier 0 is 1x188, so the multiple needs to be one less than is desired. Because of this I am able to max out the multiplier. So now, by default I have the bulk multiplier set to transmit 188x256 packets at a time. Both usb urb alloc and em28xx are configured the same. This could have been why the recent builds were fubar.

I have also added two kernel parameters for you to experiment with the multipliers. In /etc/modprobe.d/em28xx.conf put this: options em28xx-dvb bulk_multiplier=94 options em28xx pkt_mutiplier=256

where: bulk_multiplier * 512 should equal pkt_multiplier * 188

94 and 256 are the default values in the driver, this should be as optimal as possible since the em28xx bulk multiplier is maxed out. You will see both multipliers printed out in dmesg when they are configured.

Packages with these new, proper, defaults and the module options are in the dropbox. Fingers crossed these defaults are good for you!

iuri-gg commented 6 years ago

This one looks like it is working... Here is dmesg for it http://termbin.com/tria I used values that you provided... Do you have values that were used with the previous kernel that worked for me?

b-rad-NDi commented 6 years ago

Nice. Believe it or not, before the values should have been completely in err. In your 'old good build' I believe I had: options em28xx-dvb bulk_multiplier=282 options em28xx pkt_mutiplier=768 Now 768 is bigger than 1B, so it gets wrapped. This combo should not have really worked due to the wrapping.

iuri-gg commented 6 years ago

Interesting that it worked. I wonder if compiler or hardware detected and "corrected" those values to max possible

On Thu, Dec 28, 2017 at 2:42 PM, Brad Love notifications@github.com wrote:

Nice. Believe it or not, before the values should have been completely in err. In your 'old good build' I believe I had: options em28xx-dvb bulk_multiplier=282 options em28xx pkt_mutiplier=768 Now 768 is bigger than 1B, so it gets wrapped. This combo should not have really worked due to the wrapping.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/b-rad-NDi/Ubuntu-media-tree-kernel-builder/issues/31#issuecomment-354355021, or mute the thread https://github.com/notifications/unsubscribe-auth/AARr2jug0WN2J4VpwU4wMhfn9K0d02U9ks5tE_1KgaJpZM4RC9Kr .

b-rad-NDi commented 6 years ago

One curious combo to try though, would be a bulk multiplier that was a multiple of the packet multiplier: options em28xx-dvb bulk_multiplier=188 options em28xx pkt_mutiplier=256 Original is (47 x 2), above is (47 x 4), if that works, then you could try (47 x 8) for bulk multiplier.