You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We have startup checks to see if the SPI peripherals (FRAM, EPS, Flash, and RF) are working. If there is a problem with any of those, except for the RF module, we still want to run our SW. Therefore, we need to check if a peripheral is working before we use it and, in case it isn't, have some fallback implementation that gets executed instead.
Fallback mechanisms for SPI peripherals:
RF: We are pretty much dead, so the only thing we can do is reboot, maybe with a little delay. This is covered by Add SpiSupervisorThread #268.
FRAM: Persistent State and Telemetry Memory is stored in RAM instead. The size of the Telemetry Memory will be drastically reduced to save memory. The sizes of the EDU queue and status history will also be decreased. To implement this, the persistent variables, EDU program queue, EDU program status history, and Telemetry Memory should all have an internal "cache" that is always used to store the data written to the FRAM. If the FRAM fails, the values are then also read from this "cache" instead. Since nothing that builds on top of the FRAM is implemented, yet we can do it right the first time, meaning that this is covered in Add abstraction for storing persistent variables #202, Move EDU program queue to FRAM #203, and Add abstraction for FRAM ring array #323.
Description
We have startup checks to see if the SPI peripherals (FRAM, EPS, Flash, and RF) are working. If there is a problem with any of those, except for the RF module, we still want to run our SW. Therefore, we need to check if a peripheral is working before we use it and, in case it isn't, have some fallback implementation that gets executed instead.
Fallback mechanisms for SPI peripherals:
The text was updated successfully, but these errors were encountered: