Guillermo Esteves

How to get a D-Link DWL-G650+ Wi-Fi adapter to work in Ubuntu Linux 6.06

A few days ago I installed the latest version of Ubuntu Linux (version 6.06, Dapper Drake) on my old Compaq Presario 1200 laptop. The installation went smoothly, and Ubuntu runs beautifully, considering it’s an old 800MHz Celeron. Except for one small issue: My D-Link DWL-G650+ 802.11g cardbus adapter wouldn’t work. The status LEDs would come on, and the adapter was properly detected by the OS, but I couldn’t manage to get an IP from the router. After looking around in Google for a few minutes, I found this website, which explained that:

As in the summary, acx111-based d-link dwl-g650+ does not work with the default firmware. It works with 1.2.1.34 (tiacx111c16) - this is the firmware recommended (as the better of the only two working) on acx100 development website - see http://acx100.sourceforge.net/wiki/Firmware

According to the comments section in that page, there are a few ways to fix this, and I’m going to describe two of them. I’m writing this mostly as a reminder for myself since I’ll probably have to do it again next week after I replace the 10GB hard drive in the Compaq with a new 60GB one, but I thought this might be useful to somebody else.

Solution 1

This first solution involves deleting tiacx111c16 from /lib/firmware/[kernel version]/acx/default, which links to /lib/firmware/[kernel version]/acx/2.3.1.31/tiacx111c16 (the broken firmware), and replace it with a link to /lib/firmware/[kernel version]/acx/1.2.1.34/tiacx111c16 (the working one). To do this open a terminal window and type:

sudo rm /lib/firmware/[kernel version]/acx/default/tiacx111c16

Replace [kernel version] with your kernel version, obviously. The system will ask you for your password. Enter it. Now type:

sudo ln -s /lib/firmware/[kernel version]/acx/1.2.1.34/tiacx111c16 /lib/firmware/[kernel version]/acx/default/tiacx111c16

Eject the card, reinsert it, and that’s it. It should be working properly now.

Note: To find out your kernel version, type echo uname -r`` at the terminal.

Solution 2

I think this solution is easier, but you’ll have to reboot your PC. Again, open a terminal, and type:

sudo pico /etc/modprobe.d/options

Your system will ask your password; provide it. Now add the following line to the file you’re editing:

options acx firmware_ver=1.2.1.34

Press Control+x to exit, and press Y to save the changes. Reboot the computer, and you’re done.

I think that’s it. Feel free to comment if you have any observations or corrections to make.


About Guillermo Esteves

Hello, there. I’m a Venezuelan-American web developer based in Jackson Hole, Wyoming, right in the heart of Grand Teton National Park. I’ve been building websites for over 20 years, and I’m currently a Senior Engineering Manager at Vox Media, where I lead a team charged with building first-class editorial tools for journalists across the world. Previously at Vox, I’ve led multiple teams as engineering manager & lead engineer, including the Services team, bringing Chorus to newspapers such as the Chicago Sun-Times, Deseret News, and the Minneapolis Star Tribune; the Revenue Platforms team, helping build better advertising tools & products for our networks; and the Performance team, helping make our sites as fast as possible. I was also a Senior Front-End Engineer at The Verge, helping build a sweet, responsive, better performing site, as well as cool editorial features like Fanboys and The Verge 50.

In my free time, I’m also a wildlife & landscape photographer, and you can see some of my work on my website, All-Encompassing Trip. This year one of my photographs, Close Encounter at Antelope Flats, was chosen as one of the four highly commended photos in London’s Natural History Museum’s Wildlife Photographer of the Year, People’s Choice Awards.

Elsewhere on the web

View my photography at All-Encompassing Trip, view it again (but smaller) on Instagram, check out my repos on Github, add me to your professional network (ugh) on LinkedIn, or email me at contact@gesteves.com.