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
{{ message }}
This repository has been archived by the owner on May 20, 2024. It is now read-only.
One useful case of LEDs is to show current state of the robot. Having a function that can be called through the LED subsystem to set the error state of the robot would be nice, as this makes errors more obvious than print statements. Any subsystem that logs an error should use this function.
Maybe have a std::vector of an error type containing an error level (Warning, Critical error) so that the robot can pick the most important error to display if multiple subsystems post errors. This could also include different treatment of errors i.e a high level error will stay registered forever, but a medium error will only stay for 3 seconds.
Error type could look like:
enum ErrorLevel{
ERR_HIGH, // Robot cannot perform basic operations and/or could break itself if left in this state
ERR_MID, // Some functionality is broken, but overall operational
ERR_LOW // Very few features are unavailable, robot is operational
};
structLedError{
ErrorLevel m_errLevel;
};
Note this would require a periodic update of some function.
The text was updated successfully, but these errors were encountered:
One useful case of LEDs is to show current state of the robot. Having a function that can be called through the LED subsystem to set the error state of the robot would be nice, as this makes errors more obvious than print statements. Any subsystem that logs an error should use this function.
std::vector
of an error type containing an error level (Warning, Critical error) so that the robot can pick the most important error to display if multiple subsystems post errors. This could also include different treatment of errors i.e a high level error will stay registered forever, but a medium error will only stay for 3 seconds.Error type could look like:
Note this would require a periodic update of some function.
The text was updated successfully, but these errors were encountered: