State of WinTV-Aero-m & ATSC-MH support in Linux

As of the release of Linux Kernel 3.1, Hauppauge’s WinTV-Aero-m is fully supported for use with both ATSC and DVB-T, using the new MFE framework within dvb-usb to represent two frontends on a single DVB adapter. This makes the Aero-m the first semi-worldwide terrestrial digital television broadcast receiver to be supported under Linux.

The device is built of two LG broadcast demodulators and a MaxLinear SoC. The first LG demodulator, LG DT3305, has been well supported in Linux for ATSC ever since I released it a few years ago. I’ve written a new driver to support the other LG demodulator, LG2161, for ATSC-MH, but it hasn’t yet been merged upstream.

Since ATSC-MH is a relatively new delivery system, some API changes will need to get cleaned up and merged before support for the LG2161 can be added to the kernel. Additionally, since the payload format is different from standard transport streams, some changes will have to be made to the kernel demux and / or some userspace libraries in order to make ATSC-MH work with userspace applications.

What is ATSC-MH? In summary, it is a way to broadcast digital television to devices in motion, similar to (but not the same as) DVB-H. The content co-exists with ATSC, and is usually standard definition or lower resolutions, meant to be viewed on handheld / mobile devices.

As of today, there is open source driver support for ATSC-MH and the LG2161 in my own development repositories, but there is no open source userspace applications to support this as of yet. (There are, however, closed-source solutions available. Contact me privately for more info) I have plans to eventually get all of this done for the general public, but I am also working on various other kernel & userspace projects as well, most of which are much more exciting to me right now. I’d like to get these API changes done for ATSC-MH, so that I can close the book on this project, but I haven’t seen much interest for it in the community. Are there people out there that want ATSC-MH to work in Linux?

Basically, I want to know if anybody cares about ATSC-MH. Do you want to be able to watch TV on your linux-based laptop / mobile device while commuting to work on the train? Do you want to display video advertisements and other content on the sides of city buses? Do you want to be able to enjoy your favorite television show *while* crossing the street? 😉 Please let me know. I want to know if it’s worth it to move forward with this. Are there any users or companies that want or need to use ATSC-MH in Linux, or should I just wait until I have nothing better to do? I *will* get this completed eventually, I’m just trying to understand how much it will benefit the community. If nobody cares, then I’ll surely get this all done within the year (or so) … but if people really are interested, I can have it ready by next weekend. You tell me.

In the meanwhile, please enjoy this semi-worldwide tuner using Linux 3.1 or later. I haven’t heard *any* bug reports yet. That means either my driver is awesome, or nobody is using it. Give me some feedback.

EDIT: (2012-03-19) Thanks to everybody who sent email talking about their experiences with the Aero-M under Linux 3.2 – It’s great to get emails like this, although I was kinda hoping to get some people commenting here on this blog post. Either way, I have to announce that I’ve tested the driver in the newly released Linux Kernel 3.3 and there is a small bug that breaks streaming. The fix was released in Linux 3.3.1 For those that want to use Linux 3.3, please use stable 3.3.y kernel series or apply the patch located here: mxl111sf: fix error on stream stop in mxl111sf_ep6_streaming_ctrl()

5 thoughts on “State of WinTV-Aero-m & ATSC-MH support in Linux

  1. Hi Michael and thanks for all your work on this! With ATSC-MH stations starting to come up in Canada there has been discussion in the Digital Home OTA Forum about whether it will be possible to dump ATSC-MH stream and data info in Linux in a similar fashion to what tsreader does in Windows. Many of us run MythTV boxes and would highly appreciate your work towards full support of the ATSC-MH standard. Here’s a link to the latest discussions on the topic:

    Also, have you had any contact with the MythTV folks regarding ATSC-MH support at the application level?


    • Thanks for your comment, Jon. It will be possible to dump ATSC-MH stream contents in Linux, although I can’t promise as pretty an interface as TSReader from the get-go, but time will tell. As is right now, the kernel driver has been merged and will be shipped with Linux 3.5. Raw data is sent out via the DVR device, there just aren’t any open source userspace utilities available yet to decode that data. I am working on some libraries in my spare time, but my paying projects are obviously catching a higher priority level of my attention 😉

      I speak to the MythTV folks from time to time, but ATSC-MH has not come up in any discussion as of yet. I am under the impression that the general public isn’t as excited about ATSC-MH as you are :-/ Regardless, I hope to have a suite of userspace utilities available for supporting ATSC-MH not too long after kernel 3.5 is released. I’ll raise the priority on that if I can see that more people are interested in it…

Leave a Reply