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

+

<!--T:3-->

This page contains four tables:

This page contains four tables:

−

* [[#Table 1: Wireless Devices Needing Drivers: Does ndisgen Work for this Device? | Table 1]]: devices in this table do not 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.

+

<!--T:4-->

+

* {{local|link=Wireless_Testing|anchor=cite_ref-Wireless_Testing-Table_1._ndisgen_Functionality_4-0|Table 1}}: devices in this table do not 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: Existing Wireless Drivers That Do not Work Well | 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 [http://www.freebsd.org/doc/en/articles/problem-reports/article.html Writing FreeBSD Problem Reports].

+

<!--T:5-->

+

* {{local|link=Wireless_Testing|anchor=cite_ref-Wireless_Testing-Table_2._Faulty_Existing_Drivers_8-0|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 {{Citelink|url=http://www.freebsd.org/doc/en/articles/problem-reports/article.html|txt=Writing FreeBSD Problem Reports}}.

−

* [[#Table 3: Wireless Devices Known to Work | 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.

+

<!--T:6-->

+

* {{local|link=Wireless_Testing|anchor=cite_ref-Wireless_Testing-Table_3._Functional_Wireless_Devices_9-0|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.

−

* [[#Table 4: Devices Needing Drivers | Table 4]]: devices in this table have users who desire support but lack a FreeBSD driver.

+

<!--T:7-->

+

* {{local|link=Wireless_Testing|anchor=cite_ref-Wireless_Testing-Table_4._Interfaces_Without_Drivers_10-0|Table 4}}: devices in this table have users who desire support but lack a FreeBSD driver.

−

If your wireless device is not supported and is not listed in [[#Table 1: Wireless Devices Needing Drivers: Does ndisgen Work for this Device? | Table 1]], please create a wiki account and add it. However, please do a little bit of research first:

+

<!--T:8-->

+

If your wireless device is not supported and is not listed in {{local|link=Wireless_Testing|anchor=cite_ref-Wireless_Testing-Table_1._ndisgen_Functionality_4-0|Table 1}}, please create a wiki account and add it. However, please do a little bit of research first:

+

<!--T:9-->

* 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.

* 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.

+

<!--T:10-->

* 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 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: Wireless Devices Needing Drivers: Does ndisgen Work for this Device? | Table 1]].

+

<!--T:11-->

+

* 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 {{local|link=Wireless_Testing|anchor=cite_ref-Wireless_Testing-Table_1._ndisgen_Functionality_4-0|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 [http://blog.pcbsd.org/2010/11/looking-for-ndis-testers-freebsd-and-pc-bsd/ these instructions].

+

<!--T:12-->

+

{{note|icon64=:::* '''NDIS 6.X API''' is currently not supported. 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 {{Citelink|url=http://blog.pcbsd.org/2010/11/looking-for-ndis-testers-freebsd-and-pc-bsd/|txt=these instructions}}.

−

'''Note:''' report of ndisgen process causing a faulty situation. '''Description:''' Wireless is active, but when trying to connect to the network, the screen goes dark and the system stops responding. The black screen can be removed by restarting, but after reboot PC-BSD® does not enter the boot loader section. The system shows a prompt ''FreeBSD (Amnesia mode)''. '''Likely solution:''' [http://www.freebsd.org/cgi/query-pr.cgi?pr=165622&sourceid=opensearch FreeBSD problem report and patch] for "Unregistered use of FPU in kernel" panic caused by miniport driver adapted via ndisgen.

+

<!--T:13-->

+

:::* '''Report of a faulty situation''' caused by the ndisgen process.<br/>'''Description:''' Wireless is active, but when trying to connect to the network, the screen goes dark and the system stops responding. The black screen can be removed by restarting, but after reboot PC-BSD® does not enter the boot loader section. The system shows a prompt ''FreeBSD (Amnesia mode)''.<br/>'''Likely solution:''' {{Citelink|url=http://www.freebsd.org/cgi/query-pr.cgi?pr=165622&sourceid=opensearch|txt=FreeBSD problem report and patch}} for "Unregistered use of FPU in kernel" panic caused by miniport driver adapted via ndisgen.

−

'''Note to iwi(4) users:''' work is ongoing to improve this driver. Please see [http://people.freebsd.org/~bschmidt/iwi/ Bernhard Schmidt's iwi wiki] if you are interested in testing these changes.

+

<!--T:14-->

+

:::* '''iwi(4) users:''' work is ongoing to improve this driver. Please see {{Citelink|url=http://people.freebsd.org/~bschmidt/iwi/|txt=Bernhard Schmidt's iwi wiki}} if you are interested in testing these changes.}}

== Wireless Devices Needing Drivers: Does ndisgen Work for this Device? == <!--T:15-->

−

{| border=1

+

<!--T:16-->

−

|'''Device Name'''

+

{{tbl-init|caption=1. ndisgen Functionality}}

−

|'''i386'''

+

!Device Name

−

|'''amd64'''

+

!i386

−

|'''Comments'''

+

!amd64

+

!Comments

|-

|-

|BCM4310

|BCM4310

Line 42:

Line 59:

|YES

|YES

|YES

|YES

−

|Download this [http://dl.dropbox.com/u/1101857/%5Bwikidrivers.com%5D%20Broadcom_BCM43xx_5.100.235.19_win5x.exe WinXP] driver, add bcmwl5.inf and bcmwl5.sys (bcmwl564.sys if using the amd64 version of freebsd) as driver files and both bcm43xx.cat (bcm43xx64.cat for amd64) and bcmwlcoi.dll (bcmwlcoi64.dll for amd64) as firmware files (this is important, if you do not add them through the ndisgen interface you will 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 [http://pastebin.com/bRPaBS7N this] to your /etc/rc.conf ([http://pastebin.com/qYR1wXs4 this] for amd64 users), and [http://pastebin.com/s2gBzVVQ 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.

+

|1. Download the {{Citelink|url=http://dl.dropbox.com/u/1101857/%5Bwikidrivers.com%5D%20Broadcom_BCM43xx_5.100.235.19_win5x.exe|txt=WinXP (BCM43xx 5.100.235.19)}} driver,<br/>2. add bcmwl5.inf and bcmwl5.sys (bcmwl564.sys if using the amd64 version of FreeBSD) as driver files and both bcm43xx.cat (bcm43xx64.cat for amd64) and bcmwlcoi.dll (bcmwlcoi64.dll for amd64) as firmware files (this is important, if you do not add them through the ndisgen interface you will get a kernel panic as soon as you kldload the bcmwl5_sys.ko or bcmwl564_sys.ko file),<br/>3. move all the generated *.ko files to /boot/modules,<br/>4. add {{txtbox|box=wlan_ccmp_load="YES"<br/>wlan_tkip_load="YES"|txt=to your /etc/rc.conf}} ({{txtbox|box=kld_list="bcmwl564_sys"<br/>wlans_ndis0="wlan0"<br/>wpa_supplicant_enable="YES"<br/>ifconfig_wlan0="WPA SYNCDHCP"|txt=for amd64 users),}} <br/>5. add {{txtbox|box=wlan_ccmp_load="YES"<br/>wlan_tkip_load="YES"|txt=to your /boot/loader.conf,}}<br/>6. 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, also the drivers listed are extremelly sensitive to correct timing during installation and can brick your *BSD install, and are also very unstable and cause lots of kernel panics.

+

{{warning|icon32=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, also the drivers listed are extremelly sensitive to correct timing during installation and can brick your *BSD install, and are also very unstable and cause lots of kernel panics.}}

|-

|-

|RTL8185

|RTL8185

Line 53:

Line 70:

|YES

|YES

|Not tested

|Not tested

−

|Appears to be working, but not fully functional. Have had an issue where sometimes it will not connect on boot and I've had to reboot. Also it has serious issues with uploading. Using [http://zonetusa.net/media/import/ZEW16X2_DRxp.zip this driver]

+

|Appears to be working, but not fully functional. Have had an issue where sometimes it will not connect on boot and I've had to reboot. Also it has serious issues with uploading. {{strike|Using {{Citelink|url=http://zonetusa.net/media/import/ZEW16X2_DRxp.zipL|txt=<!--please replace "this"-->this driver}}}} Needs updated information/link.

If a driver exists for your wireless device but the driver does not work well, add a description of the problem to [[#Table 2: Existing Wireless Drivers That Do not Work Well | Table 2]]. Take a minute to [http://www.freebsd.org/cgi/query-pr-summary.cgi?query query the PR database] and add the PR number if one exists.

+

<!--T:18-->

+

If a driver exists for your wireless device but the driver does not work well, add a description of the problem to {{local|link=Wireless_Testing|anchor=cite_ref-Wireless_Testing-Table_2._Faulty_Existing_Drivers_8-0|Table 2}}. Take a minute to {{Citelink|url=http://www.freebsd.org/cgi/query-pr-summary.cgi?query|txt=query the PR database}} and add the PR number if one exists.

−

== Table 2: Existing Wireless Drivers That Do not Work Well ==

+

== Wireless Drivers That Need Improvement == <!--T:19-->

−

{| border=1

+

<!--T:20-->

−

|'''Driver Name'''

+

{{tbl-init|caption=2. Faulty Existing Drivers}}

−

|'''i386'''

+

!Driver Name

−

|'''amd64'''

+

!i386

−

|'''PR Number'''

+

!amd64

−

|'''Comments'''

+

!PR Number

+

!Comments

|-

|-

|rum

|rum

Line 100:

Line 120:

|

|

|

|

−

|Known issue in 8.2 (http://www.freebsd.org/cgi/query-pr.cgi?pr=143874). Updating src and rebuilding kernel as per that link or upgrading to 9.0 fixes issue.

+

|Known issue in 8.2 ({{citelink|url=http://www.freebsd.org/cgi/query-pr.cgi?pr=143874|txt=pr#143874}}). Updating src and rebuilding kernel as per that link or upgrading to 9.0 fixes issue.

|}

|}

−

[[#Table 3: Wireless Devices Known to Work | 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. do not add devices that "should" work according to the driver man page).

+

<!--T:21-->

+

{{local|link=Wireless_Testing|anchor=cite_ref-Wireless_Testing-Table_3._Functional_Wireless_Devices_9-0|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. do not add devices that "should" work according to the driver man page).

−

== Table 3: Wireless Devices Known to Work ==

+

== Wireless Devices Known to Work == <!--T:22-->

−

{| border=1

+

<!--T:23-->

−

|'''Device Name'''

+

{{tbl-init|caption=3. Functional Wireless Devices}}

−

|'''Driver'''

+

!Device Name

−

|'''i386'''

+

!Driver

−

|'''amd64'''

+

!i386

−

|'''Comments'''

+

!amd64

+

!Comments

|-

|-

|AR5001

|AR5001

Line 123:

Line 145:

|AR9285

|AR9285

|ath

|ath

−

|

+

|YES

|YES

|YES

|works in 9.1

|works in 9.1

+

|-

+

|AR9485

+

|ath

+

|YES

+

|YES

+

|works unmodified in 10 and using kernel modifications from "-HEAD" in 9.2.

|-

|-

| Belkin 54G (F5D7050)

| Belkin 54G (F5D7050)

Line 155:

Line 183:

|

|

|

|

−

|Works in 9.0. Instructions for 8.2 at http://blog.cochard.me/2011/08/backporting-intel-prowireless-6205a.html

+

|Works in 9.0. Instructions for 8.2 at ''{{citelink|url=http://blog.cochard.me/2011/08/backporting-intel-prowireless-6205a.html|txt=backporting-intel-prowireless-6205a}}''

Contents

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

Table 1: devices in this table do not 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[1].

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.

Table 4: devices in this table have users who desire support but lack a FreeBSD driver.

If your wireless device is not supported and is not listed in Table 1, please create a wiki account and add it. However, please 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.

NDIS 6.X API is currently not supported. 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[2].

Report of a faulty situation caused by the ndisgen process.Description: Wireless is active, but when trying to connect to the network, the screen goes dark and the system stops responding. The black screen can be removed by restarting, but after reboot PC-BSD® does not enter the boot loader section. The system shows a prompt FreeBSD (Amnesia mode).Likely solution:FreeBSD problem report and patch[3] for "Unregistered use of FPU in kernel" panic caused by miniport driver adapted via ndisgen.

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

1. Download the WinXP (BCM43xx 5.100.235.19)[5] driver,2. add bcmwl5.inf and bcmwl5.sys (bcmwl564.sys if using the amd64 version of FreeBSD) as driver files and both bcm43xx.cat (bcm43xx64.cat for amd64) and bcmwlcoi.dll (bcmwlcoi64.dll for amd64) as firmware files (this is important, if you do not add them through the ndisgen interface you will get a kernel panic as soon as you kldload the bcmwl5_sys.ko or bcmwl564_sys.ko file),3. move all the generated *.ko files to /boot/modules,4. add

6. add your wpa_supplicant.conf file to /etc and finally reboot the PC to get the drivers loaded and interfaces created.

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, also the drivers listed are extremelly sensitive to correct timing during installation and can brick your *BSD install, and are also very unstable and cause lots of kernel panics.

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 will not connect on boot and I've had to reboot. Also it has serious issues with uploading. Using this driver[6] Needs updated information/link.

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[7] and add the PR number if one exists.

Wireless Drivers That Need Improvement

Some chip revisions have problems with poor signal strength if distance from AP is medium to high.

wpi

Known issue in 8.2 (pr#143874[8]). 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. do not add devices that "should" work according to the driver man page).

Wireless Devices Known to Work

works unmodified in 10 and using kernel modifications from "-HEAD" in 9.2.

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.