Wrangling with tvheadend

For quite some time (read: years) I’ve had a Raspberry Pi TV HAT but haven’t managed to get it working in the house I’m in.

The house has an old roof aerial and plug in signal booster and all attempts to get it working with my TV HAT have resulted in not being able to pick up any channels or very few with no usable signal.

For various reasons the only TV (currently using a satellite dish) is not near the aerial socket and difficult to get the aerial cable to it to test further, so I’ve been working a bit in the blind.

A year or two later I decided to attempt this again and first did some research about the UK Freeview network and transmitters.

You might think that the official Freeview site would actually provide this, but the site nowadays appears to just be a marketing tool to promote Freeview and has no technical information at all.

The fact that there is no official public resource for technical information about the Freeview network transmitters, power, frequencies, channels and muxes etc strikes me as quite dysfunctional for a modern TV network.

Anyhow to the rescue is ukfreetv and they appeared to have an up to date list, although there is no page modification date there is a big hint, with mention of things that would be removed in November 2020.

ukfreetv, Dover Kent transmitter page, October 2021

So I pondered that perhaps the predefined list within tvheadend might be out of date, and so I delved in further… and well, it’s quite bad, at least 7 years old.

root@debian:/usr/share/tvheadend/data/dvb-scan/dvb-t# cat uk-Dover
# Auto-generated from:
# <http://www.digitaluk.co.uk/coveragechecker/main/tradeexport/CT157AQ/NA/0/>
# location and provider: UK, Dover
# date (yyyy-mm-dd)    : 2014-03-25
...

[ As an aside, if you follow that source data URL it now takes you to… the Freeview site. So clearly, at some point it was thought quite useful to provide this level of data to the ordinary (wo)man but marketing have taken control and got rid of the pesky useful information. ]

This is SO out of date that the transmitter has changed all of its frequencies and I would say this file (and possibly many of the others) are next to useless!

Thankfully ukfreetv provides a load more useful information:

But what to do with all this? I’ve no idea what it all means really so I made some observations based on the information provided and comparing to the existing data files and simply guessed!

The important bits to note are the channel frequency and its DTG-x specification, as each DTG has its own parameters. For each DTG pay attention to the frequency, transmission mode (8 or 32K), QAM, FEC and guard.

ukfreetv have an explainer summary of all the modes and their parameters.

As far as I can tell, in the data file, leave bandwidth, LP, hierarchy and inversion alone. You’ll need one section for each mux/channel, there will be either 3 or 6 of these and maybe an extra HD one if you’re lucky enough to be in range of the right transmitter.

[DESCRIPTION]
	DELIVERY_SYSTEM = DVBT
	FREQUENCY = 690000000
	BANDWIDTH_HZ = 8000000
	CODE_RATE_HP = 3/4
	CODE_RATE_LP = NONE
	MODULATION = QAM/64
	TRANSMISSION_MODE = 8K
	GUARD_INTERVAL = 1/32
	HIERARCHY = NONE
	INVERSION = AUTO

Do note that on the 32K channels, which is HD, to use DVBT2 instead of DVBT in the DELIVERY_SYSTEM field. I missed this at first!

Once you’ve edited then restart the tvheadend service and try and rescan, I’ve found the simplest way to do this is just delete the existing mux data and go through the setup wizard again.

Once I had done this I started to see better results and picked up a whole mux of channels, but this was still poor. I decided to take a gamble and ditch the old signal booster for a new one, on the basis that it a) might be broken or b) just not very good and c) not filter out any of the 4G mobile antenna signals that are now common and filtered in most new boosters.

I installed my new booster and.. my scan found 11 muxes (I don’t really understand why it creates 5 unspecified ones on the fly?) and found 141 channels!

I have one mux where most of the channels suffer from a lot of break up, I don’t know why this is, having double checked the data file it all looks okay. But this could just be my area signal strength, I need to boost more (or I’m now over boosted?) or my old aerial.

So in summary, don’t assume that a) the bundled channel data (at least for the UK) in tvheadend will work at all, b) you don’t need a decent signal booster and c) that you might need a 4G filter.

I’m sure a professional aerial fitter could diagnose better, especially if they have an expensive signal meter to see what’s going on.

Here’s the new data file I created for Dover, Kent.

#----------------------------------------------------------------------------------------------
# Manually created via data from https://ukfree.tv/transmitters/tv/Dover
#----------------------------------------------------------------------------------------------
# location and provider: UK, Dover
# date (yyyy-mm-dd)    : 2021-10-27
#----------------------------------------------------------------------------------------------
[C33 PSB1 BBCA DTG-3]
	DELIVERY_SYSTEM = DVBT
	FREQUENCY = 570000000
	BANDWIDTH_HZ = 8000000
	CODE_RATE_HP = 2/3
	CODE_RATE_LP = NONE
	MODULATION = QAM/64
	TRANSMISSION_MODE = 8K
	GUARD_INTERVAL = 1/32
	HIERARCHY = NONE
	INVERSION = AUTO

[C35 PSB2 D3+4 DTG-3]
	DELIVERY_SYSTEM = DVBT
	FREQUENCY = 586000000
	BANDWIDTH_HZ = 8000000
	CODE_RATE_HP = 2/3
	CODE_RATE_LP = NONE
	MODULATION = QAM/64
	TRANSMISSION_MODE = 8K
	GUARD_INTERVAL = 1/32
	HIERARCHY = NONE
	INVERSION = AUTO

[C36 PSB3 BBCB DTG-6]
	DELIVERY_SYSTEM = DVBT2
	FREQUENCY = 594000000
	BANDWIDTH_HZ = 8000000
	CODE_RATE_HP = 2/3
	CODE_RATE_LP = NONE
	MODULATION = QAM/256
	TRANSMISSION_MODE = 32K
	GUARD_INTERVAL = 1/128
	HIERARCHY = NONE
	INVERSION = AUTO

[C39 COM4 SDN DTG-8]
	DELIVERY_SYSTEM = DVBT
	FREQUENCY = 618000000
	BANDWIDTH_HZ = 8000000
	CODE_RATE_HP = 3/4
	CODE_RATE_LP = NONE
	MODULATION = QAM/64
	TRANSMISSION_MODE = 8K
	GUARD_INTERVAL = 1/32
	HIERARCHY = NONE
	INVERSION = AUTO

[C42 COM5 ARQA DTG-8]
	DELIVERY_SYSTEM = DVBT
	FREQUENCY = 642000000
	BANDWIDTH_HZ = 8000000
	CODE_RATE_HP = 3/4
	CODE_RATE_LP = NONE
	MODULATION = QAM/64
	TRANSMISSION_MODE = 8K
	GUARD_INTERVAL = 1/32
	HIERARCHY = NONE
	INVERSION = AUTO

[C48 COM6 ARQB DTG-8]
	DELIVERY_SYSTEM = DVBT
	FREQUENCY = 690000000
	BANDWIDTH_HZ = 8000000
	CODE_RATE_HP = 3/4
	CODE_RATE_LP = NONE
	MODULATION = QAM/64
	TRANSMISSION_MODE = 8K
	GUARD_INTERVAL = 1/32
	HIERARCHY = NONE
	INVERSION = AUTO

# end-of-file.

One final thought, every digital TV in the UK I have used can simply re-scan and work all this out without being loaded with any data files, which puzzles me as to why tvheadend can’t do this to. If it did, it would save some headaches…


Posted

in

, ,

by

Tags:

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *