DVB-T dongle not working after 2015-08-03 update

My “Sveon STV20” stopped working with the latest (aug/3) update. There are lots of I2C errors in journalctl. Looks like the new kernel (4.1.3) is the culprit. I fixed it by reverting to kernel 3.18.13:

EDIT 1: missing --reinstall. Also, rbp2 is for Pi 2, rbp1 for the Pi 1.

apt-get install rbp2-image-3.18.13-1-osmc --reinstall

EDIT 2: this is still not perfect, though. Sometimes changing channels results in image freeze, you need to press stop and select a channel again. This also worked fine before the update.

Some relevant info:

lsusb:

root@osmc:~# lsusb
Bus 001 Device 006: ID 1b80:d39d Afatech

dmesg (probing at boot looks ok):

[    4.794262] usb 1-1.5: dvb_usb_v2: found a 'Sveon STV20' in warm state
[    4.831010] usb 1-1.5: dvb_usb_v2: will pass the complete MPEG2 transport stream to the software demuxer
[    4.831101] DVB: registering new adapter (Sveon STV20)
[    4.882162] i2c i2c-3: Added multiplexed i2c bus 4
[    4.882198] rtl2832 3-0010: Realtek RTL2832 successfully attached
[    4.882302] usb 1-1.5: DVB: registering adapter 0 frontend 0 (Realtek RTL2832 (DVB-T))...

But when trying to tune into some channel:

ago 06 17:14:36 osmc tvheadend[822]: mpegts: 778MHz in alicante - scan no data, failed
ago 06 17:14:36 osmc tvheadend[822]: subscription: 0015: "scan" unsubscribing
ago 06 17:14:36 osmc tvheadend[822]: mpegts: 770MHz in alicante - tuning on Realtek RTL2832 (DVB-T) : DVB-T #0
ago 06 17:14:36 osmc tvheadend[822]: opentv-ausat: registering mux 770MHz in alicante
ago 06 17:14:36 osmc kernel: rtl2832 3-0010: i2c reg read failed -32
ago 06 17:14:36 osmc kernel: i2c i2c-4: fc0012: I2C write reg failed, reg: 01, val: 06
ago 06 17:14:36 osmc kernel: i2c i2c-4: fc0012: fc0012_set_params failed: -121
ago 06 17:14:36 osmc kernel: rtl2832 3-0010: i2c reg read failed -32
ago 06 17:14:36 osmc kernel: rtl2832 3-0010: i2c reg read failed -32
ago 06 17:14:36 osmc tvheadend[822]: subscription: 0017: "scan" subscribing to mux "770MHz", weight: 5, adapter: "Realtek RTL2832 (DVB-T) : DVB-T #0", network: "alicante", service:
ago 06 17:14:38 osmc tvheadend[822]: htsp: 127.0.0.1 [ osmc | Kodi Media Center ]: Disconnected
ago 06 17:14:38 osmc tvheadend[822]: htsp: Got connection from 127.0.0.1
ago 06 17:14:38 osmc tvheadend[822]: htsp: 127.0.0.1: Welcomed client software: Kodi Media Center (HTSPv18)
ago 06 17:14:38 osmc tvheadend[822]: htsp: 127.0.0.1 [ Kodi Media Center ]: Identified as user osmc
ago 06 17:14:40 osmc kernel: rtl2832 3-0010: i2c reg read failed -32
ago 06 17:14:40 osmc kernel: i2c i2c-4: fc0012: I2C write reg failed, reg: 12, val: 00
ago 06 17:14:40 osmc kernel: i2c i2c-4: fc0012: fc0012_get_rf_strength failed: -121
ago 06 17:14:40 osmc kernel: rtl2832 3-0010: i2c reg read failed -32

Ditto here with 2 different RTL2832 tuners.
Same sort of errors.
Sam Nazarko has acknowledged there is a driver problem but no more feedback.
Drivers are not my knowledge area so it is a waiting game I guess.

How did you revert to the previous kernel? I installed rbp1-image-3.18.13-1-osmc (rbp1 in my case) but nothing changed, the package is installed, but "uname -r" keeps saying 4.1.3-2-osmc

I have the same problem, recording on my Realtek RTL2832 (DVB-T) started failing on the 3rd of august and I can’t tune into any frequency.

My Realtek RTL2832 stopped working also after the update also,

I ran
apt-get install rbp2-image-3.18.13-1-osmc
rebooted
“uname -r” still says 4.1.3-2-osmc

But, some of my channels started working. Its not perfect, but better than nothing.

@jimbo

can you list the files in /lib/firmware/

ls -al /lib/firmware/

I just want to compare it to mine however I think what’s built into the kernel won’t show here so it’s probably the same.

That won’t re-install an already installed package, you need the --reinstall option to force it to reinstall. Try:

sudo apt-get install rbp2-image-3.18.13-1-osmc --reinstall

By the way, the way kernel updates are installed on OSMC, you can receive and install other updates without the kernel being forced back to the “current” version, only if we push a still-newer kernel would your kernel then upgrade again, but you could then still revert it using the command above.

Another way to stop kernel updates being installed altogether would be the hold the rbp2-kernel-osmc meta-package like so:

