.\" $OpenBSD: acx.4,v 1.30 2007/12/10 10:32:54 jmc Exp $ .\" .\" Copyright (c) 2006 Theo de Raadt. .\" Copyright (c) 2006 The DragonFly Project. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in .\" the documentation and/or other materials provided with the .\" distribution. .\" 3. Neither the name of The DragonFly Project nor the names of its .\" contributors may be used to endorse or promote products derived .\" from this software without specific, prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS .\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT .\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS .\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE .\" COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, .\" INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING, .\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; .\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED .\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, .\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT .\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .Dd $Mdocdate: December 10 2007 $ .Os .Dt ACX 4 .Sh NAME .Nm acx .Nd TI ACX100/ACX111 IEEE 802.11a/b/g wireless network device .Sh SYNOPSIS .Cd "acx* at cardbus?" .Cd "acx* at pci?" .Sh DESCRIPTION The .Nm driver provides support for TI TNETW1100/TNETW1100B (ACX100) and TNETW1130 (ACX111) based PCI/CardBus network adapters. .Pp The ACX100A and ACX100B are first generation 802.11b devices from TI. The ACX111 is a second generation device which supports 802.11b/g and in some cases 802.11a. .Pp These are the modes the .Nm driver can operate in: .Bl -tag -width "IBSS-masterXX" .It BSS mode Also known as .Em infrastructure mode, this is used when associating with an access point, through which all traffic passes. This mode is the default. .It IBSS mode Also known as .Em IEEE ad-hoc mode or .Em peer-to-peer mode. This is the standardized method of operating without an access point. Stations associate with a service set. However, actual connections between stations are peer-to-peer. .It Host AP In this mode the driver acts as an access point (base station) for other cards. .It monitor mode In this mode the driver is able to receive packets without associating with an access point. This disables the internal receive filter and enables the card to capture packets from networks which it wouldn't normally have access to, or to scan for access points. .El .Pp .Nm supports software WEP for ACX111 and hardware WEP for ACX100. Wired Equivalent Privacy (WEP) is the de facto encryption standard for wireless networks. It can be typically configured in one of three modes: no encryption; 40-bit encryption; or 104-bit encryption. Unfortunately, due to serious weaknesses in WEP protocol it is strongly recommended that it not be used as the sole mechanism to secure wireless communication. WEP is not enabled by default. .Pp The transmit speed is user-selectable or can be adapted automatically by the driver depending on the number of hardware transmission retries. .Sh CONFIGURATION The .Nm driver can be configured at runtime with .Xr ifconfig 8 or on boot with .Xr hostname.if 5 using the following parameters: .Bl -tag -width Ds .It Cm bssid Ar bssid Set the desired BSSID. .It Fl bssid Unset the desired BSSID. The interface will automatically select a BSSID in this mode, which is the default. .It Cm chan Ar n Set the channel (radio frequency) to be used by the driver based on the given channel ID .Ar n . .It Fl chan Unset the desired channel to be used by the driver. The driver will automatically select a channel in this mode, which is the default. .It Cm media Ar media The .Nm driver supports the following .Ar media types: .Pp .Bl -tag -width autoselect -compact .It Cm autoselect Enable autoselection of the media type and options. .It Cm DS1 Set 802.11b DS 1Mbps operation. .It Cm DS2 Set 802.11b DS 2Mbps operation. .It Cm DS5 Set 802.11b DS 5.5Mbps operation. .It Cm DS11 Set 802.11b DS 11Mbps operation. .It Cm OFDM6 Set 802.11a/g OFDM 6Mbps operation. .It Cm OFDM9 Set 802.11a/g OFDM 9Mbps operation. .It Cm OFDM12 Set 802.11a/g OFDM 12Mbps operation. .It Cm OFDM18 Set 802.11a/g OFDM 18Mbps operation. .It Cm OFDM24 Set 802.11a/g OFDM 24Mbps operation. .It Cm OFDM36 Set 802.11a/g OFDM 36Mbps operation. .It Cm OFDM48 Set 802.11a/g OFDM 48Mbps operation. .It Cm OFDM54 Set 802.11a/g OFDM 54Mbps operation. .El .It Cm mediaopt Ar opts The .Nm driver supports the following media options: .Pp .Bl -tag -width monitor -compact .It Cm hostap Select Host AP operation. .It Cm ibss Select IBSS operation. .It Cm monitor Select monitor mode. .El .It Fl mediaopt Ar opts Disable the specified media options on the driver and return it to the default mode of operation (BSS). .It Cm mode Ar mode The .Nm driver supports the following modes: .Pp .Bl -tag -width 11b -compact .It Cm 11a Force 802.11a operation. .It Cm 11b Force 802.11b operation. .It Cm 11g Force 802.11g operation. .El .It Cm nwflag Ar flag Set a specified flag for the wireless network interface. The flag name can be either .Ql hidenwid or .Ql nobridge . The .Ql hidenwid flag will hide the network ID (ESSID) in beacon frames when operating in Host AP mode. It will also prevent responses to probe requests with an unspecified network ID. The .Ql nobridge flag will disable the direct bridging of frames between associated nodes when operating in Host AP mode. Setting this flag will block and filter direct inter-station communications. .Pp Note that the .Ql hidenwid and .Ql nobridge options do not provide any security. The hidden network ID will be sent in clear text by associating stations and can be easily discovered with tools like .Xr tcpdump 8 and .Xr hostapd 8 . .It Fl nwflag Ar flag Remove a specified flag for the wireless network interface. .It Cm nwid Ar id Set the network ID. The .Ar id can either be any text string up to 32 characters in length, or a series of hexadecimal digits up to 64 digits. An empty .Ar id string allows the interface to connect to any available access points. By default the .Nm driver uses an empty string. Note that network ID is synonymous with Extended Service Set ID (ESSID). .It Fl nwid Set the network ID to the empty string to allow the interface to connect to any available access point. .It Cm nwkey Ar key Enable WEP encryption using the specified .Ar key . The .Ar key can either be a string, a series of hexadecimal digits (preceded by .Sq 0x ) , or a set of keys of the form .Dq n:k1,k2,k3,k4 , where .Sq n specifies which of the keys will be used for transmitted packets, and the four keys, .Dq k1 through .Dq k4 , are configured as WEP keys. If a set of keys is specified, a comma .Pq Sq \&, within the key must be escaped with a backslash. Note that if multiple keys are used, their order must be the same within the network. .Nm is capable of using both 40-bit (5 characters or 10 hexadecimal digits) or 104-bit (13 characters or 26 hexadecimal digits) keys. .It Fl nwkey Disable WEP encryption. This is the default mode of operation. .El .Sh FILES The driver needs a set of firmware files which are loaded when an interface is brought up: .Pp .Bl -tag -width Ds -offset indent -compact .It Pa /etc/firmware/tiacx100 .It Pa /etc/firmware/tiacx100r0D .It Pa /etc/firmware/tiacx100r11 .It Pa /etc/firmware/tiacx111 .It Pa /etc/firmware/tiacx111c16 .It Pa /etc/firmware/tiacx111r16 .El .Pp These firmware files are not free because TI refuses to grant distribution rights. In fact they have rebuffed thousands of attempts to start a dialogue on this issue. As a result, even though .Ox includes the driver, the firmware files cannot be included and users have to download these files on their own. .Pp A prepackaged version of the firmware, designed to be used with .Xr pkg_add 1 , can be found at: .Bd -literal -offset indent http://www.nazgul.ch/acx/acx-firmware-1.4.tgz .Ed .Sh HARDWARE The following cards are among those supported by the .Nm driver: .Pp .Bl -column -compact "Microcom Travelcard" "ACX111" "CardBus" "a/b/g" -offset 6n .Em "Card Chip Bus Standard" D-Link DWL-520+ ACX100 PCI b D-Link DWL-650+ ACX100 CardBus b D-Link DWL-G520+ ACX111 PCI b/g D-Link DWL-G630+ ACX111 CardBus b/g D-Link DWL-G650+ ACX111 CardBus b/g Ergenic ERG WL-003 ACX100 CardBus b Hamlet HNWP254 ACX111 CardBus b/g Hawking HWP54G ACX111 PCI b/g Linksys WPC54Gv2 ACX111 CardBus b/g Microcom Travelcard ACX111 CardBus b/g Netgear WG311v2 ACX111 PCI b/g Sceptre SC254W+ ACX111 CardBus b/g Tornado/ADT 211g ACX111 PCI b/g USR USR5410 ACX111 CardBus b/g USR USR5416 ACX111 PCI b/g ZyXEL G-160 ACX111 CardBus b/g ZyXEL G-360 EE ACX111 PCI b/g .El .Sh EXAMPLES The following .Xr hostname.if 5 example configures acx0 to join whatever network is available on boot, using WEP key .Dq 0x1deadbeef1 , channel 11, obtaining an IP address using DHCP: .Bd -literal -offset indent dhcp NONE NONE NONE nwkey 0x1deadbeef1 chan 11 .Ed .Pp The following .Xr hostname.if 5 example creates a host-based access point on boot: .Bd -literal -offset indent inet 192.168.1.1 255.255.255.0 NONE media autoselect \e mediaopt hostap nwid my_net chan 11 .Ed .Pp Configure acx0 for WEP, using hex key .Dq 0x1deadbeef1 : .Bd -literal -offset indent # ifconfig acx0 nwkey 0x1deadbeef1 .Ed .Pp Return acx0 to its default settings: .Bd -literal -offset indent # ifconfig acx0 -bssid -chan media autoselect \e nwid "" -nwkey .Ed .Pp Join an existing BSS network, .Dq my_net : .Bd -literal -offset indent # ifconfig acx0 192.168.1.1 netmask 0xffffff00 nwid my_net .Ed .Sh SEE ALSO .Xr arp 4 , .Xr cardbus 4 , .Xr ifmedia 4 , .Xr intro 4 , .Xr netintro 4 , .Xr pci 4 , .Xr hostname.if 5 , .Xr hostapd 8 , .Xr ifconfig 8 .Sh HISTORY The .Nm driver first appeared in .Ox 4.0 . .Sh AUTHORS .An -nosplit The .Nm driver was written by .An Sepherosa Ziehau . The manual page was written by .An Sascha Wildner . Both are based on the .Pa http://wlan.kewl.org project team's original code. .Pp The hardware specification was reverse engineered by the good folks at .Pa http://acx100.sourceforge.net . Without them this driver would not have been possible.