The Wavelan IEEE is the current generation of Wireless LAN hardware
offered by Lucent (and others). A more detailed description is
available in the
Wireless Howto. Currently, there are three main drivers supporting the same
Wavelan IEEE hardware. One is the new MPL/GPL driver, called orinoco_cs.
One is the old GPL driver, called wvlan_cs.
The last one is based on a binary library and supported by Lucent, called wavelan2_cs.
All three drivers lack the ability to provide the signal strength measurement
from all the access points reachable from a card. Although this
information should be available as the signal strength measurements are required
to determine the access point to associate to, this information has been hidden
from the device drivers. Moreover, since Lucent Client Manager for Windows
provides such information, and Lucent says that their Linux driver has all the
feature of the Windows driver, then again, there must be a way to get the signal
strength measurement from the card. That was may starting point to hack the
Lucent driver (wavelan2_cs) to get all the information collected by the Lucent
Client Manager for Windows.
Of course, having the signal strength measurements from all access points can
help in site design and in some methods of location determination on which a
number of location-aware applications can be built.
Provide all the information available from the Lucent Client Manager for
Windows (e.g. Signal Level, Noise Level, ...) using active scanning- see IEEE802.11 standard.)
Scanning can be done automatically or under user control.
Corrected the 'iwspy' part to return the correct statistics.
Currently, when 'iwspy' is given a MAC address for an access point, it
returns the statistics measured from the access point which the card is
associated with (this is because the driver has only access to data packets.)
First driver to implement the 'iwspy' option 'ap' which
returns the list of access points
reached from the card.
Added 'iwpriv' command to enable/disable automatic active
scanning. By disabling automatic scanning (enabled by default) you can
gain performance if you do not need the scanning feature. However, you can
issue a scanning command using 'iwpriv' (see the
examples below.)
Added the 'iwpriv' command to allow for user control over
scanning.
There is a general API that can interface with the driver to get this
information to user applications.
Kernel Version : Tested under 2.4.2, should work on any kernel
that Lucent 'wavelan2_cs' driver works on.
Driver switching : If you want to switch between the 2
Wavelan-IEEE drivers, everything is controlled in
/etc/pcmcia. wvlan_cs is bound in config,
wavelan2_cs is bound in wavelan2_cs.conf, mwavelan_csis bound in mwavelan_cs.conf. Comment those
files as needed.
Changing the other two drivers (wvlan_cs and orinoco_cs) to return signal
strength measurements from all the access points.
(I already modified he open source driver
wvlan_cs to do
the
same thing. I'm currently testing it on different platforms. I will make
it available for download very shortly.)
Removing stall access points
from the list.
Enhancing the performance.
Developing a GUI application to display the signal strength measurement
(should be trivial using the API.)