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>
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:
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: