AVL Time State
sequenceDiagram
participant SystemTime
participant LastValidPosition
participant RTC
participant GNSS
participant UserTime
LastValidPosition ->> SystemTime: load last valid time and timestamp not older then build date
RTC ->> SystemTime: load RTC time if time valid flag and timestamp not older then build date
GNSS ->> SystemTime: load GNSS time if time and date valid and timestamp not older then build date
GNSS ->> RTC: set RTC time if time and date valid and timestamp not older then build date
UserTime ->> SystemTime: set Time via $PFAL,Sys.SetTime,dd.mm.yy,hh:mm:ss
UserTime ->> RTC: set Time via $PFAL,Sys.SetTime,dd.mm.yy,hh:mm:ss
SystemTime ->> LastValidPosition: save last Valid pos and time $PFAL,GPS.Nav.SaveLastValid