Merge remote-tracking branch 'origin/develop' into improve_duallane_fdir
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
All checks were successful
EIVE/eive-obsw/pipeline/pr-develop This commit looks good
This commit is contained in:
commit
c83afa4e10
@ -16,6 +16,12 @@ will consitute of a breaking change warranting a new major release:
|
||||
|
||||
# [unreleased]
|
||||
|
||||
## Fixed
|
||||
|
||||
- Proper Faulty/External Control handling for the dual lane assemblies.
|
||||
- ACS board devices: Go to ON mode instead of going to NORMAL mode directly.
|
||||
- SUS device handlers: Go to ON mode on startup instead of NORMAL mode.
|
||||
|
||||
## Changed
|
||||
|
||||
- Enabled periodic hosuekeeping generation for release images.
|
||||
|
@ -28,11 +28,7 @@ void GyrAdis1650XHandler::doStartUp() {
|
||||
}
|
||||
if (breakCountdown.hasTimedOut()) {
|
||||
updatePeriodicReply(true, adis1650x::REPLY);
|
||||
if (goToNormalMode) {
|
||||
setMode(MODE_NORMAL);
|
||||
} else {
|
||||
setMode(MODE_ON);
|
||||
}
|
||||
internalState = InternalState::NONE;
|
||||
}
|
||||
}
|
||||
@ -208,8 +204,6 @@ adis1650x::BurstModes GyrAdis1650XHandler::getBurstMode() {
|
||||
return adis1650x::burstModeFromMscCtrl(currentCtrlReg);
|
||||
}
|
||||
|
||||
void GyrAdis1650XHandler::setToGoToNormalModeImmediately() { goToNormalMode = true; }
|
||||
|
||||
void GyrAdis1650XHandler::enablePeriodicPrintouts(bool enable, uint8_t divider) {
|
||||
periodicPrintout = enable;
|
||||
debugDivider.setDivider(divider);
|
||||
|
@ -21,7 +21,6 @@ class GyrAdis1650XHandler : public DeviceHandlerBase {
|
||||
adis1650x::Type type);
|
||||
|
||||
void enablePeriodicPrintouts(bool enable, uint8_t divider);
|
||||
void setToGoToNormalModeImmediately();
|
||||
|
||||
// DeviceHandlerBase abstract function implementation
|
||||
void doStartUp() override;
|
||||
@ -47,7 +46,6 @@ class GyrAdis1650XHandler : public DeviceHandlerBase {
|
||||
AdisGyroConfigDataset configDataset;
|
||||
double sensitivity = adis1650x::SENSITIVITY_UNSET;
|
||||
|
||||
bool goToNormalMode = false;
|
||||
bool warningSwitch = true;
|
||||
|
||||
enum class InternalState { NONE, STARTUP, SHUTDOWN };
|
||||
|
@ -23,11 +23,7 @@ void GyrL3gCustomHandler::doStartUp() {
|
||||
|
||||
if (internalState == InternalState::STARTUP) {
|
||||
if (commandExecuted) {
|
||||
if (goNormalModeImmediately) {
|
||||
setMode(MODE_NORMAL);
|
||||
} else {
|
||||
setMode(_MODE_TO_ON);
|
||||
}
|
||||
setMode(MODE_ON);
|
||||
internalState = InternalState::NONE;
|
||||
commandExecuted = false;
|
||||
}
|
||||
@ -145,8 +141,6 @@ uint32_t GyrL3gCustomHandler::getTransitionDelayMs(Mode_t from, Mode_t to) {
|
||||
return this->transitionDelayMs;
|
||||
}
|
||||
|
||||
void GyrL3gCustomHandler::setToGoToNormalMode(bool enable) { this->goNormalModeImmediately = true; }
|
||||
|
||||
ReturnValue_t GyrL3gCustomHandler::initializeLocalDataPool(localpool::DataPool &localDataPoolMap,
|
||||
LocalDataPoolManager &poolManager) {
|
||||
localDataPoolMap.emplace(l3gd20h::ANG_VELOC_X, new PoolEntry<float>({0.0}));
|
||||
|
@ -32,11 +32,6 @@ class GyrL3gCustomHandler : public DeviceHandlerBase {
|
||||
*/
|
||||
void setAbsoluteLimits(float limitX, float limitY, float limitZ);
|
||||
|
||||
/**
|
||||
* @brief Configure device handler to go to normal mode immediately
|
||||
*/
|
||||
void setToGoToNormalMode(bool enable);
|
||||
|
||||
protected:
|
||||
/* DeviceHandlerBase overrides */
|
||||
ReturnValue_t buildTransitionDeviceCommand(DeviceCommandId_t *id) override;
|
||||
@ -69,7 +64,6 @@ class GyrL3gCustomHandler : public DeviceHandlerBase {
|
||||
bool commandExecuted = false;
|
||||
|
||||
uint8_t statusReg = 0;
|
||||
bool goNormalModeImmediately = false;
|
||||
|
||||
uint8_t ctrlReg1Value = l3gd20h::CTRL_REG_1_VAL;
|
||||
uint8_t ctrlReg2Value = l3gd20h::CTRL_REG_2_VAL;
|
||||
|
@ -20,7 +20,7 @@ void MgmLis3CustomHandler::doStartUp() {
|
||||
}
|
||||
if (internalState == InternalState::STARTUP) {
|
||||
if (commandExecuted) {
|
||||
setMode(MODE_NORMAL);
|
||||
setMode(MODE_ON);
|
||||
internalState = InternalState::NONE;
|
||||
commandExecuted = false;
|
||||
}
|
||||
|
@ -25,7 +25,7 @@ void MgmRm3100CustomHandler::doStartUp() {
|
||||
if (commandExecuted) {
|
||||
commandExecuted = false;
|
||||
internalState = InternalState::NONE;
|
||||
setMode(MODE_NORMAL);
|
||||
setMode(MODE_ON);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -20,7 +20,7 @@ void SusHandler::doStartUp() {
|
||||
}
|
||||
if (internalState == InternalState::STARTUP) {
|
||||
if (commandExecuted) {
|
||||
setMode(MODE_NORMAL);
|
||||
setMode(MODE_ON);
|
||||
internalState = InternalState::NONE;
|
||||
commandExecuted = false;
|
||||
}
|
||||
|
@ -33,12 +33,8 @@ ReturnValue_t PersistentLogTmStoreTask::performOperation(uint8_t opCode) {
|
||||
stateHandlingForStore(handleOneStore(stores.miscStore, miscStoreContext));
|
||||
if (not someonesBusy) {
|
||||
TaskFactory::delayTask(100);
|
||||
} else /* and graceDelayDuringDumping.hasTimedOut()*/ {
|
||||
if (someFileWasSwapped) {
|
||||
TaskFactory::delayTask(20);
|
||||
}
|
||||
// TaskFactory::delayTask(2);
|
||||
// graceDelayDuringDumping.resetTimer();
|
||||
} else if (someFileWasSwapped) {
|
||||
TaskFactory::delayTask(10);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -18,14 +18,8 @@ ReturnValue_t PersistentSingleTmStoreTask::performOperation(uint8_t opCode) {
|
||||
bool busy = handleOneStore(storeWithQueue, dumpContext);
|
||||
if (not busy) {
|
||||
TaskFactory::delayTask(100);
|
||||
} else {
|
||||
if (fileHasSwapped) {
|
||||
TaskFactory::delayTask(20);
|
||||
}
|
||||
// if (fileHasSwapped and graceDelayDuringDumping.hasTimedOut()) {
|
||||
// TaskFactory::delayTask(2);
|
||||
// graceDelayDuringDumping.resetTimer();
|
||||
// }
|
||||
} else if (fileHasSwapped) {
|
||||
TaskFactory::delayTask(10);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
2
tmtc
2
tmtc
@ -1 +1 @@
|
||||
Subproject commit 333faaa5f70646bfde1101f8e0538505574d1d7e
|
||||
Subproject commit 3f3523465a141bc2a2c36cbc9cbbf6ab7b3a9d70
|
Loading…
Reference in New Issue
Block a user