T03 — RTC, synchronizacja czasu i reguły UTC
Stan początkowy
Wykrycie PCF8523, zapis/odczyt UTC i podtrzymanie CR1220 są już zaliczone.
T03.1 — synchronizacja NTP
- Ustawić RTC około 5 minut za czasem wzorcowym.
- Uruchomić połączenie Wi‑Fi.
- Zachować czas przed synchronizacją, odpowiedź NTP i czas po niej.
- Powtórzyć dla odchyłki małej, jednej godziny i kilku dni.
Zaliczenie: źródło jest uwierzytelnione zgodnie z przyjętą architekturą, aktualizacja jest zapisana w RTC, a kolejne rekordy nie łamią kontraktu czasu.
T03.2 — czas serwera aplikacyjnego
Jeżeli serwer nadaje czas urządzeniu, musi to robić uwierzytelniony endpoint aplikacyjny, nie bezpośrednie połączenie Pico z PostgreSQL.
Zaliczenie: odpowiedź ma jasno określone UTC, jest chroniona mTLS i nie pozwala niezaufanemu klientowi cofać zegara.
T03.3 — cofnięcie i duży skok
Sprawdzić:
- cofnięcie o 10 sekund;
- cofnięcie o godzinę;
- przesunięcie w przyszłość o dzień;
- błędny rok;
- powrót poprawnego źródła.
Zaliczenie: urządzenie stosuje udokumentowaną politykę skoku/korekty, nie nadpisuje historii i sygnalizuje podejrzaną zmianę.
T03.4 — praca offline
Odłączyć sieć na 24 godziny, wykonywać pomiary, następnie przywrócić sieć.
Zaliczenie: measured_at pochodzi z RTC i zachowuje czas pomiaru, a
received_at jest późniejszym czasem nadanym przez bazę.
T03.5 — granice kalendarza
Na obrazie laboratoryjnym przetestować:
- ostatnią minutę miesiąca;
- 31 grudnia → 1 stycznia;
- 28/29 lutego w roku przestępnym;
- odrzucenie niepoprawnego BCD i niemożliwej daty.
T03.6 — bateria
Odczytać flagę niskiego napięcia, wykonać próbę ze sprawną i kontrolnie słabą baterią na stanowisku. Nie zwierać baterii i nie symulować jej rezystorem bez sprawdzenia dopuszczalnego układu PCF8523.