diff --git a/MainModesArbiter.c b/MainModesArbiter.c index e50d7c8..b173466 100644 --- a/MainModesArbiter.c +++ b/MainModesArbiter.c @@ -316,12 +316,15 @@ static _Noreturn void Mma_Thread(tMma *env) { env->pwms->pwmFrontIo.run(env->pwms->pwmFrontIo.env); - SystemDelayMs(10); - LoadDataInFromModel(env); ModelTask_StartThread(&env->ModelTask); + while (!env->ModelTask.isRunning) { + LoggerInfoStatic(LOGGER, LOG_TASK_ARB, "Waiting for the model to run...") + SystemDelayMs(1); + } + LoggerInfoStatic(LOGGER, LOG_TASK_ARB, "Model running...") /* for (;;) { uint16_t len = SerialPortReceive(&env->serialPorts->SerialPortLog_IO, dataR, 1024, 1000); @@ -440,9 +443,9 @@ static _Noreturn void Mma_Thread(tMma *env) { LoadDataInFromModel(env); - SystemDelayMs(50); + SystemDelayMs(25); GpioPinToggle(&env->gpios->led.LED_G); - SystemDelayMs(50); + SystemDelayMs(25); /* if (RGM_SRS_WAKEUP_MASK == (RGM->SRS & RGM_SRS_WAKEUP_MASK)) { } else {