Version 1.6 has been released.
Following is short summary of changes since 1.5:
* Support for Highmem with USB devices added.
* Bulk and interrupt URBs were being mixed up in earlier releases - this issue
* Crashes due to 'divide by zero' error in update_wireless_stats fixed.
* Support for Atheros USB drivers, including RangeMAX MIMO, added. This
requires loading ar5523.bin firmware file with user-space tool
load_fw_ar5523 in utils.
* Suspend and resume support improved; USB devices should now be able
to suspend and resume.
* Bug fixes.
This release modifies the format of installation files of Windows drivers, so
you are suggested to reinstall Windows drivers. For now ndiswrapper supports
older installations also, but in future this compatibility may be dropped.
Rest below is specific to Atheros USB devices only. If you don't have one, you
can ignore the rest.
As stated above, this version includes support for Atheros USB devices. These
devices come with two drivers (i.e., two sets of .inf and .sys files). One is
named athfmwdl or athwpn, the other is vendor specific (e.g., wg111u for
Netgear WG111U card). For now, you need to install only vendor specific
version with ndiswrapper; e.g., in the case of WG111U, install driver with
'ndiswrapper -i /path/to/wg111u.inf'. Among other files, this will install
ar5523.bin in /etc/ndiswrapper/wg111u. Unlike in the case of other devices,
Atheros USB drivers load firmware file ar5523.bin separately. For now, this is
done through user space tool 'load_fw_ar5523' in 'utils' directory included in
this release. When the device is plugged in, you need to load ar5523.bin with
(in the case of wg111u, that would be
Once this is done, you can load ndiswrapper as usual. Until ar55232.bin is
loaded with load_fw_ar5523, ndiswrapper won't initialize the card. These two
steps, loading firmware file and loading ndiswrapper module, can be done in
either order - only when both are done, ndiswrapper will initialize the
card. It is better (takes even longer to explain why) to load ndiswrapper
module first and then the firmware file. The firmware file needs to be loaded
only when the device is plugged in or when resuming from suspend (apparently
device loses firmware when suspended).
load_fw_ar5523 knows about a few Atheros USB devices; if your device is one of
them, you need to give only the path to ar5523.bin file. However, if you have
a Atheros USB based card that load_fw_ar5523 doesn't know about (it will not
load firmware file for your device), then you can give vendor and product IDs
of the card as extra arguments, which can be obtained with 'lsusb'
program. For example, 'lsusb' may report ID of your device as
Bus 2 Device 5: ID XXXX:YYYY
To load ar5523.bin file for such a device, run
load_fw_ar5523 /path/to/ar5523.bin XXXX YYYY
If your device works with that, send mail to the mailing list so information
about it can be added to load_fw_ar5523.
Before loading ar5523.bin, product ID (as can be seen with 'lsusb') would be
different from that after ar5523.bin is loaded. For example, for WG111U,
before firmware is loaded, 'lsusb' reports '0846:4301' and after loading
firmware, it becomes '0846:4300' and ndiswrapper can initialize 0846:4300
(with /etc/ndiswrapper/wg111u/0846:4300.F.conf). Make sure you don't load
ar5523.bin again, after the device ID has changed.
Hopefully load_fw_ar5523 is needed only temporarily; in some future release
ar5523.bin may be loaded with ndiswrapper itself.