; The INI-file consists of different chapters. ; Each chapter begins with the line containing ; the name in square brackets. Syntax: ; [chapter] ; The chapters consists of a set of items with a ; assigned value. The syntax is: ; item=value ; All white spaces an second encounters of chapters ; or items will be ignored. ; Remarks start with semicolon or star as first character. ; It is allowed for names of chapters and items to ; contain semicolon and star. Possible syntax is: ; [ chapter ] ;Remark ; item = value ;Remark [HMI] ; Open the $LinkToWebHMI in chromium browser LaunchHMI = false ; Link to index HMTL page ; correct format is without any quotes and with double forward slash (solidus) separator LinkToWebHMI = HMI//index.html ; WebSocket connection address and port ServerAddress = 127.0.0.1 ServerPort = 8087 ; Socket ports for video and audio streaming VideoStreamingPort = 5050 AudioStreamingPort = 5080 [MAIN] ; SDL source version ; represents as a git commit hash value SDLVersion = {GIT_COMMIT} ; All logging event could be dropped by setting $LogsEnabled to false LogsEnabled = true ; Contains .json/.ini files ; Default value is SDL working directory AppConfigFolder = ; Contains SDL configuration files - .json/.ini ; Default value is SDL working directory AppStorageFolder = storage ; Contains resourses, e.g. audio8bit.wav ; Default value is SDL working directory AppResourceFolder = ; Standard min stack size ; in Ubuntu : PTHREAD_STACK_MIN = 16384 ; in QNX : PTHREAD_STACK_MIN = 256 ; The value of a $ThreadStackSize used where its really needed, ; other way stack size will be PTHREAD_STACK_MIN ThreadStackSize = 20480 ; Defines if HMI support attenuated mode (able to mix audio sources) MixingAudioSupported = true ; In case HMI doesn’t send some capabilities to SDL, the values from the file are used by SDL HMICapabilities = hmi_capabilities.json ; Maximum cmdId of VR command which may be registered on SDL ; Bigger value used for system VR commands processing by SDL MaxCmdID = 2000000000 ; SDL respond timeout (in milliseconds) in case of HMI has not respond on a mobile request DefaultTimeout = 10000 ; Available disk space in bytes for each application file handling ; Default value is 100 MiB AppDirectoryQuota = 104857600 ; Allowed requests amount in HMI level NONE during time scale. ; If value is 0 check will be skipped AppHMILevelNoneTimeScaleMaxRequests = 100 AppHMILevelNoneRequestsTimeScale = 10 ; Allowed requests amount during time scale. ; If value is 0 check will be skipped AppTimeScaleMaxRequests = 1000 AppRequestsTimeScale = 10 ; Allowed pending requests amount. If value is 0 check will be skipped PendingRequestsAmount = 5000 ; Heart beat timeout used for protocol v3. ; Timeout must be specified in milliseconds. If timeout is 0 heart beat will be disabled. HeartBeatTimeout = 7000 ; The list of diagnostic modes supported on a vehicle. ; Only the stated values are allowed by SDL in terms of DiagnosticMessage RPC, others are rejected SupportedDiagModes = 0x01, 0x02, 0x03, 0x05, 0x06, 0x07, 0x09, 0x0A, 0x18, 0x19, 0x22, 0x3E ; The path to the system file directory for inter-operation between SDL and System (e.g. IVSU files and others). ; If parameter is empty, SDL uses /tmp/fs/mp/images/ivsu_cache by default SystemFilesPath = /tmp/fs/mp/images/ivsu_cache ; To restore the last transport state (name, applications or channels) on SDL on a new device connection and on disconnect UseLastState = true ; Port to obtain the performance information about messages processing TimeTestingPort = 8090 ; Limitation for a number of ReadDID requests (the 1st value) per (the 2nd value) seconds ReadDIDRequest = 5, 1 ; Limitation for a number of GetVehicleData requests (the 1st value) per (the 2nd value) seconds GetVehicleDataRequest = 5, 1 ; Limitation for a number of GetInteriorVehicleDataRequest requests (the 1st value) per (the 2nd value) seconds GetInteriorVehicleDataRequest = 5, 1 PluginFolder = ./ ; The time used during switch transport procedure AppTransportChangeTimer = 500 ; The time used as addition for AppTransportChangeTimer AppTransportChangeTimerAddition = 0 ; Signal offsets used by SDL for setting up real time signals ; used by LOW VOLTAGE functionality LowVoltageSignal = 1 ; Offset from SIGRTMIN WakeUpSignal = 2 ; Offset from SIGRTMIN IgnitionOffSignal = 3 ; Offset from SIGRTMIN [MEDIA MANAGER] ; where 3 is a number of retries and 1000 is a timeout in milliseconds for request frequency StartStreamRetry = 3, 1000 EnableRedecoding = false VideoStreamConsumer = socket AudioStreamConsumer = socket ;VideoStreamConsumer = file ;AudioStreamConsumer = file ;VideoStreamConsumer = pipe ;AudioStreamConsumer = pipe ; Temp solution: if you change NamedPipePath also change path to pipe in src/components/qt_hmi/qml_model_qtXX/views/SDLNavi.qml ; Named pipe path will be constructed using AppStorageFolder + name NamedVideoPipePath = video_stream_pipe NamedAudioPipePath = audio_stream_pipe ; File path will be constructed using AppStorageFolder + name VideoStreamFile = video_stream_file AudioStreamFile = audio_stream_file ; Recording file source (used for audio pass thru emulation only) RecordingFileSource = audio.8bit.wav ; Recording file for audio pass thru RecordingFileName = audio.wav ; The timeout in milliseconds for mobile to stop streaming or end up sessions. StopStreamingTimeout = 1000 ; The timeout in milliseconds to suspend audio data streaming if no data received from mobile AudioDataStoppedTimeout = 1000 ; The timeout in milliseconds to suspend video data streaming if no data received from mobile VideoDataStoppedTimeout = 1000 [GLOBAL PROPERTIES] ; HelpPromt and TimeOutPrompt is a vector of strings separated by comma ; Delimiter, which will be appended to each TTS chunk, e.g. helpPrompt/timeoutPrompt TTSDelimiter = , ; Default prompt items, separated by comma HelpPromt = Please speak one of the following commands,Please say a command ; Default prompt items, separated by comma TimeOutPromt = Please speak one of the following commands,Please say a command HelpTitle = Available Vr Commands List ; In case mobile app didn't send global properties default global properties will be sent after this timeout in seconds ; max value TTSGlobalPropertiesTimeout 64K TTSGlobalPropertiesTimeout = 20 [FILESYSTEM RESTRICTIONS] ; Max allowed number of PutFile requests for one application in NONE PutFileRequest = 5 ; Max allowed number of DeleteFile requests for one application in NONE DeleteFileRequest = 5 ; Max allowed number of ListFiles requests for one application in NONE ListFilesRequest = 5 [VR COMMANDS] ; TODO(EZamakhov): delete with APPLINK-15220 HelpCommand = Help [AppInfo] ; The path for applications info storage. AppInfoStorage = app_info.dat [Security Manager] ;Protocol = TLSv1.2 Protocol = DTLSv1.0 ; Certificate and key path to pem file CertificatePath = mycert.pem KeyPath = mykey.pem ; SSL mode could be SERVER or CLIENT SSLMode = CLIENT ; Could be ALL ciphers or list of chosen ;CipherList = AES256-GCM-SHA384 CipherList = ALL ; Verify Mobile app certificate (could be used in both SSLMode Server and Client) VerifyPeer = true ; Preloaded CA certificates directory CACertificatePath = . ; Services which can not be started unprotected (could be id's from 0x01 to 0xFF) ;ForceProtectedService = 0x0A, 0x0B ForceProtectedService = Non ; Services which can not be started protected or delayed protected ;ForceUnprotectedService = 0x07 ForceUnprotectedService = Non ; The PTU will be triggered in case expiration date of certificate ; then certain hours amount UpdateBeforeHours = 24 [Policy] EnablePolicy = true PreloadedPT = sdl_preloaded_pt.json PathToSnapshot = sdl_snapshot.json ; Number of attempts to open policy DB AttemptsToOpenPolicyDB = 5 ; Timeout between attempts during opening DB in milliseconds OpenAttemptTimeoutMs = 500 ; Whether to use the fullAppID over the short-form appID in policy lookups UseFullAppID = true [TransportManager] ; Listening port form incoming TCP mobile connection TCPAdapterPort = 12345 ; Name of the network interface that Core will listen on for incoming TCP connection, e.g. eth0. ; If the name is omitted, Core will listen on all network interfaces by binding to INADDR_ANY. TCPAdapterNetworkInterface = [ProtocolHandler] ; SDL supported protocol version MaxSupportedProtocolVersion = 5 ; Packet with payload bigger than next value will be marked as a malformed ; for protocol v3 or higher ; For v2 protocol MaximumPayloadSize is 1488 MaximumPayloadSize = 131072 ; Application shall send less #FrequencyCount messages per #FrequencyTime mSecs ; Frequency check could be disabled by setting #FrequencyTime or ; #FrequencyCount to Zero FrequencyCount = 1000 FrequencyTime = 1000 ; Enable filtering transport data stream ; On #MalformedMessageFiltering disable SDl disconnect with the first ; malformed message detection MalformedMessageFiltering = true ; Boundary values of malformed message detection for connection close ; Can be disabled by setting #MalformedFrequencyTime or ; #MalformedFrequencyCount to Zero MalformedFrequencyCount = 10 MalformedFrequencyTime = 1000 ; Timeout for waiting CONSECUTIVE frames of multiframe ExpectedConsecutiveFramesTimeout = 10000 [ApplicationManager] ; Application list update timeout ms ApplicationListUpdateTimeout = 2000 ; Max allowed threads for handling mobile requests. Default value is 2 ThreadPoolSize = 1 ; The max size of hash which is used by OnHashUpdated HashStringSize = 32 [SDL4] ; Section for features added in protocol version 4 ; Path where apps icons must be stored AppIconsFolder = storage ; Max size of the folder in bytes AppIconsFolderMaxSize = 104857600 ; Amount of oldest icons to remove in case of max folder size was reached AppIconsAmountToRemove = 1 [SDL5] ; Section for features added in protocol version 5 ; Control service packet with payload bigger than this value will be marked as a malformed, ; if not specified, this value will default to MaxPayloadSize ;MaximumControlPayloadSize = 131072 ; RPC service packet with payload bigger than this value will be marked as a malformed, ; if not specified, this value will default to MaxPayloadSize ;MaximumRpcPayloadSize = 131072 ; Audio service packet with payload bigger than this value will be marked as a malformed, ; if not specified, this value will default to MaxPayloadSize ;MaximumAudioPayloadSize = 131072 ; Video service packet with payloadbigger than this value will be marked as a malformed, ; if not specified, this value will default to MaxPayloadSize ;MaximumVideoPayloadSize = 131072 [Resumption] ; Timeout in milliseconds for resumption Application HMILevel ; and resolving conflicts in case if multiple applications initiate resumption ApplicationResumingTimeout = 3000 ; Timeout in milliseconds for periodical saving resumption persistent data AppSavePersistentDataTimeout = 10000 ; Timeout in seconds to store hmi_level for media app before ign_off ResumptionDelayBeforeIgn = 30; ; Timeout in seconds to restore hmi_level for media app after sdl run ResumptionDelayAfterIgn = 30; ; Resumption ctrl uses JSON if UseDBForResumption=false for store data otherwise uses DB UseDBForResumption = false ; Number of attempts to open resumption DB AttemptsToOpenResumptionDB = 5 ; Timeout between attempts during opening DB in milliseconds OpenAttemptTimeoutMsResumptionDB = 500 [TransportRequiredForResumption] ; This section specifies transport types that are required to trigger resumption for each ; AppHMIType. App has to be connected through at least one of the transports listed (either as ; the primary transport or secondary transport) to trigger resumption. If the app is not ; connected with any of the transports listed, its HMIlevel will be kept in NONE and the state ; stays in NOT_AUDIBLE. ; In case an app has multiple AppHMIType, requirements of all of the AppHMITypes are applied. ; ; Possible AppHMITypes: Default, Communication, Media, Messaging, Navigation, Information, ; Social, BackgroundProcess, Testing, System, Projection, RemoteControl, ; EmptyApp ; Possible transport types: TCP_WIFI, IAP_CARPLAY, IAP_USB_HOST_MODE, IAP_USB_DEVICE_MODE, ; IAP_USB, AOA_USB, IAP_BLUETOOTH, SPP_BLUETOOTH ; ; The default behavior is to always enable resumption. If an AppHMIType is not listed in this ; section, resumption is enabled for an app with the AppHMIType. ; On the other hand, if you want to disable resumption and always keep an app in NONE and ; NOT_AUDIBLE state after registration, specify an empty value for the AppHMIType. ; ; NAVIGATION apps, PROJECTION apps and apps that declare themselves as media apps have a ; special exception. When these apps do not have any of the transports listed here, they will ; be still resumed into particular HMIlevel defined in LowBandwidthTransportResumptionLevel ; section. ;DefaultTransportRequiredForResumption = ;CommunicationTransportRequiredForResumption = ;MediaTransportRequiredForResumption = ;MessagingTransportRequiredForResumption = ;NavigationTransportRequiredForResumption = ;InformationTransportRequiredForResumption = ;SocialTransportRequiredForResumption = ;BackgroundProcessTransportRequiredForResumption = ;TestingTransportRequiredForResumption = ;SystemTransportRequiredForResumption = ;ProjectionTransportRequiredForResumption = ;RemoteControlTransportRequiredForResumption = ; "EmptyAppTransportRequiredForResumption" applies to apps that don't specify any AppHMIType ;EmptyAppTransportRequiredForResumption = [LowBandwidthTransportResumptionLevel] ; The HMI Level that an app will resume to if no high bandwidth connection is active. ; High bandwidth connections for each app type are defined under TransportRequiredForResumption ; section. ; Possible values: NONE, BACKGROUND, LIMITED and FULL ; this is for NAVIGATION apps ;NavigationLowBandwidthResumptionLevel = ; this is for PROJECTION apps ;ProjectionLowBandwidthResumptionLevel = ; this is for apps who declare themselves as media apps. (Don't be confused with AppHMIType=MEDIA.) ;MediaLowBandwidthResumptionLevel = [AppLaunch] ; time in milliseconds started from device connection - after expiring SDL remotely launches all known not-yet-registered apps from this device AppLaunchWaitTime = 5000 ; the number of times SDL attempts to launch an application after device connection - applied separately to each application from the given device AppLaunchMaxRetryAttempt = 3 ; time in milliseconds started by SDL after app launch request. if expired and app did not register, SDL sends new launch request. applied separately to each app AppLaunchRetryWaitTime = 15000 ; the number of the given device connections that the requested application failed to register after SDL's launch attempts - SDL removes app's bundleID on "value + 1" device connection RemoveBundleIDattempts = 3 ; the maximum number of iOS devices for which entries can be remembered by SDL MaxNumberOfiOSDevice = 10 ; time in milliseconds started after request to launch the first app. after either expires or the first app registers SDL requests to launch the second app. WaitTimeBetweenApps = 4000 ; App Launch on iOS devices SDL feature enabler/disabler EnableAppLaunchIOS = true [MultipleTransports] ; Whether multiple-transports feature is enabled ;MultipleTransportsEnabled = true ; Comma-separated list of transports that can be used as Secondary Transport for each Primary Transport. ; Possible values are: WiFi, USB and Bluetooth. ; Core will not suggest Secondary Transport if the value is empty. ;SecondaryTransportForBluetooth = WiFi ;SecondaryTransportForUSB = ;SecondaryTransportForWiFi = [ServicesMap] ; A matrix to specify which service is allowed on which transports. The transports are listed ; in preferred order. If a transport is not listed, then the service is not allowed ; to run on the transport. ; Only video and audio services are configurable. ; If the entry of a service is completely omitted, the service will be allowed on all transports. ; Possible values are: IAP_BLUETOOTH, IAP_USB, IAP_USB_HOST_MODE, IAP_USB_DEVICE_MODE, IAP_CARPLAY, SPP_BLUETOOTH, AOA_USB and TCP_WIFI. ; Note: this configuration is applied even if multiple-transports feature is not enabled. ;AudioServiceTransports = TCP_WIFI, IAP_CARPLAY, IAP_USB_HOST_MODE, IAP_USB_DEVICE_MODE, IAP_USB, AOA_USB ;VideoServiceTransports = TCP_WIFI, IAP_CARPLAY, IAP_USB_HOST_MODE, IAP_USB_DEVICE_MODE, IAP_USB, AOA_USB