Hover thrust estimation

Hi everyone, I’ve noticed that the hover_thrust is always between o and 1.
I think this is done in order to use the same control architecture for different vehicle and differen rotor.

In particular as expected having the same drone with the same mass but changing the maximum PWM value this hover thrust value changes.

The thing that is not clear to me is where and how this happens in the Firmware, i mean where the maximum PWM value are considered and the hover _thrust estimate is scaled accordingly?

Thanks for any help