Check down tilt angle of Cisco Wireless Wi-Fi 6E or Wi-Fi 7 AP remotely

What if you were able to detect access point’s down tilt angle remotely? Perhaps that would have explained unusual client connectivity issues at a remote site, spot an AP which has been installed incorrectly, or bent AP mounting hardware in a warehouse damaged by a scissor lift.

CW9176D1 mounted at an angle

Problem statement

If you have ever deployed an access point with directional antenna (be it external or inbuilt), you know that orientation matters. Directional antennas focus the energy towards their main lobe. Access points or antennas deployed at incorrect angle mean that coverage is going to be very different from the desired one.

Location-based services and asset tracking accuracy very much depend on AP placement and orientation. What if the AP that was supposed to be mounted on a wall with 30 degree down tilt is actually sat flat on top of a network cabinet pointed towards the sky?

What if the down tilt angle of the AP changed literally overnight while maintenance was going on, and some heavy machinery was present inside your venue?

Solution

Selected Cisco’s Wi-Fi 6E and Wi-Fi 7 APs ship with built-in accelerometer. It detects and reports down tilt angle of each supported AP.

  • Down tilt of 0° represents an AP mounted to the ceiling surface with its LED pointed straight down towards the floor.
0° down tilt angle
  • AP sat flat on a desk with the LED pointed towards the ceiling reports 180°.
180° down tilt angle

Supported AP models

Wi-Fi 6E: CW9166D1
Wi-Fi 7: CW9176I, CW9176D1, CW9178I

Cloud-managed AP by Cisco Meraki Dashboard

There is nothing you need to do on your part to enable this feature. As long as your AP is equipped with the accelerometer, you will see the down tilt angle on the Wireless > Access Points page.

Ceiling mounted CW9176I

It updates quite frequently. I would say every couple of minutes. So, if I remove the AP from its bracket and pop it on my desk, you can see that my desk desperately asks for about 2° of attention 😄

AP on a desk

As of May 2025, the angle is not available via API yet. The product manager confirmed that this was already work in progress, and he asked me to let you know.

AP managed by Catalyst 9800 controller

In Catalyst mode, accelerometer is supported since 17.15.1. By default the sensor is disabled, and no angle is visible in the web UI. We can enable it on a per access point basis.

Either from the controller web UI:

Or by this CLI command – note the “no” keyword:

ap name CW9176 no sensor environment accelerometer shutdown

To verify that accelerometer sensor is now enabled, we use this show command:

show ap sensor status

We then view the angle from the web UI:

And “Show more” provides raw detail:

As of May 2025, there isn’t a CLI command available to display the angle yet. Stay tuned.

Refresh rate of the angle in my case was 15 minutes. Hand on heart, the refresh rate isn’t important. You mount the AP and by the time you get back to your desk, the angle updates. I was just curious. Just picture me refreshing the AP 360 View page for 15 minutes. Real story 😊

For reference

Nicholas Swiatecki presented on this very subject at the Mobility Field Day. Watch his session.

Kjetil Teigen Hansen built a nice Grafana dashboard that represents the angle visually.

Published by

Jiri Brejcha

Jiri is passionate about mobility ranging from Wi-Fi to folding bikes;-) He is a Wi-Fi Technical Solutions Architect at Cisco UK, proud member of the Cisco Live Network Operations Center deployment team, and WLAN Pi development team. If he is not working, he is most likely riding his Brompton bike. All opinions are my own, not Cisco's.

One thought on “Check down tilt angle of Cisco Wireless Wi-Fi 6E or Wi-Fi 7 AP remotely”

  1. This CLI command should display the tilt angle :
    -> show platform software process database wncd 0 chassis activ R0 details WNCD_DB “table tbl_ap_accelerometer”

    Let me know if it helps ! Thanks for your article, really great !!

    Below the example output of the CLI command :

    -> Database: WNCD_DB – Table: table tbl_ap_accelerometer – Num Recs: 1
    Records
    ——————————————————————————————————-
    405 record@tbl_ap_accelerometer: {
    st_ap_accelerometer@st_ap_accelerometer: {
    ap_mac@tdl_mac_addr: {
    mac[0]@U8:240
    mac[1]@U8:216
    mac[2]@U8:5
    mac[3]@U8:174
    mac[4]@U8:29
    mac[5]@U8:96
    }
    last_update@calendar_time: {
    second@I64:1744105913
    microsec@U32:460972
    }
    x_coord@I16:20
    y_coord@I16:0
    z_coord@I16:1004
    tilt_angle@I16:179 <- HERE :)
    }
    }

Leave a Reply

Your email address will not be published. Required fields are marked *