sudo apt-mark hold rbp2-kernel-osmc

This would allow other parts of the system except the kernel to update. Then when you are ready to start receiving kernel updates again you can unhold the package:

sudo apt-mark unhold rbp2-kernel-osmc

In general we don’t recommend holding OSMC packages as there may be some unintended side effects of all of the OSMC packages in the system not updating as a whole, however if you have no other choice this might be a workable temporary solution for you.

1 Like

@DBMandrake Great explanation.

I reinstalled the kernel above and my tuner works again like it did.

I did not hold the kernel package (but it is good to know that I can do that), so let’s see next time there is a new kernel if the issue is fixed or not.

I’m just wondering if there is another solution to this because as you explain I don’t want to have a partially upgraded system.
Would there be a way to use an external firmware for my tuner, rather than using what’s included in kernel?

thanks again :smile:

I did the --reinstall option to give it ago, and haven’t noticed much difference. Some of my channels are working but some are not. Still its better than what I had.

Thanks again.

@jimbo without --reinstall option my old kernel wouldn’t even downgrade, using the --reinstall option dit it.

my kernel is also showing as the correct one:

uname -r
3.18.13-1-osmc

and everything is working again as it was for me.

@nirvana80 ok, mine does say 3.18.13-1-osmc

But its still not 100%, but I’ll take it.

Does anyone have any idea when the firmware will be fixed? Who is the upstream?

Thanks guys and DBMandrake, was going insane trying to figure out why my tuners stopped working. Wife is just about ready to kill me, missed a weeks worth of her TV shows lol.

august update reinstalled 4.1.5-1-osmc, as I didn’t hold the kernel package and the tuner stopped working again.

I’ll leave i unhold just in hope that this is going to be fixed at some point but I have my doubts.

Any idea this can be fixed by manually using the correct drivers, or is the kerner always going to take precendence, anybody any idea how we can fix this?

actually the tuners still seems not to work even after reinstalling 3.18.13-1-osmc kernel :cry:

please help!

A few weeks ago, the OSMC intaller was installing a 3.18.13 kernel version (the pre-july update).

@Julipo
Not sure what you mean, but what I meant is that reinstalling the kernel, didn’t fix the issue with the tuner like it did for July Kernel update, so basically now I have no way to go back to a working tuner state :frowning:

I’m telling that you can try a clean install os OSMC pre-july version. You can do a backup of your microsd/usb partition or whatever you have OSMC installed and, if the clean install doesn’t works, restore your backup to return to your actual system

aaaaaaaargh same problem , did the dist-upgrade because osmc gui app wouldn’t update. Kernel updated with dist-upgrade so no more tv tuners. Tried sudo apt-get install rbp2-image-3.18.13-1-osmc --reinstall and uname -r says kernel is back to 3.18.13-1 but now still no tuners?? My wife is gonna kill me lol, I’m unable to record her shows

As before, lsusb lists the tuners but there is no /dev/dvb direcory

and suggestions @DBMandrake ?


Setting up rbp2-image-3.18.13-1-osmc (1) ...

 Hmm. There is a symbolic link /lib/modules/3.18.13-1-osmc/build
 However, I can not read it: No such file or directory
 Therefore, I am deleting /lib/modules/3.18.13-1-osmc/build


 Hmm. The package shipped with a symbolic link /lib/modules/3.18.13-1-osmc/source
 However, I can not read the target: No such file or directory
 Therefore, I am deleting /lib/modules/3.18.13-1-osmc/source

Running depmod.
Examining /etc/kernel/postinst.d.
run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 3.18.13-1-osmc /boot/vmlinuz-3.18.13-1-osmc
run-parts: executing /etc/kernel/postinst.d/inform-updater 3.18.13-1-osmc /boot/vmlinuz-3.18.13-1-osmc
run-parts: executing /etc/kernel/postinst.d/process-vmlinuz-rbp 3.18.13-1-osmc /boot/vmlinuz-3.18.13-1-osmc

is this unusual?

The log you pasted looks normal.

If you’ve downgraded the kernel and it still doesn’t work (did you do a full power down, not just a warm reboot ?) then it must be unrelated to the kernel, as re-installing the old kernel package will get you back to exactly where you were before if it was only a kernel issue.

just a sudo reboot, I rarely turn the pi off, will try a full shutdown when wife stops watching old shows.

also dmesg outputs:

[   14.875543] usb 1-1.3.1.2: dvb_usb_v2: found a ‘Realtek RTL2832U reference design’ in warm state
[ 14.924085] dvb_usb_rtl28xxu: probe of 1-1.3.1.2:1.0 failed with error -32
[ 14.924260] usb 1-1.3.4: dvb_usb_v2: found a ‘Realtek RTL2832U reference design’ in warm state
[ 14.974751] dvb_usb_rtl28xxu: probe of 1-1.3.4:1.0 failed with error -32
[ 14.975073] usb 1-1.3.1.4: dvb_usb_v2: found a ‘Realtek RTL2832U reference design’ in warm state
[ 15.031164] dvb_usb_rtl28xxu: probe of 1-1.3.1.4:1.0 failed with error -32

not sure if that sheds any light
will update when I am able to try full power down