1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
|
; 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}
; SDL supported protocol version
MaxSupportedProtocolVersion = 5
; 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
PendingRequestsAmount = 0
; 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
PluginFolder = plugins
[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
; 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
[TransportManager]
; Listening port form incoming TCP mobile connection
TCPAdapterPort = 12345
[ProtocolHandler]
; 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
[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
[Remote Control]
; Timeout to wait for HMI response for RC APIs coming from mobile
timeout_period_seconds = 10
|