b-rad-NDi / media_tree

Upstream media tree -- WARNING I REBASE MY BRANCHES
https://linuxtv.org
Other
2 stars 3 forks source link

Hauppauge WinTV Nova S2 - 2013:0461 Not Working #6

Closed Solifuge80 closed 4 years ago

Solifuge80 commented 4 years ago

Hi,

as you requested from the other topic in the wrong section I'm opening the issue in the right place.

The device is recognized from Ubuntu 18.04.3 LTS with Linux ubuntu-x64 5.0.0-37201911191317-generic #0+mediatree+hauppauge~hwe-Ubuntu SMP.

I can use it from w_scan or TVHeadend but nothing is found during a full scan with Hotbitd 13E.

I can correctly use this device with Windows 10 so I can exlude problems in my home SAT environment or in the device itself.

I can support you with everything you need: I have also opened a ticket with Hauppauge because they certified this device with Ubuntu but, even if I have followed their instructions, I don't get it working.

Thanks your help.

DiJGo commented 4 years ago

This is a follow up thread from https://github.com/b-rad-NDi/Ubuntu-media-tree-kernel-builder/issues/53 also see there for history.

My Tuner-HW is not a Hauppauge WinTV Nova S2 - 2013:0461 but a Hauppauge PCTV DVB-S2 461e (V2), LF Rev B8H9 yet I assume they share the same issue/dependency on Montage m88ds3103b. Behaviour similar PCTV461e (B8H9) does get recognized in dmesg, green light comes on, FW is loaded, but no TV signal is found using w_scan (for Astra 19E2). Same setup works fine on Linux with an earlier version PCTV DVB-S2 461e, LF Rev B3H9, non-b m88ds3103. PCTV461e (B8H9) works fine with Win10.

@b-rad-NDi I like to support you with testing on DVB-S2. From your older drivers that are confirmed working and deployed to various customers, for one that supports B8H9 can you please share their image or branches , so I can clone, build and throw them onto my system(s) for a trial e.g. git clone -b https://github.com/b-rad-NDi/media_tree.git git clone --depth=1 --branch https://github.com/raspberrypi/linux

I like to see them work on my HW to check that there are really not any other last-minute HW changes on my PCTV DVB-S2 461e V2, very recent purchase.

Also if there are any line of test-code or messages I can include into the sources e.g. for debug let me know. My programming skills are very outdated but I can follow simple instructions.

Regarding application test I will stick with dmesg and w_scan, femon did only show me bogs data, I assume it is only useful once Sat connection is established. The delta I saw in dmesg PCTV461e (B3H9) vs. PCTV461e (B8H9) seemed normal expected to me i.e. names changed and according dvb-demod-m88ds3103.fw vs. dvb-demod-m88ds3103b.fw gets loaded. Application SW w_scan autodetects PCTV461e (B3H9) as M88DS3103 Info: using DVB adapter auto detection. /dev/dvb/adapter0/frontend0 -> SATELLITE "Montage Technology M88DS3103": very good :-)) PCTV461e (B8H9) as M88RS6000 /dev/dvb/adapter0/frontend0 -> SATELLITE "Montage Technology M88RS6000": very good :-)) I assume that's ok ? One is the id the other is the type ? dev->chip_id == M88RS6000_CHIP_ID dev->chiptype == M88DS3103_CHIPTYPE_3103B

I've also filed a support request with Hauppauge though I see that currently their is no official support for B8H9 yet https://www.hauppauge.de/site/support/support_linux.html PCTV 461e Stick (USB 2.0, DVB-S/S2) Modell 200000 Rev B6H9 (und frühere Revisionen) werden unterstützt ab Kernel 3.14. Benötigte Firmware-Datei: dvb-demod-m88ds3103.fw Hardware Revisonen B7H9 und B8H9 werden derzeit nicht unterstützt.

thomisus commented 4 years ago

