GET /api/debug/settings/
Pobiera stan obu banków ustawień trwałych niezależnie od źródła bieżących ustawień używanych w czasie pracy.
Uwierzytelnianie: Bearer (powerUser).
Tryb diagnostyczny nie jest wymagany. W tym trybie niejawne uprawnienia powerUser umożliwiają sprawdzanie banków bez tokena Bearer.
Odpowiedź 200
Dział zatytułowany „Odpowiedź 200”{ "runtimeSource": "builtIn", "bootBank": 2, "banks": [ { "bank": 1, "valid": false }, { "bank": 2, "valid": true, "sequence": 15, "isDefault": true, "savedAt": "2026-09-18T10:05:00Z", "dataLength": 512, "dataCrc32": "87654321", "headerCrc32": "10fedcba" } ]}Pola odpowiedzi
Dział zatytułowany „Pola odpowiedzi”| Pole | Typ | Opis |
|---|---|---|
runtimeSource | ciąg znaków | Źródło bieżących ustawień używanych w czasie pracy: builtIn, bank1 albo bank2 |
bootBank | liczba | null | Bank wybrany podczas zwykłego rozruchu: 1, 2 albo null, jeśli oba banki są nieprawidłowe |
banks | tablica | Stan dwóch fizycznych banków ustawień |
banks[].bank | liczba | Numer banku: 1 albo 2 |
banks[].valid | wartość logiczna | Wynik pełnej weryfikacji nagłówka, wersji oprogramowania układowego, długości i CRC danych |
banks[].sequence | liczba | Numer sekwencji rekordu; obecny tylko dla prawidłowego banku |
banks[].isDefault | wartość logiczna | Określa, czy dane odpowiadają obowiązującym ustawieniom fabrycznym; obecne tylko dla prawidłowego banku |
banks[].savedAt | ciąg znaków | null | Czas zapisu w formacie ISO 8601 UTC; obecny tylko dla prawidłowego banku |
banks[].dataLength | liczba | Długość danych użytkowych; obecna tylko dla prawidłowego banku |
banks[].dataCrc32 | ciąg znaków | Suma kontrolna CRC32 danych użytkowych zapisana jako osiem znaków szesnastkowych; obecna tylko dla prawidłowego banku |
banks[].headerCrc32 | ciąg znaków | Suma kontrolna CRC32 nagłówka zapisana jako osiem znaków szesnastkowych; obecna tylko dla prawidłowego banku |
Wartości runtimeSource i bootBank mogą się różnić. Na przykład w trybie diagnostycznym środowisko wykonawcze używa builtIn, natomiast zwykły rozruch wybiera najnowszy prawidłowy bank pamięci flash.
Jeśli oba banki są prawidłowe, bootBank wskazuje bank z nowszą wartością sequence, z uwzględnieniem zawinięcia uint32_t. Jeśli wartości sequence są równe, wybierany jest bank 1.
Pola nagłówka nie są zwracane dla nieprawidłowego banku, ponieważ ich wartości nie są uznawane za wiarygodne.
Walidacja ustawień fabrycznych
Dział zatytułowany „Walidacja ustawień fabrycznych”Zapisane ustawienia są uznawane za fabryczne, jeśli bootBank nie jest null, a wskazany bank ma valid: true i isDefault: true. Drugi, starszy bank może zawierać ustawienia niestandardowe i nie wpływa na wynik.