I removed my last comment because it was totally misleading.
Let's see if I got it right now:
There are at least three variants of the STC15:
- STC15Lxxx - supply voltage of 2.4 to 3.6
- STC15Fxxx - supply voltage of 3.8 to 5.5
- STC15Wxxx - supply voltage of 2.5 to 5.5
U4 is powered by the battery (via
D3) as long as the 78L05 is not up yet - right? Therefore, U4 is powered by 3.5-4.0V (3.7-4.2V minus voltage drop at D3) at startup.
The point is, 4.0V is too high for the STC15Lxxx and 3.5V is too low for the STC15FxxxU4 is then enabling the step-up (U5, SD6271) at start-up, which powers, among others, the 78L05.
Now, since the 78L05 is up, the voltage at U4 is now 4.8V (5V - 0.2V
D0 drop) - which is even higher and therefore much too high for the STC15
Lxxx.
The only one which does really fit both phases is the STC15
Wxxx.
Removing D0 is not really a clean solution since then the I/O ports are at another level as the ATmega is.