motor.Temperature() does not seem to work correctly for 5.5 W motor

I am calling motor.Temperature() to check temperature of the motors - the 11W motor seems to show 60 after using for a while - the 5.5 W always shows max of 20, even though it feels warm to touch. Any clue what might be going on? Am I doing something wrong?

Just curious, what is the point of measuring motor temperature ?

To prevent motors from potentially overheating.