Difference between revisions of "Rtl8187 wireless"

From ArchWiki
Jump to: navigation, search
(Clean up introduction.)
(contained only general information, the driver itself "should just work" or the general informations are enough)
(7 intermediate revisions by 3 users not shown)
Line 1: Line 1:
[[Category:Wireless Networking]]
+
#REDIRECT [[Wireless Setup]]
 
+
This page describes how to get the '''rtl8187''' wifi-driver working
+
 
+
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 rtl8187 driver is in the kernel now.
+
 
+
=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: [[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.
+
 
+
==Adjusting with iwconfig options==
+
 
+
=== Lowering the rate ===
+
 
+
The solution can be found in this thread: https://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, thus making the connection a bit more stable:
+
 
+
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.
+
 
+
=== 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.
+
 
+
=== Setting rts and fragmentation thresholds ===
+
 
+
Default iwconfig options have rts and fragmentation thresholds off. These options are particularly useful when there are many adjacent APs or in a noisy environment.
+
 
+
The minimum value for fragmentation value is 256 and maximum is 2346. In many windows drivers the maximum is the default value:
+
 
+
iwconfig wlan0 frag 2346
+
 
+
For rts minimum is 0, maximum is 2347. Once again windows drivers use maximum as the default:
+
 
+
iwconfig wlan0 rts 2347
+
 
+
== Compat-wireless-patched ==
+
 
+
The [http://wireless.kernel.org/ Linux Wireless] project provides frequent stable releases of patched drivers for the latest kernels. These drivers fix the "fixed-channel -1" issue, whilst providing better injection.
+
For further information and installation procedures please read the [[Wireless_Setup#compat-wireless-patched]] article.
+
 
+
== 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.
+
 
+
'''Install ndiswrapper'''
+
pacman -S ndiswrapper
+
 
+
'''Download the Windows drivers'''
+
wget [http://db.tt/4NB0HbF6 http://db.tt/4NB0HbF6]
+
 
+
'''Extract the drivers'''
+
unzip ndiswrapper.zip
+
 
+
'''Unload the rtl8187 module'''
+
modprobe -r rtl8187
+
 
+
'''Remove any previously installed drivers (if any)'''
+
 
+
ndiswrapper -r net8187b
+
 
+
'''Install the new drivers'''
+
 
+
ndiswrapper -i ./ndiswrapper/net8187b.inf
+
 
+
ndiswrapper -m
+
 
+
depmod -a
+
 
+
'''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 visible now in the iwconfig interfaces list'''
+
 
+
iwconfig
+
 
+
'''Add ndiswrapper to the MODULES array in /etc/rc.conf'''
+
 
+
MODULES=(... powernow-k7 ndiswrapper ...)
+
 
+
'''Blacklist ''rtl8187'' in /etc/modprobe.conf.d/rtl8187.conf'''
+
 
+
blacklist rtl8187
+
 
+
Proceed to connect as you normally would.
+
 
+
{{Note|You may still have issues with disconnections, but in this case setting rates, rts and fragmentation thresholds actually work}}
+
 
+
=Misc Links=
+
*[http://wireless.kernel.org/ The Linux Wireless project]
+
*[http://aircrack-ng.org/doku.php?id=r8187 Aircrack-ng information for rtl8187 chips]
+

Revision as of 22:30, 3 August 2013

Redirect to: