In the MAX32650 and while configuring the RTC, the ssec register is set to 0 after wakeup. Is this normal?
The RTC itself runs on the 32kHz crystal clock; the CPU runs on the high-speed ring oscillator. There’s a synchronizer between them; when the CPU reads the RTC registers, it’s actually reading a “shadow” register that is periodically updated from the main RTC register set. There’s a bit in the RTC status register (bit 4, “RTC Ready”) that is set when the synchronization step is complete. It’s cleared on any reset; it’s also momentarily cleared whenever hardware is updating the “shadow” registers from the battery-backed RTC registers. Software can also clear this bit, then wait for hardware to update it to make sure software is getting the absolutely latest information from the RTC.