I’ll speculate and keep this short. Cats sense when you are about to come home because your scent in the home, in the air, has faded to a certain point which is precisely inline with the time you usually come home. In other words your cat can tell the difference in the strength of your scent between the time when you leave home and the time when you normally come home.
Of course, this ability only relates to times when you are away on a routine basis i.e at work. I don’t think a cat will be waiting for you if you pop out for a few hours at the weekend or something like that.
There will probably be other signs such as approaching noises and so on but the key signal could well be your fading scent.
I say this because we know that cats, domestic to wild, mark out their territory by spraying on vertical objects and defecating in certain areas (as well as scratching the ground and objects).
Their scent fades over time and needs to be topped up. An intruder cat will know where the other cat is by “reading the scent” left by the other cat and judging how old it is. We know therefore that cats have the ability to read scent accurately and judge its age – how long it has been there.
People leave their scent all over the house, in the air, on furniture and on clothes. It fades. Scent has a lifespan like any other object but it is finely controlled by age. It is almost like a clock.
Cats are able to read this clock. There is nothing in cat books and research that I know of which states what I have stated although there is research on dogs which makes the same point. I am therefore making a common sense extrapolation because cats have a sense of smell that is very highly tuned although not as good as the dog.
As I stated cats and dogs can add other more immediate sensory signs such as sight and sound when you are coming home. There is also pure routine. Cats join us in our routines and have a decent internal clock.