A state of tuners
A state of tuners
PCI tuners, digital amateur television, SATIP, IPTV and open source software.
Covering digital modes of satellite, terrestrial and amateur TV.
The following software is useful for testing.
Adapters and accessories
You will need a range of adapters if you wish to use RTL devices.
75 Ohm coax.
Bias Tee for LNB power.
LNB DC power blocker. Used for connecting a passive device like a Yagi to a tuner which supplies LNB power. Do not trust the LNB power option inside the set top box settings. Sometimes there isn’t even a option. See eBay listing: F Screw Type DC Power Blocking Blocker Inline In Line Connector Coupler 100994
This is specific to europe.
|13 V||0 kHz||Vertical||10.70–11.70 GHz, low|
|18 V||0 kHz||Horizontal||10.70–11.70 GHz, low|
|13 V||22 kHz||Vertical||11.70–12.75 GHz, high|
|18 V||22 kHz||Horizontal||11.70–12.75 GHz, high|
UHF Yagi. Most common for modern terrestrial DVB-T, DVB-T2 Freeview. If doing DATV DVB-S you must use a LNB DC power blocker.
VHF Yagi. Old analog TV.
Universal LNB + dish. Most common for satellite DVB-S, DVB-S2 Freesat. Also can be used for: QO-100/Es’hail-2
Bus speeds for tuner devices
Important to ensure we have the bandwidth for video.
USB 2.0 revised = 60 MBps
PCI standard 32 bit = 133 MBps
PCI-E x4 = 800 MBps (am I using PCI 3.0?)
Analog video sources:
Digital TV sources:
Using a TV antenna for ham radio band reception.
DAB decoding using RTL dongle and FOSS software using: welle.io
|Type||Brand||Model||Chipset||Frequency range||Modes||Inputs||OS||Driver||Software support||PPM offset||Docs||Notes|
|PCI-E||Hauppauge||WinTV-HVR-1200||NXP TDA10048HN||DVB-T||Belling-Lee, F-type, RCA, 3.5 mm jack and S-Video DIN||Linux||V4L2||Kaffeine, Tvheadend||linuxtv|
|PCI universal 32 bit||AsusTek||LNA Tiger Hybrid||Philips TDA10046H||51 - 858 MHz||DVB-T, Analog||Belling-Lee||Windows, Linux||DirectShow, V4L2||VLC, Tvheadend||Firmware required for Linux.|
|USB 2||EasyCAP Somagic||SMI-2021CBE||Analog||RCA||linuxtv||Designed for CCTV DVR.|
|USB 2||NewGen||RTL2832||25 - 1760 MHz||DVB-T||SMA||Linux||V4L2||VLC, Tvheadend||0.5||linuxtv|
|USB 2||DVB-T+FM+DAB||820T2||DVB-T||MCX||Linux||V4L2||VLC, Tvheadend|
|USB 2||Dual||RTL||DVB-T||SMA, SMA||Linux||V4L2||VLC, Tvheadend|
|USB 2||Xbox One||Digital TV Tuner||Panasonic MN88472||DVB-T, DVB-T2, DVB-C||Belling-Lee||Linux||V4L2||Kaffeine, Tvheadend||linuxtv||Firmware required for Linux.|
|PCI universal 32 bit||Pinnacle PCTV Systems||4000i||DVB-S||F-type||Windows||linuxtv||No Linux support as of yet.|
|PCI-E||TBS||TBS-6980||DVB-S, DVB-S2||F-type, F-type||Linux||V4L2||linuxtv||Firmware required for Linux.|
Note: Generic RTL devices may require a PPM offset outside their intended use center frequency.
AsusTek - LNA Tiger Hybrid signal issues
Windows VLC: Not good signal at all. Very blocky. For some reason will decode in DVB-T2 but I don’t believe it really is doing V2. See screenshots of VLC codec info.
Linux VLC: No decode as of yet. Sometimes syncs but never a image or error under
-vvv console output.
AsusTek - LNA Tiger Hybrid
wget https://github.com/OpenELEC/dvb-firmware/blob/master/firmware/dvb-fe-tda10046.fw?raw=true -O dvb-fe-tda10046.fw sudo cp dvb-fe-tda10046.fw /lib/firmware sudo reboot
Xbox One - Digital TV Tuner
wget http://palosaari.fi/linux/v4l-dvb/firmware/MN88472/02/latest/dvb-demod-mn88472-02.fw sudo cp dvb-demod-mn88472-02.fw /lib/firmware sudo reboot
TBS - TBS-6980
wget http://www.tbsdtv.com/download/document/common/tbs-linux-drivers_v130901.zip unzip -p tbs-linux-drivers_v130901.zip linux-tbs-drivers.tar.bz2 | tar jxOf - linux-tbs-drivers/v4l/tbs6981fe_driver.o.x86_64 | dd bs=1 skip=10144 count=55486 of=dvb-fe-cx24117.fw sudo cp dvb-fe-cx24117.fw /lib/firmware sudo reboot
Tvheadend found services test
Tests are carried out using the following two “Pre-defined muxes”:
--Generic--: auto-With167kHzOffsets adds 155 muxes
United Kingdom: uk-Mendip brings us up to 157 muxes total to scan
My adapters listed.
Comparison of networks found by each with the same test muxes to scan.
Freeview DVB-T HD channels
To get HD services I had to manually add the mux. For some reason the predefined muxes don’t include HD.
Scanning the custom mux pulls in the following HD services.
I did find when watching a HD channel it seemed to mess up my EPG. Not sure why.
Make sure you check and un-check enabled against each Seems you just need to wait for the EPG to update itself and recordings match up again.
Autorecs item after changes to channel mappings for the auto recordings to work properly. Otherwise it seems to miss some with
Make sure you don’t have any
Autorecs with channel specific filters. They will be lost when removing channels for remapping.
“Recording”/”Digital Video Recorder Profiles” sensible format string:
Example path created:
Example duplicate path created:
It’s a shame it’s not lowercase but it’s as good as I can hope for.
RTSP in Tvheadend
pipe:///usr/bin/ffmpeg -loglevel fatal -i rtsp://admin:firstname.lastname@example.org:80/stream -vcodec copy -acodec copy -metadata service_provider=cctv -metadata service_name=ch01 -f mpegts -tune zerolatency pipe:1
Here I reference my RTSP blog post but this time im using Tvheadend instead of a desktop running MPV as a client.
Before I bought a set top box I thought I would try decoding GB3ZZ using SDRagels built in DVB-S decoder along with my HackRF. No LNB DC power blocker required here as the SDR doesn’t output any bias normally.
Overview with the wideband reception so you can see how the signal looks.
It proved very CPU intensive and I only just about got data decoded when I turned off spectrum waterfalls and reduced my bandwidth to only that of what I need to decode to save on CPU.
You can see the QSPK constellation is aligning up nicely.
This is the best decode I could get so far. I need to try a very fast clock for single thread performance.
Blazer set top box DATV
I bought a cheap set top box from Amazon (Blazer HD4000). Most of the cheap chinese made ones allow you to set custom LNB settings.
Overview of the setup with Yagi and LNB DC power blocking.
LNB frequency and blind scans
Initial LNB settings.
Performing a blind scan it finds GB3ZZ.
After completion it finds GB3ZZ on both horizontal and vertical which is to be expected given we are using a Yagi with no LNB polarization switching.
11916 MHz is the frequency the blind scan found GB3ZZ on. 1316 MHz is the actual TX frequency of GB3ZZ.
11916 MHz - 1316 MHz = 10600 MHz
Which corresponds with high band universal LNB local oscillator frequency on Wikipedia: 10.60 GHz.
So it looks like the set top box frequency display takes into account LNB local oscillator frequency.
We can if we want change our software LNB frequency to make the actual frequency calculation easier
- 10000 10 GHz.
The channel list shows the two services (GB3ZZ Ch1, GB3ZZ Ch2) within the one mux along with frequency and symbol rate.
GB3ZZ displays images when there are no active repeater users.
After playing with Freeview and Freesat on Tvheadend and DATV on the set top box I thought it’s time to combine the two and have DATV in Tvheadend.
TBS-6980 + LNB DC power blocker.
Creating a custom mux for GB3ZZ.
I did a test and noticed we need to account for the assumed 10.60 GHz universal LNB frequency.
Scanning that mux we find our two services (GB3ZZ Ch1, GB3ZZ Ch2).
Mapping those to channel list.
Signal strength isn’t bad for my indoor antenna.
There are several benefits. I can see both channels at once unlike with most set top boxes. I can stream the DATV over IPTV to anywhere on my network.
- Include VLC codec screenshots.
- Megasymbols. etc
- 28.2E : Astra 2A/2C/2E/2F/Eutelsat 28A
Let me know what you think of this article on twitter @M3PGS or leave a comment below!