I think in this thread is the best knowledge about waking up with GPIO3.
I use it with relay NO contacts with another machine, to make Pi3B+ it's slave.
When machine is on, relay is activated and pi is booted. Relay stays on as long as the machine is on. When machine is shut down, relay gets deactivated and python program reads falling edge and shutdown function is called.
This works when i run the cycle in test bench. But on production, when pi shuts itself down and after 10 hours machine is switched on again and the relay closes gpio3 and gnd Nothing happens. No matter what I do, pi is frozen. Only thing that gets it booting is replugging the power cord.
What could cause the gpio3 wake to stop working after hours of being in halt? I couldnt reproduce the error with shorter halt time. I also measured the voltage between gpio3 and gnd, and i got the 3.3v, so it should be high as expected.
Sometimes though when shutting down via script, I have noticed that the halting fails somehow... My lcd screen doesnt go to sleep and backlight is on, nyt only black is shown. Could the problem be on shutdown? I am also using overlayroot filesystem.