Work notes for configuring Cisco Wireless APs. Common checks and image load steps.

Check IP and CAPWAP join state

show capwap ip config
show capwap client config

Common join blockers:

  • Bad time/NTP (check controller time or allow time sync on CAPWAP)
  • DHCP Option 43 missing (add controller IP via DHCP or statically set below)
  • Stale controller list (clear it and set manually)

Set static controller(s):

capwap ap controller ip address <WLC-IP-1>
capwap ap controller ip address <WLC-IP-2>  # optional
capwap ap hostname <AP-NAME>                # set a friendly hostname

Clear old controller info:

clear capwap private-config

Load firmware from TFTP (ROMMON-style)

ap: set IP_ADDR 10.1.128.120
ap: set NETMASK 255.255.255.0
ap: set DEFAULT_ROUTER 10.1.128.1
ap: set TFTP_SERVER 10.1.250.46
ap: set TFTP_FILE ap3g2-k9w8-tar.default

ap: tftp_init
ap: ether_init
ap: flash_init
ap: tar -xtract tftp://10.1.250.46/ap3g2-k9w8-tar.default flash:
ap: boot

Bootloader environment (alternate)

uboot>> setenv ipaddr 10.1.128.120        # AP IP
uboot>> setenv serverip 10.1.250.46       # TFTP server (your PC)
uboot>> setenv netmask 255.255.255.0
setenv gatewayip 10.1.128.1

uboot>> printenv

uboot>> tftpboot 0x80000000 ap3g3-k9w8-tar.default
uboot>> bootm 0x80000000

From IOS on the AP

archive download-sw /overwrite /force-reload tftp://10.1.250.46/ap3g3-k9w8-tar.default
archive download-sw /overwrite /force-reload tftp://10.1.250.46/AIR-AP1830-K9-8-10-196-0.tar

# If you don’t need to force/overwrite:
archive download-sw /reload tftp://10.1.250.46/AIR-AP1830-K9-8-10-196-0.tar

Convert to Lightweight (CAPWAP) from Autonomous

On autonomous IOS (k9w7), point at the recovery/default image:

archive download-sw /force-reload /overwrite tftp://10.1.250.46/ap3g2-k9w8-tar.default

Factory reset / clear config

write erase
delete flash:private-multiple-fs
reload

On some models:

clear capwap private-config
reload

DHCP Option 43 (Cisco controller) quick ref

Option 43 hex for one WLC IP (example 10.1.250.10):
f1:04:0a:01:fa:0a

Multiple controllers: concatenate f1:<len>:<ip1><ip2>... where <len> is total bytes of IP list. Use a DHCP option 43 calculator if unsure.