Hi, I can confirm that revision 0461 is not working properly ( or I cannot get it to work ). Tried ubuntu 16.04 - 18.04 with or without hwe stack with your ppa. Also tried to compile your branch. After installing your kernel , I downloaded missing firmware and dvb-demod from coreelec repo.

Tried to do a full scan of hotbird with w_scan but nothing is found. Tried to scan a transponder with mumudvb but nothing is found.

What I noticed using mumudvb and femon is that I get this error:

Problem retrieving frontend information: Unknown error 524

The signal reported is 92% but SNR 0

Maybe something changed from one revision to the other.

Yesterday i restarted from scratch with a clean ubuntu 16.04 VM, building the kernel with every patch applied, but the same situation happens.

What I can try to help debug?

DiJGo commented 4 years ago

@thomisus rgds "femon, Problem retrieving frontend information" This is pretty much outside my expertise or comfort zone (hobbyist) but I'm willing to learn and also try to find a debug tool to help narrow down the issue. # I suspect femon is a bit old, and for me it gives bogus data, so I don't trust it Because for me I see it produces such error message also on good system. femon -H FE: Montage Technology M88DS3103 (DVBS) [known good system] Problem retrieving frontend information: Unknown error 524 <------ status | signal 30% | snr 96% | ber 2203 | unc 1995919656 | femon -H FE: Montage Technology M88RS6000 (DVBS) Problem retrieving frontend information: Unknown error 524 <------ status | signal 30% | snr 96% | ber 2203 | unc 1995268392 | # Instead of femon I intend to debug with modified w_scan because with that I see the delta old HW version pctv461e (B3H9) (w_scan passes) signal e3d6 | snr 0000 | ber 00000000 | unc 00000000 | signal e3d6 | snr 006b | ber 00000000 | unc 00000000 | FE_HAS_LOCK FE_HAS_SIGNAL - FE_HAS_CARRIER - FE_HAS_VITERBI - FE_HAS_SYNC - signal ok: S2 f = 10729 kHz V SR = 22000 2/3 0,35 8PSK (0:0:0) vs. new HW version pctv461e (B8H9) (w_scan fails) signal e665 | snr 0000 | ber 00000000 | unc 00000000 | signal e665 | snr 0000 | ber 00000000 | unc 00000000 | ... repeats similar like above many more times i.e. never gets a signal lock and finally times out # In other words for me new HW version pctv461e (B8H9) behaves like disconnected from Sat-cable. # In the end I think all these apps just use calls to the DVB frontend API similar https://www.kernel.org/doc/html/v4.10/media/uapi/dvb/frontend_fcalls.html which I guess in return depend on the driver and firmware. # I hope @b-rad-NDi can give us some more ideas for trial and debug, and a proven working SW setup for HW cross-check on Sat. # P.S. attached a little more detail by file. pctv_461e_Linux_forum_support_request_04.txt

thomisus commented 4 years ago

One more try. I'm trying dvb-fe-tool and dvbv5-scan. After running dvb-fe-tool i get:

Device Montage Technology M88RS6000 (/dev/dvb/adapter0/frontend0) capabilities:
     CAN_2G_MODULATION
     CAN_FEC_1_2
     CAN_FEC_2_3
     CAN_FEC_3_4
     CAN_FEC_4_5
     CAN_FEC_5_6
     CAN_FEC_6_7
     CAN_FEC_7_8
     CAN_FEC_8_9
     CAN_FEC_AUTO
     CAN_INVERSION_AUTO
     CAN_QPSK
     CAN_RECOVER
DVB API Version 5.11, Current v5 delivery system: DVBS
Supported delivery systems:
    [DVBS]
     DVBS2
SEC: set voltage to OFF
ERROR    FE_SET_VOLTAGE: Operation not permitted

Maybe is this the problem? Set voltage not permitted/implemented in driver?

DiJGo commented 4 years ago

@thomisus Can you please open two terminals and in one capture dvb statistics dvb-fe-tool -m -v in another terminal run w_scan (choose for your satellite e.g. Astra S19E2) e.g. w_scan -f s -s S19E2 -c DE Then after a short while (~5sec) interrupt the w-scan with CTRL-C and share what you see.

When I do so I see *** Good case (old HW pctv461e B3H9) w_scan finds a signal e.g. (time: 00:07.459) signal ok: dvb-fe-tool continously finds "Lock" and values while w_scan runs e.g. Lock (0x1f) Signal= -36,09dBm C/N= 14,47dB

*** Bad case (new HW pctv461e B8H9) w_scan finds no signal dvb-fe-tool does not find any "Lock" just some values while w_scan runs BUT dvb-fe-tool finds "Lock" and values a few seconds AFTER w_scan is interrupted

------ w_scan results frontend 'Montage Technology M88RS6000' supports INVERSIONAUTO DVB-S DVB-S2 FREQ (0.95GHz ... 2.15GHz) SRATE (1.000MSym/s ... 45.000MSym/s) using LNB "UNIVERSAL" ----------------------- trying 'S2 f = 10729 kHz V SR = 22000 2/3 0,35 8PSK (0:0:0)' (time: 00:00.239) trying 'S f = 10744 kHz H SR = 22000 5/6 0,35 QPSK (0:0:0)' (time: 00:02.659) trying 'S f = 10759 kHz V SR = 22000 5/6 0,35 QPSK (0:0:0)' (time: 00:05.049) ^C ERROR: interrupted by SIGINT, dumping partial result... (time: 00:06.499) dumping lists (0 services) .. Done, scan time: 00:06.499

------ dvb-fe-tool results WHILE w_scan runs (some signal values, but no Lock is found) (0x00) Signal= -38,47dBm (0x00) Signal= -38,47dBm (0x00) Signal= -38,47dBm (0x00) Signal= -14,02dBm (0x00) Signal= -14,02dBm (0x00) Signal= -14,02dBm (0x00) Signal= -75,59dBm (0x00) Signal= -75,59dBm (0x00) Signal= -75,59dBm AFTER w_scan was interrupted (a Lock is found) Got parameters for DVBS: FREQUENCY = 1009000 INVERSION = ON SYMBOL_RATE = 95998535 INNER_FEC = 5/6 POLARIZATION = OFF DELIVERY_SYSTEM = DVBS Lock (0x1f) Signal= -75,59dBm C/N= 15,05dB Lock (0x1f) Signal= -75,59dBm C/N= 15,05dB ^CSEC: set voltage to OFF ERROR FE_SET_VOLTAGE: Die Operation ist nicht erlaubt pi@raspberrypi:~ $

So I think the good news is HW and SW talk to each other and even create Sat traffic and values, just something is out of sync when it comes to Locking and detecting. I'm not sure what this means but maybe it creates an idea for the next debug step. P.S. regards your observation "ERROR FE_SET_VOLTAGE: Operation not permitted" I get that too, but same for both good and bad case so I guess it is not relevant.

b-rad-NDi commented 4 years ago

Ok, I've found a series I produced for a customer that they said worked 100%. When I finish my duties I will diff it between what is currently up and fix things. Doubtful to happen until January 2.

thomisus commented 4 years ago

@b-rad-NDi Sounds great!!

@DiJGo you are right.. here it is, seems to lock after closing w_scan.

dvb-fe-tool -m -v

       (0x00) Signal= -19.32dBm
       (0x00) Signal= -19.32dBm
       (0x00) Signal= -19.32dBm
       (0x00) Signal= -19.32dBm
       (0x00) Signal= -19.32dBm             
       (0x00) Signal= -29.92dBm                <--------- w_scan started 
       (0x00) Signal= -29.92dBm
       (0x00) Signal= -29.92dBm
       (0x00) Signal= -29.92dBm
       (0x00) Signal= -29.92dBm
       (0x00) Signal= -29.92dBm
       (0x00) Signal= -29.92dBm                <--------- w_scan stopped
