Missing DVB-T channels on KIII Pro


I’m testing CoreELEC on a KIII Pro as a replacement for the Android supplied software. It works really well, except for some missing channels with the internal DBV-T tuner (Availink avl6862 #0 : DVB-T #0). The missing channels are some of the main channels here in Italy, the signal is strong and of good quality, and they work both with the internal KIII software and on other TVs I have at home, so I think it isn’s a signal or cabling issue.

Tvheadhend seems to find them, it counts some services on the related muxes, but the scan is marked as “FAIL” anyway, so none of those services is actually available. I already checked the failed muxes parameters, both by searching for the details on the Internet, comparing them with other similar muxes and even by fiddling with the parameters by trial and error, with no result.

I’m not sure, but considering the behaviour it looks like a problem of the Availink driver. Quite a number of times, after a some fiddling and repeated rescans trying to find a solution, I had to restart the Tvheadhend service, which stopped to perform scanning at all or became unable to find TV services even on previously working muxes.

Of course I’m ready to provide any information which might be of help. I know Linux quite well, even though I have limited previous experience with this specific tailored distribution.

Thanks in advance for any help, and thanks to the CoreELEC Team for this promising software.



I’d say it’s either driver issue or the fact that KIII has really weak tuners. The difference in signal strength on my KIII between other DVB-S device is around 30-40%. Can you boot into Android and check if there you can find and get these channels to work (via Android app)?

Yep, already tried that. With the internal Android software it works as expected. It doesn’t seems to be an hardware issue.

I had this issue where some channels 4K were working on Android and not in CE. It’s possible that there is an issue with driver or maybe Android app is not so sensitive when the channel signal isn’t that great. I’m affraid that this won’t be addressed quickly if at all.

I understand. BTW these aren’t 4K Channels. There are some HDTV channels and some SDTV channels in the missing muxes. One of the failing muxes, the one I tried to fix by trial and error, include the HD version of the first and main channel of the italian public television network, and I live near one of the main italian cities (Milan). On that mux the signal here is really strong and of optimal quality. It is reported as perfect on any other TV device I own, and also by the internal Android KIII software.

It must be something more subtle, which of course make it more difficult to identify. BTW, is there any way I can help in analyzing the problem?

I would try setting up a new empty DVB-T Network in Tvheadend -called MyNetwork :slight_smile:
Then add one mux to the list of muxes, and assign it to MyNetwork.
Then for testing I would would have the tuner use MyNetwork only, and force scan the mux.

When/if that fails, change the basic setting of the mux … use Auto where possible to start with, force scanning at each change afterwards.

You should be able to read any errors the forcescan throws up by making the Tvheadend Log visible at the bottom of the page.

The errors if present might provide a clue to cause of problem.

Try to find exact parameters for problematic muxes. Predefined muxes in TVH for Italy are only all channels with same parameters. All muxes are DVB-T, 8Mhz, QAM/64. I think there have to be muxes with DVB-T2 QAM/256 as Italy announced migrate to DVB-T2/HEVC only since Jan 1, 2022. Also try to set for Network discovery “New muxes + changed muxes”.

Hello again,

I did some tests, as suggested, but I got all sort of weird behaviours. First of all, if I create the new network manually something doesn’t work, and the scan of new muxes never starts, it stays in the pending state forever. I have to use the wizard, selecting no predefined muxes to create just the network. With the wizard created network new muxes at least start scanning.

I concentrated on the key mux, which works with the internal Android software which reports the following parameters: frequency 514 MHz, bandwidth 8 MHz, transponder 26, VPID 438, APID 449, PPID 438. I searched the mux parameters also on the internet but all sources give me the same parameters as those supplied by the default mux list for Italy (8 MHz, QAM/64, 8k, 1/32, 2/3).

I tried creating a new mux at 514 MHz, first leaving everything to auto, then setting just the bandwidth, then trying both QAM/64 and QAM/256, then setting the full list of Italy default parameters and finaly fiddling a bit also with all the parameters. The result is always a failed scan. One little difference I saw is that from the automatic scan run by the wizard the mux find 6 services, and then fails, while with the manual creation of the mux with manual scan the scan fails without findind any service. Another difference is the transponder number. The auto scan finds a transponder number, but it has a different value than the Android software, the manual scan finds nothing.

The log resulting from the scans is always the same, no matter how I try to change parameters:

2018-06-15 10:32:52.772 mpegts: 514MHz in DVB-T Network - tuning on Availink avl6862 #0 : DVB-T #0
2018-06-15 10:32:52.773 epggrab: 514MHz in DVB-T Network - registering mux for OTA EPG
2018-06-15 10:32:52.944 subscription: 000B: “scan” subscribing to mux “514MHz”, weight: 5, adapter: “Availink avl6862 #0 : DVB-T #0”, network: “DVB-T Network”, service: “Raw PID Subscription”
2018-06-15 10:32:54.348 linuxdvb: Availink avl6862 #0 : DVB-T #0 - poll TIMEOUT
2018-06-15 10:32:57.880 mpegts: 514MHz in DVB-T Network - scan no data, failed
2018-06-15 10:32:57.880 subscription: 000B: “scan” unsubscribing

After seeing the “poll TIMEOUT” I also tried changing the “Status period (ms):” on the DVB-T adapter, increasing it up to 10 s, but nothing changes.

Don’t know what else to try. It looks like no matter what I do nothing ever changes. Now I will try a full scan using one of the generic mux list. I alredy tried that in the past days. It found much more services than with the default Italy list, but most were just duplicates and the key ones were still missing.


Some addendum. While digging in the system log files I found many errors like these ones:

2018-06-15 11:45:30.678 [ ERROR] linuxdvb: Availink avl6862 #0 : DVB-T #0 - failed to config dmx for pid 1151 [e=Operation not permitted]

Jun 15 11:52:18 CoreELEC tvheadend[2939]: linuxdvb: Availink avl6862 #0 : DVB-T #0 - failed to config dmx for pid 850 [e=Operation not permitted]

Jun 15 11:52:18 CoreELEC kernel: DMX: too many channels

May be related to the problems I found?

Again, most important for proper mux scanning is ‘Delivery System’ - DVB-T or DVB-T2. Also for avl6862 driver limit Maximum PIDs to 26 in TV adapter settings. To force immediate scanning change in Edit Mux -> Scan status-> ACTIVE. Poll TIMEOUT is only informative message about long lasting scan, you can see there was another 3.5 sec attempt to scan data.

DVB-T2 isn’t operational yet in Italy, we’re still on DVB-T on all channels. BTW, I’ll try.

Sometimes Thvheadend simply hangs. No matter if I set PEND or ACTIVE it simply does nothing and it stays IDLE. I need to restart the service to make it work again. On occasions I have to power off the KIII completely to make things work again.

Tried right now with max pids set to 26 and using DVB-T2, both by living everything to auto, setting to QAM/64, QAM/256, and playing a bit also with the other parameters. It always fails. Always the same log:

2018-06-16 08:44:33.918 mpegts: 514MHz in DVB-T Network - tuning on Availink avl6862 #0 : DVB-T #0
2018-06-16 08:44:33.919 subscription: 0015: “epggrab” unsubscribing
2018-06-16 08:44:33.919 subscription: 0017: “scan” subscribing to mux “514MHz”, weight: 6, adapter: “Availink avl6862 #0 : DVB-T #0”, network: “DVB-T Network”, service: “Raw PID Subscription”
2018-06-16 08:44:38.918 mpegts: 514MHz in DVB-T Network - scan no data, failed
2018-06-16 08:44:38.918 subscription: 0017: “scan” unsubscribing

It shows the typical behaviour of channels with no signal. May be that it isn’t really tuning into 514 MHz? I.E. Tvheadhend ask for 514 MHz but beacause of something the tuner uses a different frequency? It’s weird that no matter what I set nothing ever changes, it makes me think I’m looking in the wrong direction.

If you are still on DVB-T you can use cheap dvb-t usb stick (10€).

Well, I set DVB-T2 as “Delivery system” on the Tvheadend interface. It looks like it ignores the setting. Tried again right now.

Buying an external stick isn’t an option. I want a self contained box. If there’s no way to make CoreELEC work I’ll stick to the Android software and wait until some new CoreELEC version. I already bothered you too much. Thank you very much for all your efforts.

Just FYI, tried the latest 8.90.5, and the problem persists.


Denis Sbragion

As you say sounds like a driver issue but I guess it could also be some issue with the backend or combination of those. If you feel adventurous enough you could try a newer tvheadend version by running it in a docker container or possibly you could try some other backend.

I also have a KIII Pro but I’m in a cable household. As somebody mentioned earlier the signal strength you get via the tuner is quite poor.I had similar issues as you, were I could not find one mux but when I plugged in the antenna cable into my external USB tuner in the same system, the mux was found. I went ahead and bought the shortest possible antenna cable which made the mux appear but the picture was constantly freezing. I then bought a second cable as short as the first one but which was suppose to be of much better quality and now it works okay. I do get pixelation on occasion but it doesn’t bother me that much.

It works like a charm with the Android software, so it’s difficult to believe that it’s an hardware problem. Every symptom here points towards a software problem.

BTW, just to be sure, I moved the KIII to a different plug, with a different cable. Same exact behaviour.

Unfortunately I don’t know what else I can do to diagnose the source of the problem. I even tried to take a look at the driver code, but I know too little about this kind of hardware to be of any help. I once fixed a soundcard driver, but apart from the ubiquitos I2C protocol this is quite a different beast.

Some update on this issue. After moving the KIII to its final place, near my main TV set, I soon discovered that when the KIII was turned on random muxes started to disappear on the TV, though not the same ones that were missing on the KIII itself. This happened even if the KIII was completely disconnected from the TV. It was enough for it to be in the neighborhood of the TV to cause problems.

Clearly the KIII emits massive amounts of RF interference. Don’t know if it’s bad design or it’s just my own sample that has some problems. BTW I opened the KIII and carefully shielded the plastic box by using some EMI copper tape. After that I tried again with CoreElec, and, guess what? Now it works with CoreElec too.

What’s weird is that the RF emitted is strong enough to cause problems to other devices and probably to get back to the KIII tuner through the antenna cable, but cause no troubles to the KIII tuner itself when sealed inside its own shielded box. May be this is because internally the tuner part is heavily shielded from the rest, don’t know.

Don’t know also why it was working with its own software. May be that the Android OS and software cause a different kind of load on the system and so a different kind of RF interference. Really weird. BTW I hope this information might be of help to others having this kind of troubles.

Bye, and thanks for all the kind help,

Denis Sbragion

1 Like

Hello Denis, seems my KIII pro is suffering the same issue as yours, I’m using it in Italy too.
Stock Android works fine in DVB-T scanning and streaming, while CoreElec 8.95.6 finds no channels in TvHeadend (nor VDR-PVR backend nor w_scan).
Instead, Availink avl6862 driver is loaded with no issues by the CoreElec kernel.
Please would you share some more detail or photo about how you shielded your device?
Thanks in advance.

Some update here:

This device is just a complete waste of time.