Mythbuntu CableCARD Support

Disclaimer - This was as april fools joke played on April 1, 2009

Background

Today marks a historic day in Mythbuntu development. Over the last year we have been having discussions with several major cable companies in the United States regarding enabling CableCARD support for all Mythbuntu users. Late last year we reached an agreement with two of those major companies, Time Warner & Comcast. As excited as we were about this agreement, we unfortunately had to remain silent because of an NDA regarding the implementation. In our contract we agreed to develop a technical preview version of the CableCARD support to be released shortly before Mythbuntu 9.04 was to cut the gold media. This would allow users to test the implementation and report bugs while leaving approximately one month for engineers to resolve those reported issues.

Implementation Summary

Due to the difficulties in defining how CableCARD support will work on Mythbuntu, it is only launching with the ATI TV Wonder Digital Cable tuner [1]. These are the first products that are being certified for CableCARD support on Mythbuntu, but expect others to follow.

As you may know, the ATI TV Wonder Digital Cable tuner is a USB device. The Cable Engineers have developed an open source kernel module that will get loaded when the device is plugged in. They've also included both production and debug firmware files. Which mode the technician sets the device to operate in will control the firmware file selection.

When the production firmware is loaded, the device enters DVB emulation mode. In DVB emulation mode, the device reports signal strength and can change channels just like other DVB devices. Unfortunately, EIT support does not properly translate over in this emulation mode, so you will have to rely on Schedules Direct for guide data. During the provisioning process, the cable technician will be manually encoding the channel call signs into the device. This will likely change in a future release.

When the debug firmware is loaded, the device will enter Network emulation mode. In Network emulation mode, it will be exposed to the system as a virtual network interface. This virtual network interface will receive an address via DHCP from the ATI TV wonder Digital Cable tuner and set up the routing table to contact the device's internal administration site. Unfortunately, this will only be accessible by the on-site technicians. If you have problems later, you won't be able to go through phone support and view this administration panel.

The kernel module source is available in the deb as it needs to be recompiled every time there is an ABI bump in the kernel. The Cable Engineers have used DKMS to ensure that they are automatically recompiled. This is the same technology used for recompiling AMD and NVIDIA graphics drivers on kernel ABI bumps. They specifically requested not to merge this directly into the kernel yet until they have stabilized the code. They are happy to take upon the responsibility of submitting it upstream to the Linux Kernel Mailing List so that we can pull it in for the next kernel release in Mythbuntu 9.10.

Installation

Please keep in mind that this is a technical preview. There will be bugs.
Comcast & Time Warner engineers are eagerly looking forward to helping to stabilize the product.

To start off, you will have to pick up an ATI TV Wonder Digital Cable tuner. We are in discussions with several distributors to offer special pricing for Mythbuntu users, but for this technical preview you will have to pay full price.

Next, contact your cable support specialist to schedule a time for a technician to come and drop off a CableCARD in your home. For your convenience, Time Warner and Comcast have allocated specialists specifically for the expected call load. Please use these numbers when contacting them:

Comcast: 800-729-6645
Time Warner: 888-739-9298

You may have heard of problems with technicians refusing to install CableCARDs in anything that was not a television set in the past. Per the terms of this agreement, all contracted technicians have specific instructions to assist with installation on Mythbuntu regardless of circumstances. If your technician gives you a hard time, refer him to this URL.

When the technician arrives on site you should have your computer pre-installed with Mythbuntu 9.04 beta 64-bit. You can get a copy of the beta from one of the mirrors on our website [2]. For the technical preview, the cable engineers have only been able to prepare a 64 bit implementation. From what we have been told, porting the firmware loading portion is very difficult, it's not just a matter of "just recompiling" it for 32 bit. This is nothing new, Adobe has preached similar problems in the past.

The technician will also require you to have a copy of the installation deb saved into /var/lib/mythtv. The deb must be owned by mythtv:gdm with mode 400. It's important that you store the installation deb here with these permissions as the cable technicians have very specific instructions to follow regarding installation.

The cable technician will hook up your ATI TV Wonder Digital Cable tuner and install the deb for you. After completing, he will place the device into debug mode.

You are welcome to watch over the technician during this process. He will be individually evaluating the signal strength of each channel, and walking through the provisioning process manually. For the first pass technical draft, this process wasn't able to be automated. Expect to see the technician laboring away with a scientific calculator while this is completed. The entire process should take approximately 4.2 hours.

After the technician has completed the provisioning procedure, he will reset the device to standard operating mode. Once it's finished starting back up, he will open up mythtv-setup. You'll likely have to provide him your user password during this step to stop mythtv-backend. Make sure that he doesn't launch mythtv-setup as root, as Mythbuntu should have all of the appropriate access rights for each user in the mythtv group.

The device now shows up as a standard DVB 3.x device, and he will configure it just as you would configure an HD5000 or Air2PC.

Here's a few screenshots of the CableCARD support in action:

In the download section below is the installation deb that the technician will require you to download before arriving. Again, it's very important to make sure that you save it in /var/lib/mythtv owned by mythtv:gdm, mode 400.

[1] http://ati.amd.com/products/tvwonderdigital/index.html
[2] http://mythbuntu.org/downloads


Downloads:

mythbuntu-cablecard-tech-preview-1.0.deb