-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement telemetry memory #179
Comments
I think it would be good if we employed some form of error detection and correction (EDAC) for the telemetry memory. Hamming or Reed–Solomon codes are the first that come to mind, but there are many more options to choose from. |
Also blocked by #207 because we need tests. |
As explained in #294, we need a fallback mechanism in case the FRAM does not work. This means that the Telemetry Memory needs to be cached in RAM (with a smaller size, though). If the FRAM works, records are read from and written to it. Records are also always written to the cache, but only when the FRAM doesn't work are they also read from the cache. |
Blocked by #323 |
Description
The telemetry memory is a ring buffer on the FRAM that stores the telemetry data of the last few weeks. I am not sure about the exact amount of time, but basically we use as much of the FRAM as possible.
The telemetry memory needs to support the following operations:
Store(TelemetryRecord const & telemetryRecord) -> Result<void>
)LoadTelemetryRecord(int index ) -> Result<TelemetryRecord>
)The text was updated successfully, but these errors were encountered: