Linux DVB-T on an ASUS M50Vn Laptop

I just bought an Asus M50Vn laptop. I was drawn to the Shiny! appearance, and it seemed to have reasonable specs for something just a shade under $2000. Since Asus make the EeePC netbook computers that started the whole netbook craze, I figured it would have reasonable driver support under linux. It also has an inbuilt TV tuner.

I installed Ubuntu 8.10 (Intrepid Ibex) Desktop. Pretty much everything Just Works out of the box. The 2 things that didn’t were: sound, and the TV tuner.

Getting Sound Working

The problem with the sound is something to do with the ALSA driver, so you need to add some custom commands to the /etc/modprobe.d/alsa-base file, like this:

# This setting gets ALSA to detect the right card
options snd-hda-intel model=3stack-dig position_fix=0
# Workarounds for some bugs in libasound2 1.0.17
alias snd-card-0 snd-hda-intel
alias sound-slot-0 snd-hda-intel
alias sound-slot-0 snd-card-0
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss

To reload the sound driver, you’ll need to unload it first, like this:

rmmod snd_hda_intel

but it’s likely to be in use by some sound applications. You can either find these applications (such as pulse audio) and shut them down, or just reboot. It’s up to you.

If you do unload it, load it again (this time it’ll use the new settings you put in the file above) like this:

modprobe snd_hda_intel

Update: Upgrading to ALSA v1.0.19 fixes this problem completely, with an added bonus: the headphones now work properly. Previously, they worked, but the laptop speakers wouldn’t automatically mute when you plugging in the headphones. With ALSA v1.0.19, they do.

You can remove all the custom settings above, too. ALSA will now pick all the correct settings up automatically. Yay!

Getting the TV Tuner to Work

At time of writing, the appropriate driver for the card in the laptop isn’t part of the linux kernel bundled with Intrepid: 2.6.27-9. However, it is in the latest Video4Linux code.

The card in my laptop identifies itself as a YUAN High-Tech Development Co. device, with ID 1164:1f08. It’s a USB device, not a PCI device, so don’t go looking for it with lspci. Use lsusb -v instead.

This card uses the dvb_usb_dib0700 driver, but you’ll need a more recent version of it. Follow the instructions here to grab the code for v4l-dvb, compile and install it.

You will also need some additional firmware: the xc3028-v27.fw. See this thread on Ubuntu forums for the file. You’ll need to register with Ubuntu forums before it will let you download the file. Install it into /lib/firmware.

Now follow the v4l-dvb instructions to reload the video module, and it should pick up both sets of firmware.

You should now be able to check out digital video from your laptop under linux. w00t!

Let me know in the comments how this works out for you.

Bookmark the permalink.

Comments are closed.