# Problem setting up D-Link DWA-140 wireless usb adapter

## jachcemjest

I have this USB wifi stick, it should be Ralink rt2870 device.

I've build the staging driver (rt2870sta, gentoo-sources-2.6.32-r7), downloaded the firmware from vendor (it is 8192 bytes long rt2870.bin file).

Unfortunately, I don't get the network interface (should be wlan0). I'm using udev-149, baselayout 1.12.13.

Could somebody please point me to what to try?

Here's some additional info:

lsusb:

```

Bus 001 Device 002: ID 07d1:3c0a D-Link System 

Device Descriptor:                             

  bLength                18                    

  bDescriptorType         1                    

  bcdUSB               2.00                    

  bDeviceClass            0 (Defined at Interface level)

  bDeviceSubClass         0                             

  bDeviceProtocol         0                             

  bMaxPacketSize0        64                             

  idVendor           0x07d1 D-Link System               

  idProduct          0x3c0a                             

  bcdDevice            1.01                             

  iManufacturer           1 Ralink                      

  iProduct                2 11n Adapter                 

  iSerial                 3 1.0                         

  bNumConfigurations      1                             

  Configuration Descriptor:                             

    bLength                 9                           

    bDescriptorType         2                           

    wTotalLength           53                           

    bNumInterfaces          1                           

    bConfigurationValue     1                           

    iConfiguration          0                           

    bmAttributes         0x80                           

      (Bus Powered)                                     

    MaxPower              450mA                         

    Interface Descriptor:                               

      bLength                 9                         

      bDescriptorType         4                         

      bInterfaceNumber        0                         

      bAlternateSetting       0                         

      bNumEndpoints           5                         

      bInterfaceClass       255 Vendor Specific Class   

      bInterfaceSubClass    255 Vendor Specific Subclass

      bInterfaceProtocol    255 Vendor Specific Protocol

      iInterface              0                         

      Endpoint Descriptor:                              

        bLength                 7                       

        bDescriptorType         5                       

        bEndpointAddress     0x81  EP 1 IN              

        bmAttributes            2                       

          Transfer Type            Bulk                 

          Synch Type               None                 

          Usage Type               Data                 

        wMaxPacketSize     0x0200  1x 512 bytes         

        bInterval               0                       

      Endpoint Descriptor:                              

        bLength                 7                       

        bDescriptorType         5                       

        bEndpointAddress     0x01  EP 1 OUT             

        bmAttributes            2                       

          Transfer Type            Bulk                 

          Synch Type               None                 

          Usage Type               Data                 

        wMaxPacketSize     0x0200  1x 512 bytes         

        bInterval               0                       

      Endpoint Descriptor:                              

        bLength                 7                       

        bDescriptorType         5                       

        bEndpointAddress     0x02  EP 2 OUT             

        bmAttributes            2                       

          Transfer Type            Bulk                 

          Synch Type               None                 

          Usage Type               Data                 

        wMaxPacketSize     0x0200  1x 512 bytes         

        bInterval               0                       

      Endpoint Descriptor:                              

        bLength                 7                       

        bDescriptorType         5                       

        bEndpointAddress     0x03  EP 3 OUT             

        bmAttributes            2                       

          Transfer Type            Bulk                 

          Synch Type               None                 

          Usage Type               Data                 

        wMaxPacketSize     0x0200  1x 512 bytes         

        bInterval               0                       

      Endpoint Descriptor:                              

        bLength                 7                       

        bDescriptorType         5                       

        bEndpointAddress     0x04  EP 4 OUT             

        bmAttributes            2                       

          Transfer Type            Bulk                 

          Synch Type               None                 

          Usage Type               Data                 

        wMaxPacketSize     0x0200  1x 512 bytes         

        bInterval               0 

```

/var/log/messages:

