le_ecall_interface.h
Go to the documentation of this file.
25 * The Mobile Network Operator handles the eCall like any other 112 call and routes the call to the28 * At the same time, a digital "minimum set of data" (MSD) message is sent over the voice call using54 * - le_ecall_ForceOnlyMode(): this function configures the eCall operation mode to eCall only, only60 * - le_ecall_ForcePersistentOnlyMode(): Same as le_ecall_ForceOnlyMode(), but the change persists69 * - le_ecall_GetConfiguredOperationMode(): this function allows the user to retrieve the configured107 * An application can also call le_ecall_GetTerminationReason() to retrieve the reason of the call109 * le_ecall_GetPlatformSpecificTerminationCode() to get platform specific termination code (refer114 * If another application tries to use the eCall service while a session is already in progress, the115 * le_ecall_StartManual(), le_ecall_StartAutomatic(), le_ecall_StartTest() functions will return a117 * application can follow the session progress with 'state' functions like le_ecall_GetState() and132 * @warning Those functions return a LE_DUPLICATE error when the MSD has been already imported with144 * The prepared MSD must answer the requirements described in the "EN 15722:2013" publication (this145 * publication has been prepared by Technical Committee CEN/TC 278 “Intelligent Transport Systems").150 * @warning The imported MSD overwrites the control flags (automaticActivation and testCall) set by158 * The MSD can be updated before calling le_ecall_SendMsd(), using the e_ecall_ImportMsd() function163 * To perform an emergency call following the ERA-GLONASS requirements, the 'systemStandard' entry176 * - le_ecall_SetEraGlonassAutoDialAttempts(): set the AUTO_DIAL_ATTEMPTS value. If a dial attempt182 * - le_ecall_SetEraGlonassDialDuration(): set the ECALL_DIAL_DURATION time. It is the maximum time269 * In the case of PAN-EUROPEAN, the redial can be performed as many times as desired but should be272 * In the case of ERA-GLONASS, the redial can be performed ECALL_MANUAL_DIAL_ATTEMPTS times within283 * A sample code that implements an eCall test session with a voice call connection can be found in303 * le_ecall_UseUSimNumbers() function can be recalled to indicate the modem to read the number to306 * The NAD (Network Access Device, i.e. the Modem) deregistration time value can be set or get with:317 * After termination of an emergency call the in-vehicle system remains registered on the network395 //--------------------------------------------------------------------------------------------------398 * Connect the current client thread to the service providing this API. Block until the service is401 * For each thread that wants to use this API, either ConnectService or TryConnectService must be402 * called before any other functions in this API. Normally, ConnectService is automatically called407 //--------------------------------------------------------------------------------------------------413 //--------------------------------------------------------------------------------------------------416 * Try to connect the current client thread to the service providing this API. Return with an error419 * For each thread that wants to use this API, either ConnectService or TryConnectService must be420 * called before any other functions in this API. Normally, ConnectService is automatically called427 * - LE_UNAVAILABLE if the server is not currently offering the service to which the client is bound.428 * - LE_NOT_PERMITTED if the client interface is not bound to any service (doesn't have a binding).431 //--------------------------------------------------------------------------------------------------437 //--------------------------------------------------------------------------------------------------443 * longer a connection to the service, and the functions in this API can't be used. For details, see448 //--------------------------------------------------------------------------------------------------455 //--------------------------------------------------------------------------------------------------459 //--------------------------------------------------------------------------------------------------463 //--------------------------------------------------------------------------------------------------467 //--------------------------------------------------------------------------------------------------471 //--------------------------------------------------------------------------------------------------475 //--------------------------------------------------------------------------------------------------479 //--------------------------------------------------------------------------------------------------484 //--------------------------------------------------------------------------------------------------488 //--------------------------------------------------------------------------------------------------492 //--------------------------------------------------------------------------------------------------508 //--------------------------------------------------------------------------------------------------512 //--------------------------------------------------------------------------------------------------524 //--------------------------------------------------------------------------------------------------528 //--------------------------------------------------------------------------------------------------612 //--------------------------------------------------------------------------------------------------616 //--------------------------------------------------------------------------------------------------628 //--------------------------------------------------------------------------------------------------632 //--------------------------------------------------------------------------------------------------677 //--------------------------------------------------------------------------------------------------681 //--------------------------------------------------------------------------------------------------708 //--------------------------------------------------------------------------------------------------713 //--------------------------------------------------------------------------------------------------845 //--------------------------------------------------------------------------------------------------850 //--------------------------------------------------------------------------------------------------904 //--------------------------------------------------------------------------------------------------908 //--------------------------------------------------------------------------------------------------912 //--------------------------------------------------------------------------------------------------923 //--------------------------------------------------------------------------------------------------925 (931 //--------------------------------------------------------------------------------------------------943 //--------------------------------------------------------------------------------------------------949 //--------------------------------------------------------------------------------------------------957 //--------------------------------------------------------------------------------------------------963 //--------------------------------------------------------------------------------------------------965 * This function exits from eCall Only mode. It configures the eCall operation mode to Normal mode,966 * the modem uses the default operation mode at power up (or after U/SIM hotswap). The modem behaves967 * following the U/SIM eCall operation mode; for example the U/SIM can be configured only for eCall,974 //--------------------------------------------------------------------------------------------------980 //--------------------------------------------------------------------------------------------------988 //--------------------------------------------------------------------------------------------------995 //--------------------------------------------------------------------------------------------------1001 //--------------------------------------------------------------------------------------------------1011 //--------------------------------------------------------------------------------------------------1015 //--------------------------------------------------------------------------------------------------1022 //--------------------------------------------------------------------------------------------------1035 //--------------------------------------------------------------------------------------------------1041 //--------------------------------------------------------------------------------------------------1048 //--------------------------------------------------------------------------------------------------1055 //--------------------------------------------------------------------------------------------------1064 //--------------------------------------------------------------------------------------------------1071 //--------------------------------------------------------------------------------------------------1080 //--------------------------------------------------------------------------------------------------1087 //--------------------------------------------------------------------------------------------------1096 //--------------------------------------------------------------------------------------------------1103 //--------------------------------------------------------------------------------------------------1112 //--------------------------------------------------------------------------------------------------1119 //--------------------------------------------------------------------------------------------------1128 //--------------------------------------------------------------------------------------------------1135 //--------------------------------------------------------------------------------------------------1144 //--------------------------------------------------------------------------------------------------1151 //--------------------------------------------------------------------------------------------------1160 //--------------------------------------------------------------------------------------------------1167 //--------------------------------------------------------------------------------------------------1176 //--------------------------------------------------------------------------------------------------1186 //--------------------------------------------------------------------------------------------------1195 //--------------------------------------------------------------------------------------------------1202 //--------------------------------------------------------------------------------------------------1213 //--------------------------------------------------------------------------------------------------1220 //--------------------------------------------------------------------------------------------------1228 //--------------------------------------------------------------------------------------------------1235 //--------------------------------------------------------------------------------------------------1243 //--------------------------------------------------------------------------------------------------1250 //--------------------------------------------------------------------------------------------------1262 //--------------------------------------------------------------------------------------------------1287 //--------------------------------------------------------------------------------------------------1289 * Set the position Delta N-1 from position set in le_ecall_SetMsdPosition() transmitted by the MSD.1299 //--------------------------------------------------------------------------------------------------1318 //--------------------------------------------------------------------------------------------------1320 * Set the position Delta N-2 from position set in le_ecall_SetMsdPositionN1() transmitted by the MSD.1330 //--------------------------------------------------------------------------------------------------1349 //--------------------------------------------------------------------------------------------------1360 //--------------------------------------------------------------------------------------------------1370 //--------------------------------------------------------------------------------------------------1385 //--------------------------------------------------------------------------------------------------1398 //--------------------------------------------------------------------------------------------------1412 //--------------------------------------------------------------------------------------------------1425 //--------------------------------------------------------------------------------------------------1437 //--------------------------------------------------------------------------------------------------1444 //--------------------------------------------------------------------------------------------------1456 //--------------------------------------------------------------------------------------------------1463 //--------------------------------------------------------------------------------------------------1475 //--------------------------------------------------------------------------------------------------1482 //--------------------------------------------------------------------------------------------------1494 //--------------------------------------------------------------------------------------------------1501 //--------------------------------------------------------------------------------------------------1510 //--------------------------------------------------------------------------------------------------1517 //--------------------------------------------------------------------------------------------------1526 //--------------------------------------------------------------------------------------------------1533 //--------------------------------------------------------------------------------------------------1537 * @note That PSAP number is not applied to Manually or Automatically initiated eCall. For those1546 * @note If PSAP number is too long (max LE_MDMDEFS_PHONE_NUM_MAX_LEN digits), it is a fatal error,1549 //--------------------------------------------------------------------------------------------------1556 //--------------------------------------------------------------------------------------------------1561 * @note That PSAP number is not applied to Manually or Automatically initiated eCall. For those1570 //--------------------------------------------------------------------------------------------------1580 //--------------------------------------------------------------------------------------------------1582 * This function can be recalled to indicate the modem to read the number to dial from the FDN/SDN1589 //--------------------------------------------------------------------------------------------------1595 //--------------------------------------------------------------------------------------------------1605 //--------------------------------------------------------------------------------------------------1612 //--------------------------------------------------------------------------------------------------1620 //--------------------------------------------------------------------------------------------------1627 //--------------------------------------------------------------------------------------------------1635 //--------------------------------------------------------------------------------------------------1642 //--------------------------------------------------------------------------------------------------1650 //--------------------------------------------------------------------------------------------------1657 //--------------------------------------------------------------------------------------------------1660 * failed, it should be repeated maximally ECALL_MANUAL_DIAL_ATTEMPTS-1 times within the maximal1662 * Redial attempts stop once the call has been cleared down correctly, or if counter/timer reached1669 //--------------------------------------------------------------------------------------------------1676 //--------------------------------------------------------------------------------------------------1678 * Set tthe AUTO_DIAL_ATTEMPTS value. If a dial attempt under automatic emergency call initiation1679 * failed, it should be repeated maximally ECALL_AUTO_DIAL_ATTEMPTS-1 times within the maximal time1681 * Redial attempts stop once the call has been cleared down correctly, or if counter/timer reached1688 //--------------------------------------------------------------------------------------------------1695 //--------------------------------------------------------------------------------------------------1697 * Set the ECALL_DIAL_DURATION time. It's the maximum time the IVS have to connect the emergency1706 //--------------------------------------------------------------------------------------------------1713 //--------------------------------------------------------------------------------------------------1721 //--------------------------------------------------------------------------------------------------1728 //--------------------------------------------------------------------------------------------------1736 //--------------------------------------------------------------------------------------------------1743 //--------------------------------------------------------------------------------------------------1751 //--------------------------------------------------------------------------------------------------1758 //--------------------------------------------------------------------------------------------------1767 //--------------------------------------------------------------------------------------------------1777 //--------------------------------------------------------------------------------------------------1779 * Reset the ERA-GLONASS crash severity parameter. Therefore that optional parameter is not included1787 //--------------------------------------------------------------------------------------------------1794 //--------------------------------------------------------------------------------------------------1803 //--------------------------------------------------------------------------------------------------1813 //--------------------------------------------------------------------------------------------------1823 //--------------------------------------------------------------------------------------------------1830 //--------------------------------------------------------------------------------------------------1839 //--------------------------------------------------------------------------------------------------1849 //--------------------------------------------------------------------------------------------------1859 //--------------------------------------------------------------------------------------------------1866 //--------------------------------------------------------------------------------------------------1875 //--------------------------------------------------------------------------------------------------1882 //--------------------------------------------------------------------------------------------------1891 //--------------------------------------------------------------------------------------------------AL-ACK clear-down received.Definition: le_ecall_interface.h:567Present Left collision indicator.Definition: le_ecall_interface.h:859void le_ecall_RemoveStateChangeHandler(le_ecall_StateChangeHandlerRef_t addHandlerRef)int32_t le_ecall_GetPlatformSpecificTerminationCode(le_ecall_CallRef_t ecallRef)le_result_t le_ecall_SetMsdVersion(uint32_t msdVersion)le_result_t le_ecall_StartTest(le_ecall_CallRef_t ecallRef)le_result_t le_ecall_SetMsdPositionN2(le_ecall_CallRef_t ecallRef, int32_t latitudeDeltaN2, int32_t longitudeDeltaN2)Persistent eCall only mode.Definition: le_ecall_interface.h:502Timeout for Timer T5 (see CEN-EN 16062, annex A)Definition: le_ecall_interface.h:594Present Battery failure.Definition: le_ecall_interface.h:764Definition: le_ecall_interface.h:577le_result_t le_ecall_ForceOnlyMode(void)Present Right speaker failure.Definition: le_ecall_interface.h:728le_result_t le_ecall_SendMsd(le_ecall_CallRef_t ecallRef)le_result_t le_ecall_ResetMsdEraGlonassCrashSeverity(le_ecall_CallRef_t ecallRef)le_result_t le_ecall_SetEraGlonassDialDuration(uint16_t duration)le_result_t le_ecall_GetMsdVersion(uint32_t *msdVersionPtr)Present Comm module interface failure.Definition: le_ecall_interface.h:788Present Other critical failures.Definition: le_ecall_interface.h:830le_result_t le_ecall_SetMsdEraGlonassDiagnosticResult(le_ecall_CallRef_t ecallRef, le_ecall_DiagnosticResultBitMask_t diagnosticResultMask)Definition: le_ecall_interface.h:498Present Battery voltage low failure.Definition: le_ecall_interface.h:770le_result_t le_ecall_SetMsdEraGlonassCrashSeverity(le_ecall_CallRef_t ecallRef, uint32_t crashSeverity)le_result_t le_ecall_ForcePersistentOnlyMode(void)le_result_t le_ecall_ImportMsd(le_ecall_CallRef_t ecallRef, const uint8_t *msdPtr, size_t msdNumElements)Front or side collision indicator.Definition: le_ecall_interface.h:892le_result_t le_ecall_SetMsdTxMode(le_ecall_MsdTxMode_t mode)void le_ecall_ConnectService(void)Timeout for Timer T10 (see CEN-EN 16062, annex A)Definition: le_ecall_interface.h:606Firmware image corruption failure status.Definition: le_ecall_interface.h:785Present Side collision indicator.Definition: le_ecall_interface.h:883Present Mic connection failure.Definition: le_ecall_interface.h:716Right speaker failure status.Definition: le_ecall_interface.h:731Present Right collision indicator.Definition: le_ecall_interface.h:865Other critical failures status.Definition: le_ecall_interface.h:833Crash profile memory overflow status.Definition: le_ecall_interface.h:827le_result_t le_ecall_GetMsdTxMode(le_ecall_MsdTxMode_t *modePtr)le_result_t le_ecall_GetVehicleType(le_ecall_MsdVehicleType_t *vehicleTypePtr)Present Crash profile memory overflow.Definition: le_ecall_interface.h:824Present Front or side collision indicator.Definition: le_ecall_interface.h:889le_result_t le_ecall_ResetMsdEraGlonassCrashInfo(le_ecall_CallRef_t ecallRef)Left speaker failure status.Definition: le_ecall_interface.h:737le_result_t le_ecall_SetVIN(const char *vin)Present Other not critical failures.Definition: le_ecall_interface.h:836Ignition line failure status.Definition: le_ecall_interface.h:749void(* le_ecall_StateChangeHandlerFunc_t)(le_ecall_CallRef_t ecallRef, le_ecall_State_t state, void *contextPtr)Definition: le_ecall_interface.h:925Pull mode (modem/host waits for MSD request from PSAP to send MSD).Definition: le_ecall_interface.h:619struct le_ecall_StateChangeHandler * le_ecall_StateChangeHandlerRef_tDefinition: le_ecall_interface.h:909le_result_t le_ecall_GetConfiguredOperationMode(le_ecall_OpMode_t *opModePtr)le_result_t le_ecall_ExportMsd(le_ecall_CallRef_t ecallRef, uint8_t *msdPtr, size_t *msdNumElementsPtr)GNSS antenna failure status.Definition: le_ecall_interface.h:809le_result_t le_ecall_SetNadDeregistrationTime(uint16_t deregTime)Present GNSS receiver failure.Definition: le_ecall_interface.h:794le_result_t le_ecall_GetPsapNumber(char *psap, size_t psapNumElements)void le_ecall_DisconnectService(void)Push mode (modem/host sends MSD to PSAP right after eCall is connected).Definition: le_ecall_interface.h:622le_result_t le_ecall_SetEraGlonassAutoDialAttempts(uint16_t attempts)Other types of damage indicator.Definition: le_ecall_interface.h:898le_result_t le_ecall_SetEraGlonassManualDialAttempts(uint16_t attempts)Timeout for Timer T6 (see CEN-EN 16062, annex A)Definition: le_ecall_interface.h:597PSAP start indication received.Definition: le_ecall_interface.h:546Light commercial vehicles (Class N1)Definition: le_ecall_interface.h:644le_mcc_TerminationReason_t le_ecall_GetTerminationReason(le_ecall_CallRef_t ecallRef)le_ecall_DiagnosticResultBitMask_tDefinition: le_ecall_interface.h:714Present Front collision indicator.Definition: le_ecall_interface.h:853Other not critical failures status.Definition: le_ecall_interface.h:839le_result_t le_ecall_SetMsdPassengersCount(le_ecall_CallRef_t ecallRef, uint32_t paxCount)Timeout for Timer T3 (see CEN-EN 16062, annex A)Definition: le_ecall_interface.h:591Present Other types of damage indicator.Definition: le_ecall_interface.h:895le_ecall_State_t le_ecall_GetState(le_ecall_CallRef_t ecallRef)le_result_t le_ecall_GetVIN(char *vin, size_t vinNumElements)Waiting for PSAP start indication.Definition: le_ecall_interface.h:543le_result_t le_ecall_End(le_ecall_CallRef_t ecallRef)le_result_t le_ecall_StartManual(le_ecall_CallRef_t ecallRef)le_result_t le_ecall_ResetMsdEraGlonassDiagnosticResult(le_ecall_CallRef_t ecallRef)le_result_t le_ecall_GetSystemStandard(le_ecall_SystemStandard_t *systemStandardPtr)Timeout for Timer T7 (see CEN-EN 16062, annex A)Definition: le_ecall_interface.h:600Comm module failure status.Definition: le_ecall_interface.h:815le_result_t le_ecall_SetMsdEraGlonassCrashInfo(le_ecall_CallRef_t ecallRef, le_ecall_CrashInfoBitMask_t crashInfoMask)Events memory overflow status.Definition: le_ecall_interface.h:821Timeout for Timer T2 (see CEN-EN 16062, annex A)Definition: le_ecall_interface.h:588Present GNSS antenna failure.Definition: le_ecall_interface.h:806le_result_t le_ecall_SetMsdPosition(le_ecall_CallRef_t ecallRef, bool isTrusted, int32_t latitude, int32_t longitude, int32_t direction)le_result_t le_ecall_SetVehicleType(le_ecall_MsdVehicleType_t vehicleType)Present Rollover indicator.Definition: le_ecall_interface.h:877le_ecall_CallRef_t le_ecall_Create(void)Status indicator failure status.Definition: le_ecall_interface.h:761Present Left speaker failure.Definition: le_ecall_interface.h:734le_result_t le_ecall_UseUSimNumbers(void)le_result_t le_ecall_SetPsapNumber(const char *psap)le_result_t le_ecall_GetEraGlonassManualDialAttempts(uint16_t *attemptsPtr)Present Status indicator failure.Definition: le_ecall_interface.h:758le_result_t le_ecall_GetNadDeregistrationTime(uint16_t *deregTimePtr)le_result_t le_ecall_GetEraGlonassAutoDialAttempts(uint16_t *attemptsPtr)le_result_t le_ecall_ExitOnlyMode(void)le_result_t le_ecall_SetMsdPositionN1(le_ecall_CallRef_t ecallRef, int32_t latitudeDeltaN1, int32_t longitudeDeltaN1)le_result_t le_ecall_GetPropulsionType(le_ecall_PropulsionTypeBitMask_t *propulsionTypePtr)Present Crash sensor failure.Definition: le_ecall_interface.h:776le_result_t le_ecall_GetEraGlonassDialDuration(uint16_t *durationPtr)Present Speaker failure.Definition: le_ecall_interface.h:740Battery voltage low failure status.Definition: le_ecall_interface.h:773le_result_t le_ecall_SetIntervalBetweenDialAttempts(uint16_t pause)Definition: le_ecall_interface.h:570Present Events memory overflow.Definition: le_ecall_interface.h:818Compressed natural gas propulsion.Definition: le_ecall_interface.h:690le_result_t le_ecall_StartAutomatic(le_ecall_CallRef_t ecallRef)Comm module interface failure status.Definition: le_ecall_interface.h:791GNSS receiver failure status.Definition: le_ecall_interface.h:797eCall session has lost synchronization and starts over.Definition: le_ecall_interface.h:574Present Comm module failure.Definition: le_ecall_interface.h:812Timeout for Timer T9 (see CEN-EN 16062, annex A)Definition: le_ecall_interface.h:603Mic connection failure status.Definition: le_ecall_interface.h:719le_result_t le_ecall_TryConnectService(void)le_ecall_StateChangeHandlerRef_t le_ecall_AddStateChangeHandler(le_ecall_StateChangeHandlerFunc_t handlerPtr, void *contextPtr)Present Firmware image corruption failure.Definition: le_ecall_interface.h:782void le_ecall_Delete(le_ecall_CallRef_t ecallRef)le_result_t le_ecall_SetSystemStandard(le_ecall_SystemStandard_t systemStandard)Present Ignition line failure.Definition: le_ecall_interface.h:746le_result_t le_ecall_SetPropulsionType(le_ecall_PropulsionTypeBitMask_t propulsionType)le_ecall_PropulsionTypeBitMask_tDefinition: le_ecall_interface.h:682le_result_t le_ecall_GetIntervalBetweenDialAttempts(uint16_t *pausePtr)Crash sensor failure status.Definition: le_ecall_interface.h:779