You are not logged in.

#1 2017-09-03 14:04:59

thibthib
Member
Registered: 2017-09-03
Posts: 3

Can't get AWUSO36H Wifi dongle to work

I got an ALFA AWUSO36H usb wifi adapter and I cannot get it working properly. It looks like it keeps connecting and disconnecting from my computer. I tried several things to make it work none seems to have made anything change.
The modules used by this device are :

rtl8187

and

ieee80211

Those drivers seems to be already installed on my computer.
I also got those by the vendor but when trying to build them I got the following errors (not sure if this is relevant):

$ make
make[1]: Entering directory '/usr/lib/modules/4.12.8-2-ARCH/build'
  CC [M]  /home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.o
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c:149:22: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘rtl8187_usb_probe’
 static int __devinit rtl8187_usb_probe(struct usb_interface *intf,
                      ^~~~~~~~~~~~~~~~~
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c:151:23: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘rtl8187_usb_disconnect’
 static void __devexit rtl8187_usb_disconnect(struct usb_interface *intf);
                       ^~~~~~~~~~~~~~~~~~~~~~
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c:164:12: error: ‘rtl8187_usb_probe’ undeclared here (not in a function); did you mean ‘rtl8187_usb_driver’?
  .probe  = rtl8187_usb_probe,
            ^~~~~~~~~~~~~~~~~
            rtl8187_usb_driver
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c:165:16: error: ‘rtl8187_usb_disconnect’ undeclared here (not in a function); did you mean ‘rtl8187_usb_probe’?
  .disconnect = rtl8187_usb_disconnect,
                ^~~~~~~~~~~~~~~~~~~~~~
                rtl8187_usb_probe
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c: In function ‘rtl8180_proc_module_init’:
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c:423:15: error: implicit declaration of function ‘create_proc_entry’; did you mean ‘remove_proc_entry’? [-Werror=implicit-function-declaration]
  rtl8180_proc=create_proc_entry(RTL8187_MODULE_NAME, S_IFDIR, init_net.proc_net);
               ^~~~~~~~~~~~~~~~~
               remove_proc_entry
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c:423:14: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
  rtl8180_proc=create_proc_entry(RTL8187_MODULE_NAME, S_IFDIR, init_net.proc_net);
              ^
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c: In function ‘rtl8180_proc_init_one’:
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c:457:16: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
  priv->dir_dev = create_proc_entry(dev->name, 
                ^
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c:475:6: error: implicit declaration of function ‘create_proc_read_entry’; did you mean ‘remove_proc_entry’? [-Werror=implicit-function-declaration]
  e = create_proc_read_entry("stats-rx", S_IFREG | S_IRUGO,
      ^~~~~~~~~~~~~~~~~~~~~~
      remove_proc_entry
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c:475:4: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
  e = create_proc_read_entry("stats-rx", S_IFREG | S_IRUGO,
    ^
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c:485:4: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
  e = create_proc_read_entry("stats-tx", S_IFREG | S_IRUGO,
    ^
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c:514:4: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
  e = create_proc_read_entry("registers", S_IFREG | S_IRUGO,
    ^
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c: In function ‘rtl8180_tx’:
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c:1378:12: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
  u8 seg = ((u32)txbuf % 4);
            ^
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c: In function ‘rtl8187_usb_initendpoints’:
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c:1584:14: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
   seg_size = (u32)ptrcontext->transfer_buffer % 4;
              ^
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c: At top level:
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c:3755:22: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘rtl8187_usb_probe’
 static int __devinit rtl8187_usb_probe(struct usb_interface *intf,
                      ^~~~~~~~~~~~~~~~~
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c:3855:23: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘rtl8187_usb_disconnect’
 static void __devexit rtl8187_usb_disconnect(struct usb_interface *intf)
                       ^~~~~~~~~~~~~~~~~~~~~~
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c:3357:13: warning: ‘r8180_set_multicast’ defined but not used [-Wunused-function]
 static void r8180_set_multicast(struct net_device *dev)
             ^~~~~~~~~~~~~~~~~~~
/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.c:3151:33: warning: ‘rtl8180_stats’ defined but not used [-Wunused-function]
 static struct net_device_stats *rtl8180_stats(struct net_device *dev)
                                 ^~~~~~~~~~~~~
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:303: /home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187/r8187_core.o] Error 1
make[1]: *** [Makefile:1515: _module_/home/thib/Documents/alpha_network_driver/Linux_driver/AWUS036H/rtl8187] Error 2
make[1]: Leaving directory '/usr/lib/modules/4.12.8-2-ARCH/build'
make: *** [Makefile:15: all] Error 2 

I also tried to download the drivers from somewhere else and build them as well but I just got a different error when building.

So here is the output of my dmesg, it keep to repeat the same error over and over again :

$ dmesg
[ 3448.557744] rtl8187 3-1:1.0 wlp0s20u1: renamed from wlan0
[ 3448.593367] IPv6: ADDRCONF(NETDEV_UP): wlp0s20u1: link is not ready
[ 3450.477693] IPv6: ADDRCONF(NETDEV_UP): wlp0s20u1: link is not ready
[ 3452.378319] IPv6: ADDRCONF(NETDEV_UP): wlp0s20u1: link is not ready
[ 3452.431020] IPv6: ADDRCONF(NETDEV_UP): wlp0s20u1: link is not ready
[ 3452.831655] usb 3-1: USB disconnect, device number 122
[ 3453.291078] usb 3-1: new high-speed USB device number 123 using xhci_hcd
[ 3453.554134] ieee80211 phy620: Selected rate control algorithm 'minstrel_ht'
[ 3453.554357] ieee80211 phy620: hwaddr 00:c0:ca:84:f2:fb, RTL8187vB (default) V1 + rtl8225z2, rfkill mask 2
[ 3453.564732] rtl8187: Customer ID is 0xFF
[ 3453.565151] rtl8187: wireless switch is on
[ 3453.576963] rtl8187 3-1:1.0 wlp0s20u1: renamed from wlan0
[ 3453.621535] IPv6: ADDRCONF(NETDEV_UP): wlp0s20u1: link is not ready
[ 3455.518650] IPv6: ADDRCONF(NETDEV_UP): wlp0s20u1: link is not ready
[ 3457.432855] IPv6: ADDRCONF(NETDEV_UP): wlp0s20u1: link is not ready
[ 3457.486504] IPv6: ADDRCONF(NETDEV_UP): wlp0s20u1: link is not ready
[ 3457.886157] usb 3-1: USB disconnect, device number 123
[ 3458.387244] usb 3-1: new high-speed USB device number 124 using xhci_hcd
[ 3458.713523] ieee80211 phy621: Selected rate control algorithm 'minstrel_ht'
[ 3458.714336] ieee80211 phy621: hwaddr 00:c0:ca:84:f2:fb, RTL8187vB (default) V1 + rtl8225z2, rfkill mask 2
[ 3458.735023] rtl8187: Customer ID is 0xFF
[ 3458.735429] rtl8187: wireless switch is on
[ 3458.750247] rtl8187 3-1:1.0 wlp0s20u1: renamed from wlan0
[ 3458.778934] IPv6: ADDRCONF(NETDEV_UP): wlp0s20u1: link is not ready

For info:

$ uname -srv
Linux 4.12.8-2-ARCH #1 SMP PREEMPT Fri Aug 18 14:08:02 UTC 201

I also tried on Kali Linux to see if I could get it working but it was the exact same.
Except googling more about this in hope to find something, I feel pretty much out of ideas for this one.
Any idea how it might fix this?
Thanks a lot


Edit :
Found here that the rtl818x drivers are "Ad-Hoc since Linux 3.4" ... Does that mean that I need to use a different driver, or that I can't get the rtl8187 to work without having a prior to 3.4 kernel?

Last edited by thibthib (2017-09-03 14:23:08)

Offline

#2 2017-09-04 12:22:36

jeremy31
Member
Registered: 2015-11-01
Posts: 149

Re: Can't get AWUSO36H Wifi dongle to work

The device is supported by the kernel so you don't need to compile drivers.  Do you have a lot of devices connected with USB?

Ad-Hoc since Linux 3.4 means that the kernel module has supported computer to computer wireless connections since the 3.4 kernel

Offline

#3 2017-09-04 12:37:58

thibthib
Member
Registered: 2017-09-03
Posts: 3

Re: Can't get AWUSO36H Wifi dongle to work

jeremy31 wrote:

The device is supported by the kernel so you don't need to compile drivers.  Do you have a lot of devices connected with USB?

No I tried with no other devices connected and also on different ports with same result.

Since yesterday I also tried it on win10 with no other results than the device continously connecting and disconnecting. So it's probably not at all a software issue.
I'm starting to think that the wifi adapter is somehow broken as many people on forums said that it's just plug n play..
I'll try with another usb cable tomorrow but I highly doubt that will change anything. If that doesn't work I guess I'll be good for buying another wifi adapter.

Offline

Board footer

Powered by FluxBB