Installing DWA160 wireless adapter

I’ve read the sticky post about getting my wireless to work. Here’s what I know:

Wireless LAN doesn’t show up in my hardware list. But the wireless usb adapter I have (D-Link DWA-160) does show up under USB devices, with the following UDI info:

UDI:/org/freedesktop/Hal/devices/usb_devices_7d1_3a09_12345_if0

When I look at the boot.msg log I see nothing about a firmware failing to load. Does that mean I already have it?

When I try the /usr/sbin/iwconfig command I get:
lo no wireless extensions
eth0 no wireless extensions

When I try the /usr/sbin/iwlist scan command I get:
lo Interface doesn’t support scanning.
eth0 Interface doesn’t support scanning.

There’s a page (ar9170 - Linux Wireless) where I can supposedly download the ar9170.fw firmware that supports this device. But when I try to download it it doesn’t show up in the /lib/firmware directory and I don’t know why.

I’m stumped. The system sees the USB adapter, but it doesn’t appear to be working. Do I need the firmware? And if so, how do I download it–what am I doing wrong?

On 12/17/2010 11:06 PM, Roy Preston wrote:
>
> I’ve read the sticky post about getting my wireless to work. Here’s what
> I know:
>
> Wireless LAN doesn’t show up in my hardware list. But the wireless usb
> adapter I have (D-Link DWA-160) does show up under USB devices, with the
> following UDI info:
>
> UDI:/org/freedesktop/Hal/devices/usb_devices_7d1_3a09_12345_if0
>
> When I look at the boot.msg log I see nothing about a firmware failing
> to load. Does that mean I already have it?
>
> When I try the /usr/sbin/iwconfig command I get:
> lo no wireless extensions
> eth0 no wireless extensions
>
> When I try the /usr/sbin/iwlist scan command I get:
> lo Interface doesn’t support scanning.
> eth0 Interface doesn’t support scanning.
>
> There’s a page (‘ar9170 - Linux Wireless’
> (http://linuxwireless.org/en/users/Drivers/ar9170#firmware)) where I can
> supposedly download the ar9170.fw firmware that supports this device.
> But when I try to download it it doesn’t show up in the /lib/firmware
> directory and I don’t know why.

You need to take the downloaded file and copy it to /lib/firmware. You will need
root privilege to do that.

> I’m stumped. The system sees the USB adapter, but it doesn’t appear to
> be working. Do I need the firmware? And if so, how do I download
> it–what am I doing wrong?

Yes, you need the firmware.

Okay, I logged in as root and downloaded ar9170.fw to the /lib/firmware directory. What should I try next? When I tried “sudo /usr/sbin/iwlist scan” I still get the “Interface doesn’t support scanning” message. If I understand the original post, adding the firmware should do the trick.

Firmware files get loaded on loading the module, so reloading the module is mandatory if you don’t want to reboot.

If you don’t know how to do that, just use the “dumb Windows way” of rebooting.

BTW:

That’s why the Firmware-RPMs in driver:wireles always contain a little postinstall-scriptlet to do this reloading of the respective kernel module(s) automatically.

I did it the dumb Windows way (rebooting, and again today when I started my computer). “sudo /usr/sbin/iwlist scan” still gets the “interface does not support scanning” response. The adapter doesn’t show up in Yast–>Network–>Network Services either, or as WLAN in the hardware listing file, only under the USB devices listing.

On 12/18/2010 05:06 PM, Roy Preston wrote:
>
> I did it the dumb Windows way (rebooting, and again today when I
> started my computer). “sudo /usr/sbin/iwlist scan” still gets the
> “interface does not support scanning” response. The adapter doesn’t show
> up in Yast–>Network–>Network Services either, or as WLAN in the
> hardware listing file, only under the USB devices listing.

Post your entire dmesg output at http://opensuse.pastebin.com/, and post the
link here.

Pastebin link: [klogd 1.4.1, log source = ksyslog started. <6> - Installing DWA-160 wireless router

On 12/18/2010 06:36 PM, Roy Preston wrote:
>
> Pastebin link: ‘klogd 1.4.1, log source = ksyslog started. <6> -
> Installing DWA-160 wireless router’
> (http://opensuse.pastebin.com/dkYEq6Yg)

I’m not sure you let the system run long enough - 13 seconds is pretty quick to
shut down.

In any case, I did not see any indication that the driver ever loaded. The only
mention of it was during the USB scan.

The driver for that device is “ar9170usb”. You can test if it is loaded by using
the command ‘lsmod | grep 9170’. If that produces no output, then the driver is
not loaded. It may be blacklisted. To test that, use the command
‘cat /etc/modprobe.d/50-blacklist.conf | grep 9170’.

You should also add the repository at
http://download.opensuse.org/repositories/driver:/wireless/openSUSE_11.3/ to
your list of Configured Software Repositories. That way you can download the
firmware. There are two files needed with this driver, and you may not have
gotten both.

After all of the above, force the driver to load with the command ‘sudo
/sbin/modprobe -v ar9170usb’. Report the output from this command as well.

Finally, repost the output of dmesg at this point to pastebin. The driver will
now be loaded.

When I type ‘dmesg | grep firmware’ into the terminal, I get no reply. What I posted was what I got when I used the Yast==>Miscellaneous==>System Logs approach and changed /var/log/messages to /var/log/boot.msg.

In any case, I did not see any indication that the driver ever loaded. The only
mention of it was during the USB scan.

The driver for that device is “ar9170usb”. You can test if it is loaded by using
the command ‘lsmod | grep 9170’. If that produces no output, then the driver is
not loaded. It may be blacklisted. To test that, use the command
‘cat /etc/modprobe.d/50-blacklist.conf | grep 9170’.

‘lsmod | grep 9170’ produced no output.
‘cat /etc/modprobe.d/50-blacklist.conf | grep 9170’ also produced no output.

You should also add the repository at
Index of /repositories/driver:/wireless/openSUSE_11.3 to
your list of Configured Software Repositories. That way you can download the
firmware. There are two files needed with this driver, and you may not have
gotten both.

Done.

After all of the above, force the driver to load with the command ‘sudo
/sbin/modprobe -v ar9170usb’. Report the output from this command as well.

insmod / lib/modules/2.6.31.14-0.4-default/kernel/net/rfkill/rfkill.ko
insmod / lib/modules/2.6.31.14-0.4-default/kernel/wireless/cfg80211.ko
insmod / lib/modules/2.6.31.14-0.4-default/kernel/drivers/net/wireless/ath/ath.ko
insmod / lib/modules/2.6.31.14-0.4-default/kernel/drivers/leds/ led-class.ko
insmod / lib/modules/2.6.31.14-0.4-default/kernel/net/mac80211/mac80211.ko
insmod / lib/modules/2.6.31.14-0.4-default/kernel/drivers/net/wireless/ath/ar9170/ar9170usb.ko

Finally, repost the output of dmesg at this point to pastebin. The driver will
now be loaded.

I’ve posted the (truncated) result of var/log/messages (the whole file was too long, so I deleted everything dated 17 Dec 2010 and earlier) on pastebin: Results of /var/log/messages (lines dated 17 Dec 2 - Installing DWA-160 wireless router

I do not want anything from /var/messages. I want the output of dmesg. It starts
a long time before the system logger starts running and has the critical stuff.
It is not ‘dmesg | grep <something>’, but ‘dmesg’. To help posting the stuff,
use ‘dmesg > dmesg.out’ and post the contents of dmesg.out. You do not need to
run any of the other commands other than the modprobe one. You don’t need to
post that output again. The module can be force loaded.

The part of /var/log/messages that you posted shows:

Dec 18 00:22:07 linux-0hdv kernel: [36833.760087] hub 1-0:1.0: Cannot enable
port 3. Maybe the USB cable is bad?

Dec 18 00:22:07 linux-0hdv kernel: [36833.760137] hub 1-0:1.0: unable to
enumerate USB device on port 3

Those may be serious. Can you plug the wireless device into a different port?
Also post the output of ‘lsusb’.

The output of dmesg is here: 0.000000] Initializing cgroup subsys cpuset - Installing DWA-160–dmesg output](http://opensuse.pastebin.com/Xh5gj51r)

The part of /var/log/messages that you posted shows:

Dec 18 00:22:07 linux-0hdv kernel: [36833.760087] hub 1-0:1.0: Cannot enable
port 3. Maybe the USB cable is bad?

Dec 18 00:22:07 linux-0hdv kernel: [36833.760137] hub 1-0:1.0: unable to
enumerate USB device on port 3

Those may be serious. Can you plug the wireless device into a different port?

I can. It was connected by a USB cord that came with the adapter. I’ve plugged the adapter directly into a (different) USB port on my computer.

Also post the output of ‘lsusb’.

This is what I got:

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 006: ID 07d1:3a09 D-Link System
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

I appreciate your help–and your patience.

On 12/19/2010 12:36 AM, Roy Preston wrote:
>
> This is what I got:
>
> Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
> Bus 001 Device 006: ID 07d1:3a09 D-Link System
> Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
> Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
> Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
> Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
>
>
> I appreciate your help–and your patience.

Other than the above USB IDs from the lsusb command and some material in the
dmesg output, there is no indication that your device is being seen. Certainly,
the driver is not being loaded. Do you have any other USB devices such as a
thumb drive? Do they work in that port?

In case there is a bug in the 11.3 kernel, there are two options. The first
would be to try compat-wireless. You will need to enable the repository at
http://download.opensuse.org/repositories/driver:/wireless/openSUSE_11.3/.

Another option that is more work would be to download, burn and boot a Live CD
for 11.4 M5. The dmesg output from that run might be helpful.

Ahem. Now that I’m recovering from my Christmas cold (not what I wanted from Santa)…

Yes, I have a Nook ereader which connects via USB cable to my computer. When I plug it into any of the USB ports, it connects without a problem.

In case there is a bug in the 11.3 kernel, there are two options. The first
would be to try compat-wireless. You will need to enable the repository at
Index of /repositories/driver:/wireless/openSUSE_11.3.

I’m running 11.2. Is that what you meant? Someone on the Portland Linux Users Group mailing list suggested trying compat-wireless. I installed the 11.2 version, but it didn’t change anything. I still get the same responses to lsusb and iwconfig.

Another option that is more work would be to download, burn and boot a Live CD
for 11.4 M5. The dmesg output from that run might be helpful.

I can try that, if you think it would be helpful. At this point, I’m feeling kind of defeated. What seemed like it shouldn’t be such a chore is turning into a real wrestling match with the OS.

On 12/28/2010 05:36 AM, Roy Preston wrote:
>
> I can try that, if you think it would be helpful. At this point, I’m
> feeling kind of defeated. What seemed like it shouldn’t be such a chore
> is turning into a real wrestling match with the OS.

Your main problem is that you want to drive a very new device with an old
kernel. The driver for the DWA160 likely uses a lot of features added in recent
months and are not in the 2.6.31 kernel from openSUSE 11.2. A run with the 11.4
Live CD would definitely be helpful. The kernel there will be 2.6.37.

This type of retrofit is not easy. You would have the same kind of problem if
you had Windows XP, and the only driver was for Windows 7. At least, Linux does
a better job of handling legacy devices. Try running with 7 if only an XP driver
is available.

Huh. I was under the impression that the DWA 160 wasn’t a particularly new device. Ah well, live and learn. I’ll try to get my hands on the 11.4 Live CD and see what result that produces.