Got parameters for DVBS2:
FREQUENCY = 1008000
INVERSION = ON
SYMBOL_RATE = 95998535
INNER_FEC = 5/6
MODULATION = QPSK
PILOT = AUTO
ROLLOFF = 35
POLARIZATION = OFF
STREAM_ID = 4294967295
DELIVERY_SYSTEM = DVBS
Lock   (0x1f) Signal= -29.92dBm C/N= 15.05dB
Lock   (0x1f) Signal= -29.92dBm C/N= 15.05dB
Lock   (0x1f) Signal= -29.92dBm C/N= 15.05dB
Lock   (0x1f) Signal= -29.92dBm C/N= 15.05dB
Lock   (0x1f) Signal= -29.92dBm C/N= 15.05dB
Lock   (0x1f) Signal= -29.92dBm C/N= 15.05dB
Lock   (0x1f) Signal= -29.92dBm C/N= 15.05dB
Lock   (0x1f) Signal= -29.92dBm C/N= 15.05dB
Lock   (0x1f) Signal= -29.92dBm C/N= 15.05dB
Lock   (0x1f) Signal= -29.92dBm C/N= 15.05dB
Lock   (0x1f) Signal= -29.92dBm C/N= 15.05dB
Lock   (0x1f) Signal= -29.92dBm C/N= 15.05dB
Lock   (0x1f) Signal= -29.92dBm C/N= 15.05dB
       (0x00) Signal= -29.92dBm                   <----- w_scan started                           
       (0x00) Signal= -29.92dBm
       (0x00) Signal= -29.92dBm
       (0x00) Signal= -29.92dBm
       (0x00) Signal= -29.92dBm
       (0x00) Signal= -29.92dBm
       (0x00) Signal= -29.92dBm
       (0x00) Signal= -29.92dBm
       (0x00) Signal= -29.92dBm
       (0x00) Signal= -29.92dBm

w_scan

root@ubuntu-x64-18-04:~# w_scan -f s -s S13E0 -c IT
w_scan -f s -s S13E0 -c IT
w_scan version 20170107 (compiled for DVB API 5.10)
using settings for 13.0 east Hotbird 13B/13C/13D
scan type SATELLITE, channellist 70
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 -> SATELLITE "Montage Technology M88RS6000": very good :-))

Using SATELLITE frontend (adapter /dev/dvb/adapter0/frontend0)
-_-_-_-_ Getting frontend capabilities-_-_-_-_
Using DVB API 5.11
frontend 'Montage Technology M88RS6000' supports
INVERSION_AUTO
DVB-S
DVB-S2
FREQ (0.95GHz ... 2.15GHz)
SRATE (1.000MSym/s ... 45.000MSym/s)
using LNB "UNIVERSAL"
-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
trying 'S  f = 10719 kHz V SR = 27500  5/6 0,35  QPSK  (0:0:0)'
(time: 00:02.043)
trying 'S  f = 10723 kHz H SR = 29900  3/4 0,35  QPSK  (0:0:0)'
(time: 00:05.507)
trying 'S  f = 10758 kHz V SR = 27500  5/6 0,35  QPSK  (0:0:0)'
(time: 00:08.575)
trying 'S2 f = 10775 kHz H SR = 29900  3/4 0,AUTO  8PSK  (0:0:0)'
(time: 00:11.659)
trying 'S  f = 10796 kHz V SR = 27500  5/6 0,35  QPSK  (0:0:0)'
(time: 00:14.859) ^C
ERROR: interrupted by SIGINT, dumping partial result...
(time: 00:15.135) dumping lists (0 services)
..
Done, scan time: 00:15.135
root@ubuntu-x64-18-04:~# w_scan -f s -s S13E0 -c IT
w_scan -f s -s S13E0 -c IT
w_scan version 20170107 (compiled for DVB API 5.10)
using settings for 13.0 east Hotbird 13B/13C/13D
scan type SATELLITE, channellist 70
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 -> SATELLITE "Montage Technology M88RS6000": very good :-))

