Simba-Avionic / Simba-Avionic/srp

mini System plików dla EEPROM

Open
#388 0 comments 0 reactions 1 assignee View on GitHub

@gregority9 is already working on this.

Since Jul 9, 2026.

Dominant language
C++
Stars
1
Forks
3
Avg merge
34m
Merged PRs (30d)
1

Description

User Story:

Posiadamy na naszych płytkach układ EEPROM (24LC32A), w skrócie jest to mała pamięc (32kbit = 4kB) z ograniczoną liczbą zapisów (1mln cykli zapisu i czyszczenia na sektor), nie należy jej dlatego używać do trzymania w niej zmiennych aktualizowanych często, tylko np danych konfiguracyjnych, oraz istotnych zdarzeń (rzadkie)

TODO
  • zaprojektować schemat przechowywania konfiguracji (klucz(np uint16)-wartość(dowolny typ danych))
  • zaprojektować schemat przechowywania logów (proponowane timestamp(int64), code (uint16), value(4B typ zależny od code))
  • przemyśleć jak komputer może automatycznie dedukować czy eeprom jest zainicjalizowany (look at magic bytes), i w jakiej wersji jest zainicjalizowany
  • wymyślić jak powinny działać migracje między wersjami (eventy są stałe ale zmienia się konfiguracja)
  • eventy po przekroczeniu dostępnego miejsca powinny zacząć nadpisywać najstarsze eventy
  • komputer powinien sam inicjalizowac eeprom domyślnymi wartościami
  • system plików powinien zarządzać pinem writeProtection
  • dedykowana aplikacja zarządzająca eepromem (konfiguracja + eventy) oraz udostępniająca jego zmianę i odczyt po IPC, niezainicjalizowany eeprom powinien wykazywać jakiś error na DLT Loggerze
  • dodać metody diagnostyczne umożliwiające usunięcie konfiguracji (erase sekcji flasha), usunięcie logów (erase sekcji flasha)
  • spisać dokumentację rozwiązania na wiki

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.