Relentless Coding

A Developer’s Blog

Convert Cisco Lightweight AP to Autonomous

If you have a Cisco AP that has CAP in the model, you have a so-called lightweight AP that is supposed to be controlled by a wireless controller (WLC). I was able to convert my AIR-CAP2602E-E-K9 to autonomous mode by loading different firmware. This post discusses how to do that.

A show version indicated that I had ap3g2-k9w8-* running – a CAP image. I needed to download a ap3g-k9w7-* (notice the 7 instead of 8) image and get it on the AP.

Instructions:

First, start a TFTP server on the same LAN the AP lives on and serve the desired firmware image. Then, remove power from lightweight AP. Now, press and hold the mode button. Finally, apply power and wait 25 seconds until the status light on the front turns to solid red. If you only see green, you did not push the mode button correctly. (If you just want to reset the configuration to factory defaults, wait until you are in recovery mode and type, delete flash:config.txt.bak and then reset.)

The console confirms how long you pressed the button:

button is pressed, wait for button to be released...
button pressed for 24 seconds

The AP will now try to download tftp://255.255.255.255/ap3g2-k9w7-tar.default. I was, however, unable to see that IP broadcast in tcpdump on my Linux machine, and so the connection attempt timed out. I was then shuttled into recovery mode. Here, I first made sure the things I need were loaded, such as an Ethernet connection, the flash file system and TFTP.

ap: ether_init
ap: flash_init
ap: tftp_init

Then, I set my IP address and subnet mask. If you connect to the AP via a switch, they need to be on the same VLAN/network as the TFTP server. My TFTP server answered to 10.0.0.2.

ap: set IP_ADDR 10.0.0.1
ap: set SUBMASK 255.255.255.0

Now, we can download and extract the image in one go:

ap: tar -xtract tftp://10.0.0.2/ap3g2-k9w7-tar.153-3.JF10.tar flash:

If there is not enough space, format flash: first, after you have made sure you have a backup of the original firmware image.

Finally, let’s set the boot image and reboot:

ap: set boot flash:ap3g2-k9w7-mx.153-3.JF10/ap3g2-k9w7-mx.153-3.JF10
ap: boot