Using SATELLITE frontend (adapter /dev/dvb/adapter0/frontend0)
-_-_-_-_ Getting frontend capabilities-_-_-_-_
Using DVB API 5.11
frontend 'Montage Technology M88RS6000' supports
INVERSION_AUTO
DVB-S
DVB-S2
FREQ (0.95GHz ... 2.15GHz)
SRATE (1.000MSym/s ... 45.000MSym/s)
using LNB "UNIVERSAL"
-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
trying 'S  f = 10719 kHz V SR = 27500  5/6 0,35  QPSK  (0:0:0)'
(time: 00:00.264)
trying 'S  f = 10723 kHz H SR = 29900  3/4 0,35  QPSK  (0:0:0)'
(time: 00:03.476)
trying 'S  f = 10758 kHz V SR = 27500  5/6 0,35  QPSK  (0:0:0)'
(time: 00:06.536) ^C
ERROR: interrupted by SIGINT, dumping partial result...
(time: 00:09.504) dumping lists (0 services)
..
Done, scan time: 00:09.504
root@ubuntu-x64-18-04:~# w_scan -f s -s S13E0 -c IT
w_scan -f s -s S13E0 -c IT
w_scan version 20170107 (compiled for DVB API 5.10)
using settings for 13.0 east Hotbird 13B/13C/13D
scan type SATELLITE, channellist 70
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 -> SATELLITE "Montage Technology M88RS6000": very good :-))

Using SATELLITE frontend (adapter /dev/dvb/adapter0/frontend0)
-_-_-_-_ Getting frontend capabilities-_-_-_-_
Using DVB API 5.11
frontend 'Montage Technology M88RS6000' supports
INVERSION_AUTO
DVB-S
DVB-S2
FREQ (0.95GHz ... 2.15GHz)
SRATE (1.000MSym/s ... 45.000MSym/s)
using LNB "UNIVERSAL"
-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
trying 'S  f = 10719 kHz V SR = 27500  5/6 0,35  QPSK  (0:0:0)'
(time: 00:00.292)
trying 'S  f = 10723 kHz H SR = 29900  3/4 0,35  QPSK  (0:0:0)'
(time: 00:03.716)
trying 'S  f = 10758 kHz V SR = 27500  5/6 0,35  QPSK  (0:0:0)'
(time: 00:07.048)
trying 'S2 f = 10775 kHz H SR = 29900  3/4 0,AUTO  8PSK  (0:0:0)'
(time: 00:10.336)
trying 'S  f = 10796 kHz V SR = 27500  5/6 0,35  QPSK  (0:0:0)'
(time: 00:13.704)
trying 'S  f = 10815 kHz H SR = 27500  5/6 0,35  QPSK  (0:0:0)'
(time: 00:16.756)
trying 'S2 f = 10834 kHz V SR = 27500  3/4 0,AUTO  8PSK  (0:0:0)'
(time: 00:19.904)
trying 'S2 f = 10853 kHz H SR = 29900  3/4 0,AUTO  8PSK  (0:0:0)'
(time: 00:23.244)
trying 'S  f = 10873 kHz V SR = 27500  3/4 0,35  QPSK  (0:0:0)'
(time: 00:26.261)
trying 'S  f = 10892 kHz H SR = 27500  3/4 0,35  QPSK  (0:0:0)'
(time: 00:29.569) ^C
ERROR: interrupted by SIGINT, dumping partial result...
(time: 00:31.965) dumping lists (0 services)
..
Done, scan time: 00:31.965
DiJGo commented 4 years ago

All,

in the file after Brad's patch applied ~/linux/drivers/media/usb/em28xx/em28xx-dvb.c make changes inside function like below (use default values 0 instead of 1) static int em28178_dvb_init_pctv_461e_v2(struct em28xx *dev) {

//m88ds3103_pdata.ts_clk_pol = 1;
m88ds3103_pdata.ts_clk_pol = 0; // use this instead
m88ds3103_pdata.agc = 0x99;
//m88ds3103_pdata.agc_inv = 1;
m88ds3103_pdata.agc_inv = 0;    // use this instead
//m88ds3103_pdata.spec_inv = 1;
m88ds3103_pdata.spec_inv = 0;   // use this instead