```

Jul  8 10:30:29 jachcemjest kernel: [    9.372839] rt2870sta: module is from the staging directory, the quality is unknown, you have been warned.

Jul  8 10:30:29 jachcemjest kernel: [    9.377630] rtusb init --->

Jul  8 10:30:29 jachcemjest kernel: [    9.377664] usbcore: registered new interface driver rt2870

Jul  8 10:37:40 jachcemjest kernel: [  448.578953] usb usb1: usb resume

Jul  8 10:37:40 jachcemjest kernel: [  448.578960] ehci_hcd 0000:00:1a.7: resume root hub

Jul  8 10:37:40 jachcemjest kernel: [  448.598011] hub 1-0:1.0: hub_resume

Jul  8 10:37:40 jachcemjest kernel: [  448.598021] ehci_hcd 0000:00:1a.7: GetStatus port 1 status 001803 POWER sig=j CSC CONNECT

Jul  8 10:37:40 jachcemjest kernel: [  448.598027] hub 1-0:1.0: port 1: status 0501 change 0001

Jul  8 10:37:40 jachcemjest kernel: [  448.699030] hub 1-0:1.0: state 7 ports 6 chg 0002 evt 0000

Jul  8 10:37:40 jachcemjest kernel: [  448.699039] hub 1-0:1.0: port 1, status 0501, change 0000, 480 Mb/s

Jul  8 10:37:40 jachcemjest kernel: [  448.750255] ehci_hcd 0000:00:1a.7: port 1 high speed

Jul  8 10:37:40 jachcemjest kernel: [  448.750259] ehci_hcd 0000:00:1a.7: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT

Jul  8 10:37:40 jachcemjest kernel: [  448.801026] usb 1-1: new high speed USB device using ehci_hcd and address 3

Jul  8 10:37:40 jachcemjest kernel: [  448.854263] ehci_hcd 0000:00:1a.7: port 1 high speed

Jul  8 10:37:40 jachcemjest kernel: [  448.854267] ehci_hcd 0000:00:1a.7: GetStatus port 1 status 001005 POWER sig=se0 PE CONNECT

Jul  8 10:37:40 jachcemjest kernel: [  448.926661] usb 1-1: default language 0x0409

Jul  8 10:37:40 jachcemjest kernel: [  448.932406] usb 1-1: udev 3, busnum 1, minor = 2

Jul  8 10:37:40 jachcemjest kernel: [  448.932409] usb 1-1: New USB device found, idVendor=07d1, idProduct=3c0a

Jul  8 10:37:40 jachcemjest kernel: [  448.932413] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3

Jul  8 10:37:40 jachcemjest kernel: [  448.932416] usb 1-1: Product: 11n Adapter

Jul  8 10:37:40 jachcemjest kernel: [  448.932419] usb 1-1: Manufacturer: Ralink

Jul  8 10:37:40 jachcemjest kernel: [  448.932422] usb 1-1: SerialNumber: 1.0

Jul  8 10:37:40 jachcemjest kernel: [  448.932500] usb 1-1: uevent

Jul  8 10:37:40 jachcemjest kernel: [  448.932514] usb 1-1: usb_probe_device

Jul  8 10:37:40 jachcemjest kernel: [  448.932516] usb 1-1: configuration #1 chosen from 1 choice

Jul  8 10:37:40 jachcemjest kernel: [  448.932778] usb 1-1: adding 1-1:1.0 (config #1, interface 0)

Jul  8 10:37:40 jachcemjest kernel: [  448.932792] usb 1-1:1.0: uevent

Jul  8 10:37:40 jachcemjest kernel: [  448.932854] drivers/usb/core/inode.c: creating file '003'

Jul  8 10:37:40 jachcemjest kernel: [  448.933280] usb 1-1: uevent

```

----------

## DONAHUE

run 

```
ifconfig -a
```

 does wlan0 or ra0 appear? I don't remember in which kernel version the staging driver switched from ra0 to wlan0 but think it was 2.6.33.

If "it" does not appear, you have no driver. What does lsmod show? Did you avoid selecting the broken builtin kernel driver?

If "it" appears the interface exists and has a driver. 

```
ifconfig <ra0 or wlan0> up

ifconfig
```

if "it" appears you have a working interface.

If you have emerged wireless-tools and wpa_supplicant you are ready to configure the network connection.

----------

## jachcemjest

ifconfig shows nothing (well, eth0 and lo, but it's not what  want...) - I know how to use ifconfig

You said I should disable builtin driver - I didn't found such thing in 2.6.32-gentoo-r7 (and searching for 'RT2' in .config gives me only staging drivers).

I tried vanilla 2.6.34.1 as well, and the result is the same... 

In lsmod, there's line 'rt2870sta 381280 0'.

Is there any way how to list usb manufacturer and device ids that are registered with the kernel at the moment in my kernel?

I have a suspicion here, because the sources are a little bit messy here...

----------

## DONAHUE

I have a 2870 working on kernel 2.6.34. I did a firmware download. Extracted to /lib/firmware as /lib/firmware/RT2870_Firmware_V22. I have a copy of the license at /usr/portage/licenses/ralink-firmware. I have the sloppy ACCEPT_LICENSE="*" in /etc/make.conf. Researching through this brings faint memory of accepting license becoming a problem with 2.6.34.

```
emerge usbutils lshw

lsusb -vv >> /usbvv

lshw >> lshw
```

will give searchable huge files with probed info

```
lshw -X
```

 for graphical; lshw does show driver as rt2870sta here

----------

