Skip to content

Hardware ​

Any TVHeadend-compatible tuner works. Freetvarr talks only to TVHeadend and the recordings folder, so a network tuner, a USB DVB-T/T2/C/S2 stick, a PCIe card, SAT>IP, and IPTV all work. On a NAS a network tuner is the easiest choice, because there is no USB passthrough to arrange (most NAS kernels ship no DVB drivers, so a USB stick gives you no /dev/dvb to pass in). The author recommends the HDHomeRun Flex Quatro, and it is the only tuner Freetvarr has been tested with.

The broadcast standard where you live decides the model: DVB-T/T2 in Australia, New Zealand, the UK, and Europe; ATSC in North America; DVB-C on cable. An HDHomeRun model exists for each, and TVHeadend drives them all the same way.

RegionStandardHDHomeRun model
Australia, New Zealand, UK, EuropeDVB-T/T2HDFX-4DT Flex Quatro
Europe, cableDVB-CHDHR5-4DT Connect Quatro (T/T2/C)
United States, CanadaATSC 1.0 / 3.0HDFX-4US Flex Quatro, HDHR5-4US Connect Quatro, or the Flex 4K

The wiring, the connector, and the signal checks below are the same for every model. Only the model number and the TV guide source change (see Outside Australia on the TVHeadend page for the TV guide).

The tuner ​

The rest of this page is the author's own setup, in Australia. Read it as a worked example and substitute your own region's model and retailer.

Buy an HDHomeRun Flex Quatro, model HDFX-4DT, direct from SiliconDust. It is US$199.99, receives DVB-T and DVB-T2, and carries four tuners, so four things can record at once (or three record while you watch a fourth live).

It is a network tuner: it plugs into your router, or a switch on your home network, with a network (ethernet) cable, and serves its tuners over your home network. Nothing plugs into the NAS. The author's router has a single LAN port, so a TP-Link TL-SG105 five-port switch connects the router, the NAS, and the tuner.

IMPORTANT

In the order notes, ask for the AU/NZ power adapter and an F-to-PAL aerial adapter. SiliconDust has power adapters for the US, UK, EU, and AU/NZ. The author asked for both in his order notes, and both came in the box.

No Australian retailer stocks a DVB-T HDHomeRun. Buying direct from SiliconDust is the normal route, and shipping to Australia is free.

A black HDHomeRun Flex Quatro network tuner, a small square box

The HDHomeRun Flex Quatro: four tuners, an aerial socket, and a network port.
Image: SiliconDust, shown from silicondust.com.

Direct to a spare NAS port ​

A NAS with a second ethernet port can take the tuner directly, with no router in between. It works, with two catches. Nothing on that link hands out addresses, so the tuner and the NAS port fall back to link-local addresses (169.254.x.x). TVHeadend under host networking still finds the tuner by broadcast on that port. But the tuner no longer appears in your router's client list, and its status page answers only from the NAS itself. Plug the tuner into the router or a switch on your home network if you can.

Models that work in Australia ​

ModelStandardTunersNote
HDFX-4DT Flex QuatroDVB-T/T24The current model. 2 year warranty
HDFX-4DT-R Flex Quatro refurbishedDVB-T/T24Cheaper, 90 day warranty, stock comes and goes
HDHR5-4DT Connect QuatroDVB-T/T2/C4The older model. Works, but usually dearer through AU resellers than a new Flex direct

Models that do not work in Australia ​

Anything with -US in the model number, and anything branded 4K, is an ATSC tuner for the American standard. It will not tune a single Australian channel. Most Amazon AU and eBay AU HDHomeRun listings are these. Check the model number before you buy.

Why not a USB tuner ​

A A$20 Xbox One or Hauppauge USB tuner works on a normal Linux computer. It does not work on most NAS units (Synology and QNAP among them): their kernels ship no DVB drivers, so there is no /dev/dvb to pass into the TVHeadend Docker container and nothing for TVHeadend to find. A network tuner needs no driver on the NAS. To use a USB tuner anyway, run TVHeadend on a Raspberry Pi and write its recordings to a NAS share instead.

A Hauppauge WinTV USB tuner stick with its case removed, showing the aerial socket at one end and the USB plug at the other

A USB tuner (Hauppauge WinTV MiniStick). It needs a computer with DVB drivers, such as a Raspberry Pi or a mini PC running Linux.
Photo: Raimond Spekking, CC BY-SA 4.0, via Wikimedia Commons; resized.

A Raspberry Pi 4 in a clear case with a small TV tuner board fitted on top and an aerial socket at its edge

A Raspberry Pi 4 with the Raspberry Pi TV µHAT, a DVB-T/T2 tuner board. TVHeadend drives it the same way as a USB tuner.
Photo: Multicherry, CC BY-SA 4.0, via Wikimedia Commons; resized.

Wiring it up ​

Three long UHF TV aerials and an older VHF aerial on one mast against a blue sky