Then recompile etc. This worked for me.

To do a quick check follow e.g. instructions from https://www.linuxtv.org/wiki/index.php/Testing_your_DVB_device

In my case szap -r 'Das Erste' -c ./channels.conf with channels.conf downloaded from https://github.com/hiroshiyui/dvb-apps/blob/master/util/szap/channels-conf/dvb-s/Astra-19.2E mplayer /dev/dvb/adapter0/dvr0

And voila I got a picture

Please try for your setups and see if it works for you as well.

b-rad-NDi commented 4 years ago

SMH. Go figure it'd be something as easy as that. I've been poring over the demod code trying to figure out what subtle error I'd introduced lol.

I'll get this fixed up tomorrow.

b-rad-NDi commented 4 years ago

Driver updates have been migrated to branch:Montage-3103b.v3

Note this contains an update to get closer to upstream, an i2c dummy device for the timing chip. If you compile and find this modification does not work, it can be backed off by switching which line in commented in the dt_read/dt_write functions.

Solifuge80 commented 4 years ago

Hi @b-rad-NDi,

I have some problem with my setup. With Windows 10, as I described before, all things are functional, same as with Linux and TvHeadend with the WinTV-dualHD.

With the WinTV-NOVA-S2 and your last branch:

image

image

Can you help me please ?

b-rad-NDi commented 4 years ago

Ok so this thread is titled bizarrely. The "Nova S2" does not have usb vid:pid of 2013:0461. The "Nova S2" is not a usb device at all.

Are you telling me that "Nova S2" now comes with the 3103b demodulator like 461e (the point of this issue)? If so, then it never worked in Linux because the support for that demod is the point of my branch. I will need pci id's and other identifying information to stuff in the support for this device. I'll ask my bosses if they know anything about this, but they haven't said anything to me about pcie devices.

b-rad-NDi commented 4 years ago

@Solifuge80 : boss tells me "Nova S2" is 461e in different plastic. Getting specs on it now, but there's no reason why it shouldn't work just as well as 461e does.

Solifuge80 commented 4 years ago

@b-rad-NDi My device is this: https://www.hauppauge.co.uk/site/products/data_novas2.html with 2013:0461.

Solifuge80 commented 4 years ago

Hi @b-rad-NDi , do you have any news for my Nova S2 ? Is there something I can do to make you understand my problem in using this device ?

Thank you very much,

thomisus commented 4 years ago

Hi @b-rad-NDi , any news.. I have the same usb stick as @Solifuge80 and have same problems

b-rad-NDi commented 4 years ago

Would any of you be interested in trying test kernels with hopeful/potential fixes?

We suspect this is a usb bandwidth issue. DVB-T2 maximum bandwidth is ~53mbps whereas DVB-S2 maximum bandwidth is ~140mbps. The fixes revolve around increasing the amount of data delivered by the usb subsystem.

Solifuge80 commented 4 years ago

@b-rad-NDi Thank you for your support but I've sold the Nova S2 two months ago as there was no way to make it function properly. I've bought a Sundtek SkyTV Ultimate 8 and it's running fine.

b-rad-NDi commented 4 years ago

This issue is being escalated now. Hoping to get to the bottom of this.

b-rad-NDi commented 4 years ago

Attention all: A tester has utilized my eeprom-tinker utility to convert their 461e from ISOC transfer to bulk transfer and now all the "bad" satellites work 100%. I still need others to confirm the fix, but it is like I theorized, once I realized the 461e is coming from the factory in ISOC mode.

Please reach out to either me or hauppauge support for the conversion utillity.

@DiJGo @thomisus

thomisus commented 4 years ago

Hi Brad, i started with a clean install of ubuntu 20.04, your ppa and latest kernel. I compiled eeprom-tinker and changed from isoc to bulk mode. First thing i noticed is that

root@ubuntu-x64-20-04:~/eeprom-tinker# dmesg |grep -i em28x
[    4.238189] em28xx 1-2:1.0: New device PCTV PCTV 461 @ 480 Mbps (2013:0461, interface 0, class 0)
[    4.238191] em28xx 1-2:1.0: DVB interface 0 found: isoc
[    4.300377] em28xx 1-2:1.0: chip ID is em28178
[    4.689338] em28xx 1-2:1.0: EEPROM ID = 26 00 01 00, EEPROM hash = 0x7ed642a2
[    4.689340] em28xx 1-2:1.0: EEPROM info:
[    4.689341] em28xx 1-2:1.0:  microcode start address = 0x0004, boot configuration = 0x01
[    4.698463] em28xx 1-2:1.0:  AC97 audio (5 sample rates)
[    4.698464] em28xx 1-2:1.0:  500mA max power
[    4.698466] em28xx 1-2:1.0:  Table at offset 0x27, strings=0x148c, 0x1874, 0x0a6a
[    4.755842] em28xx 1-2:1.0: Identified as PCTV DVB-S2 Stick (461e v2) (card=104)
[    4.755845] em28xx 1-2:1.0: dvb set to isoc mode.
[    4.755979] usbcore: registered new interface driver em28xx
[    4.772626] em28xx 1-2:1.0: Binding DVB extension
[    4.911067] em28xx 1-2:1.0: DVB: registering adapter 0 frontend 0 (Montage Technology M88DS3103B)...
[    4.912077] em28xx 1-2:1.0: DVB extension successfully initialized
[    4.912079] em28xx: Registered (Em28xx dvb Extension) extension
[    4.931233] em28xx 1-2:1.0: Registering input extension
[    4.965007] rc rc0: lirc_dev: driver em28xx registered at minor = 0, scancode receiver, no transmitter
[    4.965101] em28xx 1-2:1.0: Input extension successfully initialized
[    4.965102] em28xx: Registered (Em28xx Input Extension) extension

still reports isoc mode but

root@ubuntu-x64-20-04:~/eeprom-tinker# ./eeprom-tinker -i -b 0
EEPROM Tinker
    Welcome to the danger zone
    Be careful, this utility can harm your system if misused!

Found tag 0x04 (serial)
Found tag 0x06 (model/revision)

vid:pid       2013:0461
Board Config: 04  (bulk)
serial:       d6 d3 01
model:        00 03 0d 40  ( 200000 )
revision:     89 8a 19

Found: isoc mode PCTV 461e (3103B)  ( 200000 )
Conversion to bulk mode possible: yes
Convert device to new PID? possible
Change allowed

reports bulk mode.

At least now I can scan transponders and muxes and find channels.

The problem is that I can only watch SD channels. With HD or 4K channels i get a lot of continuity errors and the image is blank.

Another problem is that sometimes the signal is very low ( like 17% ) but if i reboot , the signal goes up to 93%.

b-rad-NDi commented 4 years ago

@thomisus Did you unplug and reconnect the device after using the tool? If that bit is set in the eeprom the driver configures it in bulk mode.

thomisus commented 4 years ago

@b-rad-NDi Hi, first of all, thank you very much for your effort and great dedication. After many tries and many changed settings in tvheadend and kaffeine, I can confirm it works quite good. The trick was to enable "force old status" in tvheadend in order to use old ioctl to read linuxdvb status. I can watch HD and 4K programs too. Without that setting I can't watch anything ( but I can find channels from w_scan )

From a technical point of view, why under windows the usbkey can work without changing the usb mode?

Now a another bug i found. As you can see from this image https://imgur.com/a/846dTh0 i get 0 SNR.. maybe the driver is not reporting it correctly?

b-rad-NDi commented 4 years ago

Thank you for the update @thomisus :-D

In theory it should have worked just as bad, or close to, in windows. We've gotten quite a few reports as transponders have been drastically increasing their bandwidth.

I will look into the SnR issue and see about getting it sorted out.

b-rad-NDi commented 4 years ago

Can you file a new bug for the SnR @thomisus

I'm going to close this one, since I (fingers crossed) believe this issue is now FINALLY settled.