There are many users who has problem with aod stucked in 120 hz. I am using mi11 ultra, so my research is limited to this device.
The best part is that I have contact with two people who get 30hz once the phone goes to aod. I analyzed their system and secure tables (setedit app), as well as I was in touch with the developer of GalaxyMaxHz app- still I am not able to figure out how is possible that some phones works in 30 hz in aod but some others not. I could not find any difference between their tables and mine.
Also, by writing "adb shell dumpsys display" I am getting info about supported refresh rates. I analyzed mine as well as one guy who is getting 30hz in aod- there is no information in this log about supporting 30hz. There is only info about 60, 90 and 120 hz, but nothing about 30hz. Strange, how info about the display doesn't mention anything about supporting 30hz where at the same time aod can force the screen to work in 30 hz??!!
I searched the entire internet for some information about some possible setting missing in some of the tables in setedit, whatever which could give me some sign what could be responsible for controlling the refresh rate of aod... I even tried to create my own setting in system table called aod_refresh_rate and always_on_display_refresh_rate, but there is 0 effect. Deleting the data of aod app, turning on battery powersaving mode, even forcing the entire system to work in 60 hz doesn't do anything because as soon as aod activates screen works in 120 hz which is ridiculous.
Perhaps the developers of xiaomi.eu could give me some clue what to do and where to search? I found one post of one of the developer who mentioned that they are not touching the refresh rates settings, but maybe you have a knowledge what could help to solve this issue?