A couple months ago we were thrilled to assemble an Entangle platform that actually looked and felt more like a set-top box. The Entangle EX-α is a Raspberry Pi 4 mated to an HDHomerun Flex 4k. Unfortunately stock FFmpeg doesn’t enable hardware-accelerated HEVC decode, which is needed to watch ATSC 3.0 broadcasts. And while patches have been done in distros such as LibreELEC, we don’t have the time at the moment to integrate those into the Entangle code base.
So…we’ve gone back to X86 to build the Entangle EX-β.
We’re still using our favorite HDHomerun Flex 4k, but this time paired with an Intel N100 board pulled from a Trigkey Green G4 mini PC. The Intel N100 has four Alder Lake “efficient” cores, or what used to be known as Atom-class cores, and no performance cores. Boards based on it aim to be energy-efficient but still provide quite a bit of horsepower – enough to decode HEVC in software.
As with the EX-α, we’re using Ubuntu 22.04 Server as the core OS (though we did need to pull in the latest mainline kernel to get WiFi working). We’ve got the same TP-Link UE300 USB-Ethernet adapter to connect to the Flex, and are again using a Samsung FIT – though this time hosting the overlayroot’d OS as well as a volatile partition. As with the α a 2 TB Teamgroup MP33 SSD provides recording storage, though we can use the on-board NVMe slot this time around.
One nice thing is that since the Trigkey is powered by a 12v brick, we’re able to tap 12v from the motherboard and use it to power the Flex. No separate power supply or boost converter required.
On the power consumption front we’re taking a bit of a step backwards. While the EX-α idles at 7.4w, the EX-β consumes 10.5w. And with all tuners engaged and recording (one tuned to our ATSC 3.0 lighthouse and the other three to ATSC 1.0 emissions), the β uses 14.4w compared to the α’s 11.7w.
Streaming one show to a FireTV bumps power consumption by about 0.1w. On the α an additional 0.5w was required. Streaming an ATSC 1.0 show to an iPad bounces power consumption between 14.5 and 23.7w for an average close to 18w. That’s the cost of pure software transcoding MPEG-2 video and AC-3 audio to H.264 video and AAC audio (mostly encoding H.264, as decoding MPEG-2 video and AC-3 audio don’t take a lot of cycles.). Streaming an ATSC 3.0 show to an iPad – something the α can’t do – bounces power consumption between 14.5w and 27w for an average around 22w.
HEVC decoding is particularly taxing and it will be interesting to see how hardware acceleration in the N100 might help. We’ve shied away from this in the past since we’ve found the GPU can crash on malformed bitstreams and bring down the entire system. But that was a few year ago and perhaps the situation has improved, especially with the new Vulkan support in FFmpeg 6.1.
With its ability to stream ATSC 3.0 shows to an iPad, the EX-β is now our primary box. On the whole we’re happy with it though will continue to be on the lookout for a more power-efficient option, particularly at idle power. Regrettably the Pi-5 suffers from the same HEVC decode support (or lack thereof) as the Pi-4, so we’ll either need to port the required patches to the Entangle code base or hope for a more efficient X86 motherboard.