Rooftop TV aerials. Most Australian homes already have one; the tuner uses the same aerial and lead as the old TV or recorder.
Photo: Serge Nueffer, public domain, via Wikimedia Commons; cropped and resized.

The tuner takes the place of whatever box was on the end of your aerial lead. Nothing else in the chain changes. For most homes the chain is the aerial lead into the tuner and an ethernet lead into the router:

NOTE

The masthead amplifier, the power injector, and the F-to-PAL adapter below are the author's own installation. None of them is required by Freetvarr or TVHeadend. Skip this section unless your aerial already has an amplifier or your wall plate does not fit the tuner's socket.

With a masthead amplifier (author's setup) ​

If a masthead amplifier sits at the antenna, a small box at the wall powers it by sending mains-derived voltage back up the coax. A Kingray PSK02 is the common one in Australia: the lead from the wall plate plugs into its ANTENNA port, and the tuner connects to its TELEVISION port.

WARNING

If you have an injector, keep it in the chain. Run a lead from the wall straight to the tuner and the masthead amplifier loses its power, so almost no signal arrives and the tuner finds nothing.

The connector ​

The HDHomeRun's antenna input is an F-type threaded socket, so your wall plate may need an adapter. This depends on your country's plug standard. In Australia it does: Australian wall plates and leads use a PAL (Belling-Lee) push-on plug, so the two do not meet. Ask for an F-to-PAL adapter in the order notes, as above. Buyers on the Whirlpool HDHomeRun thread report that it comes in the box. If it is missing, buy one: an F plug that screws onto the tuner with a PAL socket that takes your existing lead. Jaycar PA3672 is about $6, or use a fly lead with a PAL plug on one end and an F plug on the other.

Two aerial leads side by side: a PAL plug with a plain metal barrel on the left, and a smaller threaded F plug with a bare centre wire on the right

Left: a PAL (Belling-Lee) plug, which pushes on. Right: an F plug, which screws on. The tuner has an F socket.
Photo: Sajad-HasanAhmadi, CC BY-SA 4.0, via Wikimedia Commons; resized.

NOTE

SiliconDust's product page lists only the power adapter as in the box. The F-to-PAL adapter is not a listed item, so a future order could arrive without it.

Checking the signal ​

Once the tuner has power and a network cable, find its IP address in your router's list of connected devices, then open http://<hdhr-ip>/tuners.html in a browser. That page reports signal strength, signal quality, and symbol quality per tuner. Read it before you blame the tuner for anything.

The common faults:

  • Dropouts and reboots. The usual cause is a tired 5 V power supply, not reception. Swap in a 2–3 A 5 V supply and re-test.
  • Strong signal, poor quality. Only with a masthead amplifier: the amplifier plus a short cable run can overload the front end. A 12 dB inline attenuator between the adapter and the tuner is the first thing to try.

Only with a power injector: if its TELEVISION port is not fully isolated it can pass a few volts AC through to the tuner. Tuners tolerate this, but if the readings look strange, a $5 inline DC block (Jaycar LT3068, or any F-type DC block) between the adapter and the tuner removes it.

Hardware transcoding ​

Live TV in the browser re-encodes H.264 so that Chrome can play interlaced channels (see Video handling). A graphics chip does this work with almost no CPU. Freetvarr supports Intel Quick Sync and AMD through VAAPI. NVIDIA (NVENC) is not supported. A host without a supported chip needs no setup: Freetvarr uses software and caps the video at 540 lines.

  1. In a terminal on the host, find the render group ID: stat -c %g /dev/dri/renderD128.
  2. Add that number to the .env in the freetvarr folder: RENDER_GID=<number>.
  3. Download docker-compose.hwaccel.example.yml from the repository (https://raw.githubusercontent.com/furey/freetvarr/main/docker-compose.hwaccel.example.yml) and save it as docker-compose.override.yml beside docker-compose.yml. Docker Compose loads the override file by itself.
  4. Recreate the Docker containers: run docker compose up -d in the freetvarr folder.
  5. Check Freetvarr's log: run docker compose logs freetvarr | grep "\[live\] video". The line says hardware (VAAPI when it works.

The override file passes /dev/dri into the Freetvarr Docker container and adds RENDER_GID as a group. Never put /dev/dri in the main Docker compose file on a host that lacks it. The Freetvarr Docker container then fails to start. Set LIVE_TV_VAAPI_DEVICE in the .env if the render node is not /dev/dri/renderD128.

NOTE

The author's NAS is a Synology DS220+ (Intel Celeron J4025, UHD 600 graphics) with render group 937. Hardware 1080i to 720p ran at about 6.5x real time, using about 5% of one core. Software 720p ran at only 1.36x real time on both cores.

Where next ​

  • TVHeadend: point the recorder at the tuner and scan for channels.
  • Live TV: watch the tuner directly, with no recording involved.

GPL-3.0-or-later. Not affiliated with or endorsed by SiliconDust, TVHeadend, or Plex.