From 87c5e6d0e12c1cc7df1efbaa0172547eaeff95ef Mon Sep 17 00:00:00 2001 From: korolev Date: Tue, 17 Dec 2024 16:44:14 +0300 Subject: [PATCH] =?UTF-8?q?=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D0=B0=20=D0=BF=D1=80=D0=BE=D1=86=D0=B5=D0=B4=D1=83=D1=80?= =?UTF-8?q?=D0=B0=20=D0=BD=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B9=D0=BA=D0=B8?= =?UTF-8?q?=20=D0=BC=D0=BE=D0=B4=D0=B5=D0=BC=D0=B0=20=D0=BF=D0=B5=D1=80?= =?UTF-8?q?=D0=B5=D0=B4=20=D0=B2=D1=8B=D0=B7=D0=BE=D0=B2=D0=BE=D0=BC,=20?= =?UTF-8?q?=D1=81=20=D0=BF=D0=BE=D1=81=D0=BB=D0=B5=D0=B4=D0=BE=D0=B2=D0=B0?= =?UTF-8?q?=D1=82=D0=B5=D0=BB=D1=8C=D0=BD=D0=BE=D1=81=D1=82=D1=8C=D1=8E=20?= =?UTF-8?q?GERAN=20-=20=D1=8D=D1=82=D0=BE=20=D1=81=D0=BE=D0=BA=D1=80=D0=B0?= =?UTF-8?q?=D1=89=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=BE=D1=82=20GSM=20EDGE=20?= =?UTF-8?q?=D0=A1=D0=B5=D1=82=D1=8C=20=D1=80=D0=B0=D0=B4=D0=B8=D0=BE=D0=B4?= =?UTF-8?q?=D0=BE=D1=81=D1=82=D1=83=D0=BF=D0=B0.=20=D0=A1=D1=82=D0=B0?= =?UTF-8?q?=D0=BD=D0=B4=D0=B0=D1=80=D1=82=D1=8B=20=D0=B4=D0=BB=D1=8F=20GER?= =?UTF-8?q?AN=20=D0=BF=D0=BE=D0=B4=D0=B4=D0=B5=D1=80=D0=B6=D0=B8=D0=B2?= =?UTF-8?q?=D0=B0=D1=8E=D1=82=D1=81=D1=8F=203GPP=20=3D=3D=3D=3D=3D=3D=3D?= =?UTF-8?q?=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=20UTRAN=20(UMTS=20Terrestr?= =?UTF-8?q?ial=20radio=20access=20network)=20=E2=80=93=20=D0=BD=D0=B0?= =?UTF-8?q?=D0=B7=D0=B5=D0=BC=D0=BD=D0=B0=D1=8F=20=D1=81=D0=B5=D1=82=D1=8C?= =?UTF-8?q?=20=D1=80=D0=B0=D0=B4=D0=B8=D0=BE=D0=B4=D0=BE=D1=81=D1=82=D1=83?= =?UTF-8?q?=D0=BF=D0=B0=20=D1=81=D1=82=D0=B0=D0=BD=D0=B4=D0=B0=D1=80=D1=82?= =?UTF-8?q?=D0=B0=20UMTS=20=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D?= =?UTF-8?q?=3D=3D=3D=3D=20E-UTRAN=20=D0=BA=D0=BE=D1=82=D0=BE=D1=80=D0=B0?= =?UTF-8?q?=D1=8F=20=D0=BE=D0=B1=D0=B5=D1=81=D0=BF=D0=B5=D1=87=D0=B8=D0=B2?= =?UTF-8?q?=D0=B0=D1=8E=D1=82=20=D0=BF=D1=80=D0=BE=D1=82=D0=BE=D0=BA=D0=BE?= =?UTF-8?q?=D0=BB=D1=8B=20=D0=BF=D0=BE=D0=BB=D1=8C=D0=B7=D0=BE=D0=B2=D0=B0?= =?UTF-8?q?=D1=82=D0=B5=D0=BB=D1=8F=20(PDCP/RLC/MAC/PHY)=20=D0=B8=20=D1=83?= =?UTF-8?q?=D0=BF=D1=80=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D0=B8=D1=8F=20(RRC)?= =?UTF-8?q?=20=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=20?= =?UTF-8?q?=D0=B7=D0=B0=D1=82=D0=B5=D0=BC=20=D1=83=D1=81=D1=82=D0=B0=D0=BD?= =?UTF-8?q?=D0=BE=D0=B2=D0=BA=D0=B0=20=D1=80=D0=B5=D0=B6=D0=B8=D0=BC=D0=B0?= =?UTF-8?q?=20=D0=B5=D0=BA=D0=BE=D0=BB=D0=9E=D0=BD=D0=BB=D0=B8,=20=D0=B7?= =?UTF-8?q?=D0=B0=D1=82=D0=B5=D0=BC=20=D0=B2=D0=BA=D0=BB=D1=8E=D1=87=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D0=B5=20=D1=80=D0=B5=D0=B3=D0=B8=D1=81=D1=82=D1=80?= =?UTF-8?q?=D0=B0=D1=86=D1=83=D0=B8=D0=B8=20=D0=B2=D0=BE=20=D0=B2=D1=81?= =?UTF-8?q?=D0=B5=D1=85=20=D0=B4=D0=BE=D1=81=D1=82=D1=83=D0=BF=D0=BD=D1=8B?= =?UTF-8?q?=D1=85=20=D1=81=D0=B5=D1=82=D1=8F=D1=85,=20=D0=B8=20=D0=BE?= =?UTF-8?q?=D0=B6=D0=B8=D0=B4=D0=B0=D0=BD=D0=B8=D0=B5,=20=D0=BF=D0=BE?= =?UTF-8?q?=D0=BA=D0=B0=20=D0=BA=D1=82=D0=BE=20=D1=82=D0=BE=20=D0=B8=D0=B7?= =?UTF-8?q?=20=D0=BE=D0=BF=D0=B5=D1=80=D0=B0=D1=82=D0=BE=D1=80=D0=BE=D0=B2?= =?UTF-8?q?=20=D0=BD=D0=B5=20=D0=BF=D1=80=D0=B5=D0=B4=D0=BE=D1=81=D1=82?= =?UTF-8?q?=D0=B0=D0=B2=D0=B8=D1=82=20=D1=80=D0=B5=D0=B3=D0=B8=D1=81=D1=82?= =?UTF-8?q?=D1=80=D0=B0=D1=86=D0=B8=D1=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- MainModesArbiter.c | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/MainModesArbiter.c b/MainModesArbiter.c index ac198b9..326cf76 100644 --- a/MainModesArbiter.c +++ b/MainModesArbiter.c @@ -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); }