The Tempdb file location alarm has a criteria of IO Rate as well:
(TempDBFileLocationCheck.count > 0) & (TempDBIORate.IORate > 100)
So it means alarm is only raised when there is meaningful I/O in TempDB and it is on the same location as other DB files. If TempDB is not being used much then it doesn't really matter where it is located and alarm isn't raised.
A few other factors: Alarm only checks for MDF files and there must be multiple disks on the OS.