Sorry for the inconvenience.  Chance of typos in templates, the navigation header should be functional for most versions of the handbook.
Potential remains for unforeseen breakage primarily in the handbook portion of the wiki.
Notice will be up until above verified and no other troubles found from recent modifications.

Wireless Testing

From PC-BSD Wiki
Revision as of 04:15, 10 April 2012 by Drulavigne (Talk | contribs)

Jump to: navigation, search


This area of the wiki is for those who wish to assist by reporting non-working wireless drivers or by testing new drivers. Both reporting and testing provides valuable information to the developers of wireless drivers. It also helps to ensure that PC-BSD and FreeBSD provide support for the wireless devices used by their users.

This page contains three tables:

  • Table 1: devices in this table don't have a FreeBSD driver yet. If your device requires you to run the ndisgen script to convert a Windows driver to a FreeBSD driver module, it belongs in this table. Such devices use ndis(4) as their driver name. The goal of this table is to determine which devices need a native FreeBSD driver.
  • Table 2: devices in this table already have a FreeBSD driver, but there are problems with the driver e.g. certain features are unavailable or the driver crashes. The goal of this table is to provide information to developers so the driver can be fixed. This means that you should reference any existing PRs or other URLs containing a description of the problem. If a PR does not exist, consider submitting one; information on how to submit a useful PR can be found at Writing FreeBSD Problem Reports.
  • Table 3: devices in this table have a working FreeBSD driver, making it a quick reference to determine if a device is supported. If your device works and is not in the table, take a minute to create a wiki login account and add an entry for your device.

If your wireless device is not supported and is not listed in Table 1, please create a wiki account and add it. However, do a little bit of research first:

  • Perform a web search for the name of the device and the word FreeBSD (for example, "freebsd broadcom 5709"). This should give you a good idea if the driver already exists--and if so, the name of the driver--or if other FreeBSD users have had problems getting their device to work.
  • If you are not sure of the name and model of your internal device, try this command: pciconf -lv | grep -i wireless. If the device is USB, try usbconfig dump_all_config_desc.
  • If a FreeBSD driver does not exist, download a Windows driver for the device, run the interactive script ndisgen as the superuser, and see if you can successfully use the generated driver module. Add the results for your architecture (i386 or amd64) to Table 1.

Note: ndisgen currently does not support the NDIS 6.X API. In practical terms, this means that you should only try it on XP and 2003 drivers. Make sure you download and try to convert the correct driver for your architecture (32 or 64 bit). If you would like to help test the most recent version of ndisgen, follow these instructions.

Note to iwi(4) users: work is ongoing to improve this driver. Please see Bernhard Schmidt's iwi wiki if you are interested in testing these changes.

Table 1: Wireless Devices Needing Drivers: Does ndisgen Work for this Device?

Device Name i386 amd64 Comments
BCM4310 NO
BCM4313 YES YES Download this WinXP driver, add bcmwl5.inf and bcmwl5.sys (bcmwl564.sys if using the amd64 version of freebsd) as driver files and both ( for amd64) and bcmwlcoi.dll (bcmwlcoi64.dll for amd64) as firmware files (this is important, if you don't add them through the ndisgen interface you'll get a kernel panic as soon as you kldload the bcmwl5_sys.ko or bcmwl564_sys.ko file), move all the generated *.ko files to /boot/modules, add this to your /etc/rc.conf (this for amd64 users), and this to your /boot/loader.conf, add your wpa_supplicant.conf file to /etc and finally reboot the PC to get the drivers loaded and interfaces created.

Note: The WinXP drivers mentioned above work only on FreeBSD 9.0RC3 and later, if you need to use FreeBSD 8.2 or 7.4 use the curtiebo's Win98 driver.

RTL8185 YES YES Try Me driver instead of XP. Use XP driver version 1.10. Should be about 280 KiB in size. Must manually load driver. Placing it in /boot/loader.conf did not initialize device. As far as I have tested it fully works. You may have to manually configure it as well. The graphical network manager did not work for me. (More info in discussion). Just finished setting up amd64 system. XP64 driver version 1.10 does work (using it now). Follow same procedures as i386 driver.
RT3062 YES Not tested Appears to be working, but not fully functional. Have had an issue where sometimes it won't connect on boot and I've had to reboot. Also it has serious issues with uploading. Using this driver
RTL8191SE YES NO driver Vistax64: ndisgen generates rtl8192se_sys.ko . kernel load it , but module isn't used. pciconf -lv output :

none7@pci0:10:0:0:class=0x028000 card=0x818110ec chip=0x817210ec rev=0x10 hdr=0x00
vendor = 'Realtek Semiconductor'
device = 'Realtek RTL8191SE wireless LAN 802.11N PCI-E NIC (RTL8191SE ?)'
class = network

Vista drivers are not XP drivers and will not work.

RTL8187SE YES NO Not kldload if_ndis, says the archive already exists. PC-BSD (x86) is restarted after kldload rtl8187Se_sys.ko from Windows XP driver. The wireless continue to not function.
RTL8192SE YES YES, in 8.2 use the the Windows XP driver

If a driver exists for your wireless device but the driver does not work well, add a description of the problem to Table 2. Take a minute to query the PR database and add the PR number if one exists.

Table 2: Existing Wireless Drivers That Don't Work Well

Driver Name i386 amd64 PR Number Comments
rum X X Some chip revisions have problems with poor signal strength if distance from AP is medium to high.
wpi Known issue in 8.2 ( Updating src and rebuilding kernel as per that link or upgrading to 9.0 fixes issue.

Table 3 provides a handy resource for checking to see if your wireless driver is known to work on FreeBSD and PC-BSD. Devices should be added alphabetically (then numerically). Only add devices that you have successfully used (e.g. don't add devices that "should" work according to the driver man page).

Table 3: Wireless Devices Known to Work

Device Name Driver i386 amd64 Comments
AR5001 ath YES
AR9285 ath should work in 9.0 according to
Belkin 54G (F5D7050) rum YES external USB
Broadcom Corporation Dell Wireless 1390 WLAN Mini-PCI Card (BCM4311) bwn YES YES Works in 8.1 or later, only station, adhoc-demo and monitor mode is currently supported. Must install net/bwn-firmware-kmod port. Not the bwi-firmware-kmod. 8.1 users may need to modify /usr/src/sys/kern/subr_firmware.c to read FIRMWARE_MAX 50 and recompile their kernel; this is not necessary in 8.2 or higher.
Broadcom 802.11b/g (BCM4318) bwn YES YES Same as above
Intel 5100AGN iwn Should work in 8.1 or later
Intel 6205a iwn Works in 9.0. Instructions for 8.2 at
RLT8187B urtw Should work in 8.0 or later

Table 4: Devices Needing Drivers

The following interfaces need a FreeBSD driver:

Device Name Driver Sources/Notes
AR9287 committed to HEAD May 26/11
DW1501 appears to be Broadcom based, no open source driver or blob yet
RT2760T doesn't seem to have a blob for Linux yet
RT5390 open sourced in 2/11
RTL8188CE OpenBSD uses urtwn
Personal tools