What makes this work are the strong performances by Dennis Quaid and Jim Caviezel. Quaid brings Frank to life as a warm, open guy. He has no trouble expressing his love for his wife and son, is quick to laugh and quick to care. He's also quick to anger if someone threatens his family. Caviezel's portrayal of John is quite different. He is self-contained and hard to read, even by those who care about him. Wary of commitment, unwilling to risk himself by caring too much, we see him struggle to regain that emotional confidence, letting the changes to the past change him as well.
To sum up, 'Frequency' isn't a perfect movie, and it has some logic problems, but it's a good story and it's heart is in the right place. It has strong performances by all the cast, and is engaging enough to make you forgive its flaws- though I must say that I could really have done without the sentimental Garth Brooks song playing through the final scene. Very distracting. But it's a film definitely worth watching, and would be a great choice for Father's Day.