АТ интерфейс блокирован по мьютэкса во время первичной настройки модема, добавлена настройка стандарта потдерживаемых стандартов связи сразу после базовых настроек модема

This commit is contained in:
parent 26793c7390
commit d65b3dc051
2 changed files with 31 additions and 1 deletions

View File

@ -4,6 +4,7 @@
#include "MainModesArbiter_Private.h"
#include "FirmwareMetadataSection.h"
#include "AtGsmTelitLe910_DefinePdpContext.h"
#define LOG_SIGN "Главн. Вкл"
#define LOGGER &env->slog.logger
@ -475,12 +476,39 @@ void Mma_InitStage(tMma *env) {
while (!GsmWithGnssWaitStartup(&env->gsmWithGnss)) {
Mma_SetMode(env, DEVICE_MODE_ERROR_GSM);
}
Gsm_WaitGsmBoot(&env->gsmWithGnss);
Mma_SetMode(env, DEVICE_MODE_UVEOS_ERA_GNSS_READY);
if (osMutexAcquire(env->gsmWithGnss.gsmAt.access, 5000) == osOK) {
AtGsmTelitLe910_SimProfileSelect(&env->gsmWithGnss.gsmAt,
&env->storage.nvm.deviceTeledataStorageData.telematica.EGTS_PROFILE_SIM_ERA);
osMutexRelease(env->gsmWithGnss.gsmAt.access);
} else {
LoggerInfoStatic(LOGGER, LOG_SIGN, "Ошибка доступа AtGsmTelitLe910_SimProfileSelect")
}
if (osMutexAcquire(env->gsmWithGnss.gsmAt.access, 5000) == osOK) {
AtGsmTelitLe910_SIMCardNoDetect(&env->gsmWithGnss.gsmAt);
AtGsmTelitLe910_SIMCardDetect(&env->gsmWithGnss.gsmAt);
osMutexRelease(env->gsmWithGnss.gsmAt.access);
} else {
LoggerInfoStatic(LOGGER, LOG_SIGN, "Ошибка доступа AtGsmTelitLe910_SIMCardNoDetect AtGsmTelitLe910_SIMCardDetect")
}
if (osMutexAcquire(env->gsmWithGnss.gsmAt.access, 5000) == osOK) {
Mma_EcallPrepare(env);
osMutexRelease(env->gsmWithGnss.gsmAt.access);
} else {
LoggerInfoStatic(LOGGER, LOG_SIGN, "Ошибка доступа AtGsmTelitLe910_SimProfileSelect")
}
Mma_GetCCID(env);
Mma_GetCGSN(env);
SystemDelayMs(200);
Mma_SetMode(env, DEVICE_MODE_UVEOS_ERA_GNSS_READY);
LoggerInfoStatic(LOGGER, LOG_SIGN, "Инициализируем звуковую подсистему(кодек,усилитель)")
Mma_StartupAudioSubsystem(env);

View File

@ -10,6 +10,8 @@
#define Mma_SetMode(ENV, VALUE) UserIndication_SetMode(&((ENV)->indication),(VALUE))
void Mma_EcallPrepare(tMma *env);
void Mma_ColorBip(tMma *env);
void Mma_FatalErrorOnInit(tMma *env, bool noinit, eDeviceModes errState);