Skip to content

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

  1. Ustawić RTC około 5 minut za czasem wzorcowym.
  2. Uruchomić połączenie Wi‑Fi.
  3. Zachować czas przed synchronizacją, odpowiedź NTP i czas po niej.
  4. 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.