Difference between revisions of "Rtl8187 wireless"

From ArchWiki
Jump to: navigation, search
(What to do if your connection always times out?)
(contained only general information, the driver itself "should just work" or the general informations are enough)
(19 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{i18n|Rtl8187 wireless}}
+
#REDIRECT [[Wireless Setup]]
[[Category:Wireless Networking (English)]]
 
 
 
This page describes how to get the '''rtl8187''' wifi-driver working
 
 
 
Note: The rtl8187 driver is in the kernel (thus the driver comes with the kernel26 package)
 
 
 
 
 
The rtl8187 chip is made for usb-cards/dongles
 
 
 
It supports 802.11(a)/b/g and the following encryptions:  WEP, WPA and WPA2
 
 
 
The driver's source is released under the GPL
 
 
 
=Using and testing the driver/Troubleshooting=
 
 
 
Make sure that you have loaded the rtl8187 module with
 
modprobe rtl8187
 
Then run
 
dmesg | grep rtl8187
 
You should see some output like this <pre> usbcore: registered new interface driver rtl8187 </pre>
 
If you see that line everything should be OK
 
 
 
== Using the driver ==
 
 
 
If everything is right, you should have two new interfaces: wlan0 and wmaster0
 
If you do not see wlan0 just run
 
ifconfig wlan0 up
 
 
 
To list all available wifi-networks just run
 
iwlist wlan0 scan
 
 
 
For more information about configuring your wifi-network see here: [http://wiki.archlinux.org/index.php/Wireless_Setup#Setup_and_Boot http://wiki.archlinux.org/index.php/Wireless_Setup#Setup_and_Boot]
 
 
 
== What to do if your connection always times out? ==
 
 
 
The open source driver suffers from a lot of tx excessive retries and invalid misc errors for some unknown reason, resulting in a lot of packet loss and it keeps disconnecting, some times instantly.
 
 
 
=== Method 1: Lowering the transfer rate manually ===
 
 
 
The solution can be found in this thread: http://bbs.archlinux.org/viewtopic.php?pid=299642
 
 
 
Just set the rate to 5.5
 
iwconfig wlan0 rate 5.5M auto
 
 
 
Fixed option should ensure, however, it doesn't change the rate on its own making the connection a bit more stable:
 
 
 
iwconfig wlan0 rate 5.5M fixed
 
 
 
I have also tried setting this in the IWOPTS, but it does not seem to be taking, so now what I do until I get this sorted out is:
 
  netcfg2 -c <your wireless profile>
 
  iwconfig wlan0 rate 5.5M fixed
 
 
 
Alternativelly find the $POST_UP option and append the above options to your profile config file:
 
 
 
    POST_UP="iwconfig wlan0 rate 5.5M fixed"
 
 
 
Try various rates until you get the optimal setting, with no disconnection. In this case 12Mbits, as shown bellow:
 
 
 
    POST_UP="iwconfig wlan0 rate 12M fixed"
 
 
 
Now calling;
 
 
 
    netfcg2 -c <wireless profile>
 
or
 
  netcfg-menu
 
and choosing your profile works without extra commands.
 
 
 
 
 
 
 
=== Method 2: Lowering the txpower ===
 
 
 
You can try lowering the transmit power as well. This may save power as well:
 
 
 
iwconfig wlan0 txpower 5
 
 
 
or even as low as 0. Valid settings are from 0 to 20, auto and off for the stock kernel driver.
 
 
 
 
 
 
 
=== Method 3: Aircrack-ng patched driver ===
 
 
 
{{Note|Note that this driver only works on kernel26}}
 
Another method that works for some users are the Aircrack-ng patches for the rtl8187 driver. This driver can be installed by the [http://aur.archlinux.org/packages.php?ID=15375 rtl8187-ng] package from [[AUR]].
 
 
 
 
 
Since the above package is outdated as of 11/08/11 you can try installing the [https://aur.archlinux.org/packages.php?ID=51272 linux-aircrack] patched kernel instead from [[AUR]] or the precompiled package from the [https://wiki.archlinux.org/index.php/Unofficial_User_Repositories adslgr32] unofficial repository
 
 
 
 
 
 
 
=== Method 4: Using Ndiswrapper ===
 
 
 
If everything else fails, then you are left with using Ndiswrapper. Ndiswrapper takes Windows RTL8187 drivers and uses them to enable your card.
 
 
 
1. Install ndiswrapper:
 
pacman -S ndiswrapper
 
 
 
2. Download the Windows drivers:
 
wget [http://db.tt/4NB0HbF6 http://db.tt/4NB0HbF6]
 
 
 
3. Extract the drivers:
 
unzip ndiswrapper.zip
 
 
 
4. If you have the rtl8187 module loaded, then do this:
 
modprobe -r rtl8187
 
 
 
5. Install the driver:
 
 
 
If you have any previous drivers installed that may or may not have failed remove them:
 
 
 
ndiswrapper -r net8187b
 
 
 
Install the new drivers:
 
 
 
ndiswrapper -i ./ndiswrapper/net8187b.inf
 
 
 
ndiswrapper -m
 
 
 
Make sure that it is installed:
 
 
 
ndiswrapper -l
 
 
 
Try now loading the module
 
 
 
modprobe ndiswrapper
 
 
 
Kernel log shouldn't indicate any errors:
 
 
 
dmesg | tail
 
 
 
If all steps are successful it should be now visible in the iwconfig interfaces list:
 
 
 
iwconfig
 
 
 
6. Add ndiswrapper to the MODULES array in /etc/rc.conf
 
 
 
MODULES=(... powernow-k7 ndiswrapper ...)
 
 
 
7. Blacklist '''rtl8187''' in /etc/modprobe.conf.d/rtl8187.conf
 
 
 
blacklist rtl8187
 
 
 
Proceed to connect as you normally would.
 
 
 
=Misc Links=
 
*[http://rtl-wifi.sourceforge.net/ Project-page of the rtl-wifi driver project]
 
*[http://aircrack-ng.org/doku.php?id=r8187 Aircrack-ng information and tweaks for rtl8187 chips]
 

Revision as of 22:30, 3 August 2013

Redirect to: