Installing Cisco / Linksys AE2500 wireless adapter in linux

By Rob Warner  //  Linux  //  23 Comments

It took me several hours and missteps to convert my son’s Windows 7 box to Ubuntu, all because of the wireless adapter. It’s a Cisco branded Linksys AE2500. Here’s what I learned:

  • Use the 32-bit version of Ubuntu (actually, I didn’t try 64-bit after switching to the source for ndiswrapper).
  • Download the latest ndiswrapper from sourceforge — follow the instructions at to compile and install it.
  • The Windows XP drivers (don’t use Vista’s or Windows 7’s) are available at Cisco’s site.
  • This link was helpful as well — especially the part to do “sudo ndiswrapper -m” to automatically load on startup.

EDIT: The “sudo ndiswrapper -m” did NOT automatically load on startup; I had to add “ndiswrapper” to /etc/modules.

sudo ndiswrapper -m

23 Comments to “Installing Cisco / Linksys AE2500 wireless adapter in linux”

  • awesome tutorial… work like a charm… didnt even have to update the NDIWwrapper in Mint12
    just forgot to mention to add ‘sudo’ in from of some install commands… anyhow with your tutorial got it working in about 3min!

    AE2500 is the FASTEST Thru-put dongle I have came upon… AE1000 craps on 5.1GHz for some unknown reason. and EDUP ($6 ebay) microUSB does max 150KB/sec while the Ae2500 DOES the MAX bandwidth(max I have seen it do is 6000KB/sec)… I would say as fast as LAN cable! 🙂

  • Glad it worked for you!

  • I can’t get beyond the make step, I get an error. Running on Mint 13

  • What error do you get?

    • Does these step work on Linux Mint 13?

      • I would think so, but I’ve never used Linux Mint. This is pretty standard Linux stuff, though–you have to have your machine set up to build software, though. Here’s a good link that’s Ubuntu-specific, but should be helpful:

  • Sorry for the delay;

    I think the best way to describe the issue would be to relate the post I made on Ubuntuforums:

    Specifically in relation to the make process to manually update ndiswrapper, though, here’s the error:

    jason@boo /usr/src/ndiswrapper-1.58rc1 $ sudo make
    make -C utils
    make[1]: Entering directory `/usr/src/ndiswrapper-1.58rc1/utils’
    make[1]: Nothing to be done for `all’.
    make[1]: Leaving directory `/usr/src/ndiswrapper-1.58rc1/utils’
    make -C driver
    make[1]: Entering directory `/usr/src/ndiswrapper-1.58rc1/driver’
    Makefile:36: *** Cannot find kernel version in /lib/modules/3.2.0-32-generic/build, is it configured?. Stop.
    make[1]: Leaving directory `/usr/src/ndiswrapper-1.58rc1/driver’
    make: *** [driver] Error 2
    jason@boo /usr/src/ndiswrapper-1.58rc1 $

    • From the error, it appears that you don’t have the kernel headers installed. See this link: — see the lone answer on that page. Make sense?

      • Ah, makes sense.

        And I think that response is correct; it appears that ndiswrapped IS already installed (Mint is pretty simply just Ubuntu), it’s just the wrong version. Removing it via apt-get and reinstalling it, though, just puts the same old version back.

        I’m installing the linux kernel headers now, and I’ll retry my make per the instructions after that and let you know. Thanks for the help!

        • Success!

          The only issue now is it says “Bad password” for every network (WPA2 Enterprise and just WPA2) I try to connect to, which is odd.

          Here’s a tail of /var/log/syslog:

          Oct 31 10:16:56 boo NetworkManager[795]: Activation (wlan0) Stage 1 of 5 (Device Prepare) complete.
          Oct 31 10:16:56 boo NetworkManager[795]: Activation (wlan0) Stage 2 of 5 (Device Configure) starting…
          Oct 31 10:16:56 boo NetworkManager[795]: (wlan0): device state change: prepare -> config (reason ‘none’) [40 50 0]
          Oct 31 10:16:56 boo NetworkManager[795]: Activation (wlan0/wireless): connection ‘GUEST-PPTC’ has security, and secrets exist. No new secrets needed.
          Oct 31 10:16:56 boo NetworkManager[795]: Config: added ‘ssid’ value ‘GUEST-PPTC’
          Oct 31 10:16:56 boo NetworkManager[795]: Config: added ‘scan_ssid’ value ‘1’
          Oct 31 10:16:56 boo NetworkManager[795]: Config: added ‘key_mgmt’ value ‘WPA-PSK’
          Oct 31 10:16:56 boo NetworkManager[795]: Config: added ‘psk’ value ”
          Oct 31 10:16:56 boo NetworkManager[795]: Activation (wlan0) Stage 2 of 5 (Device Configure) complete.
          Oct 31 10:16:56 boo NetworkManager[795]: Config: set interface ap_scan to 1
          Oct 31 10:16:56 boo NetworkManager[795]: (wlan0): supplicant interface state: disconnected -> scanning
          Oct 31 10:17:01 boo CRON[5103]: (root) CMD ( cd / && run-parts –report /etc/cron.hourly)
          Oct 31 10:17:01 boo wpa_supplicant[4803]: Trying to associate with d8:24:bd:4f:25:02 (SSID=’GUEST-PPTC’ freq=2412 MHz)
          Oct 31 10:17:01 boo kernel: [ 2071.583787] ndiswrapper (iw_set_freq:437): setting configuration failed (00010003)
          Oct 31 10:17:01 boo NetworkManager[795]: (wlan0): supplicant interface state: scanning -> associating
          Oct 31 10:17:11 boo wpa_supplicant[4803]: Authentication with d8:24:bd:4f:25:02 timed out.
          Oct 31 10:17:11 boo NetworkManager[795]: (wlan0): supplicant interface state: associating -> scanning
          Oct 31 10:17:16 boo wpa_supplicant[4803]: Trying to associate with d8:24:bd:4f:22:02 (SSID=’GUEST-PPTC’ freq=2462 MHz)
          Oct 31 10:17:16 boo kernel: [ 2086.607032] ndiswrapper (iw_set_freq:437): setting configuration failed (00010003)

          • Jason,

            I’m having the same problem. I can connect to open wireless networks but not a network with WPA security. I haven’t compiled ndiswrapper from scratch because it comes with Linux Mint and seems to work well enough.
            Does anyone know if compiling from scratch will help with my WPA problem?

  • I don’t see how the WPA key is inputted and it’s failing on Authentication. I know with the older setups the key has to be entered in hex, it won’t take ASCII (so 41 instead of A).

  • You can take care of the failed module compliation by installing this little package: ndiswrapper-dkms along with sudo apt-get install ndisgtk. That does the job too.

  • one silly quetsion… where do I find the *.inf file?

    • BTW I’m trying to install the Linksys N600 (AE250) in the 13.04 Ubuntu release

      • Its in your driver. Hope that helps

  • hey, i used this tutorial and installed the driver but when i try to actually connect to the wifi, it doesnt connect. it just loops to where it asks me for ‘authentification’ help?

  • i dont think the windows xp driver is capable of connecting to WPA… windows xp did not have a way of connecting to WPA without some sort of patch that was included in SP3 i believe.

  • I have the Ae2500 and I am running Kali Linux. I tried to follow the prior instructions but go nowhere. I did download the xp driver and ndiswrapper 1.59. These are unzipped and in folders on my desktop. I am somewhat new to Linux so please don’t assume I know anything. Windows pro/linux newbie

    • bro i also use kali nd i have ae2500 and i try all the possible method but i dont get susses but when i try any other Linux based system it work properly but in kali it all-ways show error

  • If anyone is having issues with this on a newer version of linux try installing this version of ndiswrapper I had issues with ndiswrapper not liking my kernel installed this and it worked first time. I use the 3.17.1 ubuntu kernel.

  • So I just bought an linksys ae2500 for a dell studio 540 with linux mint 17.1 on it. Im still learning much about how to do things on linux, and I like to work in terminal.

    My question is, from start to finish how do I compile the ndiswrapper for my Mint Machine? Please assume that I know very little and some common knowledge will go right over my head.

  • Can someone post just the driver instead of all this compile stuff?

Leave a comment


I'm Rob Warner, and I'm a software developer. I live in Jacksonville, Florida, and work for Availity, LLC. The postings on this site are my own and do not necessarily reflect the views of Availity.