timer and location listener