diff --git a/src/FactSystem/ParameterManager.cc b/src/FactSystem/ParameterManager.cc index 3ad3112ecc6bc99acc1629349d2fd288a67e00ce..0f1c5d83eec6c00f38631d33196e3752198c88e5 100644 --- a/src/FactSystem/ParameterManager.cc +++ b/src/FactSystem/ParameterManager.cc @@ -219,7 +219,13 @@ void ParameterManager::_parameterUpdate(int vehicleId, int componentId, QString _waitingParamTimeoutTimer.start(); qCDebug(ParameterManagerVerbose1Log) << _logVehiclePrefix() << "Restarting _waitingParamTimeoutTimer: totalWaitingParamCount:" << totalWaitingParamCount; } else { - qCDebug(ParameterManagerVerbose1Log) << _logVehiclePrefix() << "Not restarting _waitingParamTimeoutTimer (all requests satisfied)"; + if (!_mapParameterName2Variant.contains(_vehicle->defaultComponentId())) { + // Still waiting for parameters from default component + qCDebug(ParameterManagerLog) << _logVehiclePrefix() << "Restarting _waitingParamTimeoutTimer (still waiting for default component params)"; + _waitingParamTimeoutTimer.start(); + } else { + qCDebug(ParameterManagerVerbose1Log) << _logVehiclePrefix() << "Not restarting _waitingParamTimeoutTimer (all requests satisfied)"; + } } // Update progress bar for waiting reads @@ -949,6 +955,11 @@ void ParameterManager::_checkInitialLoadComplete(void) } } + if (!_mapParameterName2Variant.contains(_vehicle->defaultComponentId())) { + // No default component params yet, not done yet + return; + } + // We aren't waiting for any more initial parameter updates, initial parameter loading is complete _initialLoadComplete = true;