Hi, we understand your frustration with codes and timing. This may be due to incorrect time settings on your device.
Please enable automatic time setting: Settings→System→Date & Time→Set time automatically. This should ensure codes are generated correctly.
For more details, visit our help article: https://support.google.com/accounts/answer/1066447