добавлена процедура настройки модема перед вызовом, с последовательностью

GERAN - это сокращение от GSM EDGE Сеть радиодоступа. Стандарты для GERAN поддерживаются 3GPP
===================
UTRAN (UMTS Terrestrial radio access network) – наземная сеть радиодоступа стандарта UMTS
===================
E-UTRAN которая обеспечивают протоколы пользователя (PDCP/RLC/MAC/PHY) и управления (RRC)
===================
затем установка режима еколОнли, затем включение регистрацуии во всех доступных сетях, и ожидание, пока кто то из операторов не предоставит регистрацию
This commit is contained in:
parent 7977082045
commit 87c5e6d0e1
1 changed files with 18 additions and 3 deletions

View File

@ -239,6 +239,18 @@ static void Mma_NetworkAndAudioRelease(tMma *env) {
while (t > SystemGetMs()) {}
}
void Mma_EcallPrepare(tMma *env) {
AtGsm_OperatorSelectionDeregister(&env->gsmWithGnss.gsmAt);
SystemDelayMs(1000);
GsmWithGnss_SelectStandartNetwork(&env->gsmWithGnss.gsmAt, 12);
SystemDelayMs(3000);
GsmWithGnss_SelectStandartNetwork(&env->gsmWithGnss.gsmAt, 22);
SystemDelayMs(3000);
GsmWithGnss_SelectStandartNetwork(&env->gsmWithGnss.gsmAt, 25);
SystemDelayMs(3000);
AtGsmTelitLe910_GnssEcallOnlyMode(&env->gsmWithGnss.gsmAt,0);
}
void Mma_EcallManual(tMma *env) {
EraGlonassUveos_SetTimings(&env->uveos);
Mma_SetMode(env, DEVICE_MODE_UVEOS_CALL_INITIATE);
@ -259,7 +271,8 @@ void Mma_EcallManualKZ(tMma *env) {
EraGlonassUveos_SetTimings(&env->uveos);
Mma_SetMode(env, DEVICE_MODE_UVEOS_CALL_INITIATE);
Mma_NetworkAndAudioRequireKz(env);
GsmWithGnss_NetworkEnableInnaterups(&env->gsmWithGnss, 5,160000);
Mma_EcallPrepare(env);
GsmWithGnss_NetworkEnableInnaterups(&env->gsmWithGnss, 5,200000);
GpioPinEnable(&env->power.pins->main.ecall);
env->uveos.currentMsd->msd.MSD_Data.msgId = 1;
EraGlonassUveos_ManualEmergencyCall(&env->uveos, true);
@ -304,11 +317,13 @@ void Mma_gnssUpdate(tMma *env, eDeviceModes *deviceModes) {
}
void Mma_EcallAutomatic(tMma *env, tUveosEmergencyEvent emergencyEvent) {
EraGlonassUveos_SetTimings(&env->uveos);
Pwm_AudioEnable(&env->power);
Mma_SetMode(env, DEVICE_MODE_UVEOS_CALL_INITIATE);
GsmWithGnss_NetworkEnableInnaterups(&env->gsmWithGnss, 5,120000);
Mma_EcallPrepare(env);
GsmWithGnss_NetworkEnableInnaterups(&env->gsmWithGnss, 5,200000);
Mma_NetworkAndAudioRequireKz(env);
GpioPinEnable(&env->power.pins->main.ecall);
@ -675,7 +690,7 @@ static _Noreturn void Mma_Thread(tMma *env) {
#endif
LoggerInfoStatic(LOGGER, LOG_SIGN, "Нажата кнопка экстренного вызова_1")
Mma_EcallManual(env);
Mma_EcallManualKZ(env);
}
UserButtons_Clear(&env->userInput.buttonsInterface);
}