1{
2    "Sensors": [
3        {
4            "Name": "battery",
5            "Type": "BATTERY",
6            "HotThreshold": ["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", "60.0"],
7            "Multiplier": 0.001
8        },
9        {
10            "Name": "battery_cycle",
11            "Type": "BCL_VOLTAGE"
12        },
13        {
14            "Name": "maxfg_base",
15            "Type": "UNKNOWN",
16            "Multiplier": 0.001
17        },
18        {
19            "Name": "maxfg_secondary",
20            "Type": "UNKNOWN",
21            "Multiplier": 0.001
22        },
23        {
24            "Name": "soc",
25            "Type": "BCL_PERCENTAGE",
26            "HotThreshold": ["NAN", "NAN", 80, "NAN", "NAN", "NAN", "NAN"],
27            "Multiplier": 1
28        },
29        {
30            "Name": "BCL_AUDIO_BAACL",
31            "Type": "BCL_VOLTAGE",
32            "VirtualSensor": true,
33            "Formula": "COUNT_THRESHOLD",
34            "TriggerSensor": "soc",
35            "Combination": ["battery", "soc"],
36            "Coefficient": [-25000, 80],
37            "HotThreshold": ["NAN", "NAN", "NAN", "NAN", 2.0, "NAN", "NAN"],
38            "PollingDelay": 0,
39            "PassiveDelay": 1000,
40            "Multiplier": 1,
41            "SendCallback": true
42        },
43        {
44            "Name": "soc_therm",
45            "Type": "UNKNOWN",
46            "HotThreshold": ["NaN", 34.29, "NaN", "NaN", "NaN", "NaN", "NaN"],
47            "Multiplier": 0.001,
48            "PollingDelay": 300000,
49            "PassiveDelay": 7000
50        },
51        {
52            "Name": "rffe_therm",
53            "Type": "UNKNOWN",
54            "HotThreshold": ["NaN", 35.07, "NaN", "NaN", "NaN", "NaN", "NaN"],
55            "Multiplier": 0.001,
56            "PollingDelay": 300000,
57            "PassiveDelay": 7000
58        },
59        {
60            "Name": "modem_therm",
61            "Type": "UNKNOWN",
62            "HotThreshold": ["NaN", 33.31, "NaN", "NaN", "NaN", "NaN", "NaN"],
63            "Multiplier": 0.001,
64            "PollingDelay": 300000,
65            "PassiveDelay": 7000
66        },
67        {
68            "Name": "gnss_tcxo_therm",
69            "Type": "UNKNOWN",
70            "HotThreshold": ["NaN", 32.08, "NaN", "NaN", "NaN", "NaN", "NaN"],
71            "Multiplier": 0.001,
72            "PollingDelay": 300000,
73            "PassiveDelay": 7000
74        },
75        {
76            "Name": "usb_conn_therm",
77            "Type": "UNKNOWN",
78            "HotThreshold": ["NAN", 30.79, "NAN", "NAN", "NAN", "NAN", "NAN"],
79            "Multiplier": 0.001,
80            "PollingDelay": 300000,
81            "PassiveDelay": 7000
82        },
83        {
84            "Name": "charger_therm",
85            "Type": "UNKNOWN",
86            "HotThreshold": ["NAN", 34.89, "NAN", "NAN", "NAN", "NAN", "NAN"],
87            "Multiplier": 0.001,
88            "PollingDelay": 300000,
89            "PassiveDelay": 7000
90        },
91        {
92            "Name": "inner_display_therm",
93            "Type": "UNKNOWN",
94            "Multiplier": 0.001
95        },
96        {
97            "Name": "display_therm",
98            "Type": "UNKNOWN",
99            "Multiplier": 0.001
100        },
101        {
102            "Name": "inner_brightness",
103            "Type": "UNKNOWN",
104            "Multiplier": 1
105        },
106        {
107            "Name": "OPEN_WEIGHT",
108            "Type": "UNKNOWN",
109            "Hidden": true,
110            "VirtualSensor": true,
111            "Formula": "COUNT_THRESHOLD",
112            "StepRatio": 0.2,
113            "Combination": ["inner_brightness"],
114            "Coefficient": [1.0],
115            "Multiplier": 1,
116            "PassiveDelay": 7000
117        },
118        {
119            "Name": "CLOSE_WEIGHT",
120            "Type": "UNKNOWN",
121            "Hidden": true,
122            "VirtualSensor": true,
123            "Formula": "WEIGHTED_AVG",
124            "Combination": ["1", "OPEN_WEIGHT"],
125            "CombinationType": ["CONSTANT", "SENSOR"],
126            "Coefficient": [1.0, -1.0],
127            "Multiplier": 1
128        },
129        {
130            "Name": "VIRTUAL-SKIN-OPEN-SUB-1",
131            "Type": "UNKNOWN",
132            "Hidden": true,
133            "VirtualSensor": true,
134            "Formula": "WEIGHTED_AVG",
135            "Combination": ["charger_therm", "modem_therm", "gnss_tcxo_therm"],
136            "Coefficient": [0.263, 0.332, 0.519],
137            "Offset": -6068,
138            "Multiplier": 0.001
139        },
140        {
141            "Name": "VIRTUAL-SKIN-OPEN-SUB-2",
142            "Type": "UNKNOWN",
143            "Hidden": true,
144            "VirtualSensor": true,
145            "Formula": "WEIGHTED_AVG",
146            "Combination": ["charger_therm", "modem_therm", "inner_display_therm", "display_therm", "gnss_tcxo_therm"],
147            "Coefficient": [0.12, 0.12, 0.37, 0.32, 0.12],
148            "Offset": -30,
149            "Multiplier": 0.001
150        },
151        {
152            "Name": "VIRTUAL-SKIN-OPEN",
153            "Type": "UNKNOWN",
154            "Hidden": true,
155            "VirtualSensor": true,
156            "Formula": "MAXIMUM",
157            "Combination": ["VIRTUAL-SKIN-OPEN-SUB-1", "VIRTUAL-SKIN-OPEN-SUB-2"],
158            "Coefficient": [1.0, 1.0],
159            "Multiplier": 0.001
160        },
161        {
162            "Name": "VIRTUAL-SKIN-CLOSE-SUB-1",
163            "Type": "UNKNOWN",
164            "Hidden": true,
165            "VirtualSensor": true,
166            "Formula": "WEIGHTED_AVG",
167            "Combination": ["rffe_therm", "charger_therm", "gnss_tcxo_therm"],
168            "Coefficient": [0.312, 0.32, 0.333],
169            "Offset": 51,
170            "Multiplier": 0.001
171        },
172        {
173            "Name": "VIRTUAL-SKIN-CLOSE-SUB-2",
174            "Type": "UNKNOWN",
175            "Hidden": true,
176            "VirtualSensor": true,
177            "Formula": "WEIGHTED_AVG",
178            "Combination": ["soc_therm", "rffe_therm"],
179            "Coefficient": [0.294, 0.664],
180            "Offset": 388,
181            "Multiplier": 0.001
182        },
183        {
184            "Name": "VIRTUAL-SKIN-CLOSE-SUB-3",
185            "Type": "UNKNOWN",
186            "Hidden": true,
187            "VirtualSensor": true,
188            "Formula": "WEIGHTED_AVG",
189            "Combination": ["modem_therm", "gnss_tcxo_therm"],
190            "Coefficient": [0.65, 0.35],
191            "Offset": -1825,
192            "Multiplier": 0.001
193        },
194        {
195            "Name": "VIRTUAL-SKIN-CLOSE-SUB-4",
196            "Type": "UNKNOWN",
197            "Hidden": true,
198            "VirtualSensor": true,
199            "Formula": "WEIGHTED_AVG",
200            "Combination": ["rffe_therm", "usb_conn_therm", "inner_display_therm", "display_therm", "gnss_tcxo_therm", "maxfg_base", "maxfg_secondary"],
201            "Coefficient": [0.03, 0.096, 0.03, 0.78, 0.03, 0.03, 0.09],
202            "Offset": -2730,
203            "Multiplier": 0.001
204        },
205        {
206            "Name": "VIRTUAL-SKIN-CLOSE",
207            "Type": "UNKNOWN",
208            "Hidden": true,
209            "VirtualSensor": true,
210            "Formula": "MAXIMUM",
211            "Combination": ["VIRTUAL-SKIN-CLOSE-SUB-1", "VIRTUAL-SKIN-CLOSE-SUB-2", "VIRTUAL-SKIN-CLOSE-SUB-3", "VIRTUAL-SKIN-CLOSE-SUB-4"],
212            "Coefficient": [1.0, 1.0, 1.0, 1.0],
213            "Multiplier": 0.001
214        },
215        {
216            "Name": "VIRTUAL-SKIN-LEGACY",
217            "Type": "UNKNOWN",
218            "Version": "2.2",
219            "VirtualSensor": true,
220            "Hidden": true,
221            "Formula": "WEIGHTED_AVG",
222            "Combination": ["VIRTUAL-SKIN-OPEN", "VIRTUAL-SKIN-CLOSE"],
223            "Coefficient": ["OPEN_WEIGHT", "CLOSE_WEIGHT"],
224            "CoefficientType": ["SENSOR", "SENSOR"],
225            "Multiplier": 0.001
226        },
227        {
228            "Name":"VIRTUAL-SKIN-MODEL",
229            "Type":"UNKNOWN",
230            "Version": "1.0",
231            "VirtualSensor":true,
232            "ModelPath":"vt_estimation_model.tflite",
233            "Formula": "USE_ML_MODEL",
234            "Combination":["soc_therm", "rffe_therm", "charger_therm", "usb_conn_therm", "modem_therm", "inner_display_therm", "display_therm",  "gnss_tcxo_therm", "maxfg_base", "maxfg_secondary", "inner_brightness"],
235            "Multiplier":0.001,
236            "PreviousSampleCount": 3,
237            "BackupSensor" : "VIRTUAL-SKIN-LEGACY",
238            "TimeResolution": 7000
239        },
240        {
241            "Name": "VIRTUAL-SKIN-MODEL-LEGACY-DIFF",
242            "Type": "UNKNOWN",
243            "VirtualSensor": true,
244            "Hidden": true,
245            "Formula": "WEIGHTED_AVG",
246            "Combination": ["VIRTUAL-SKIN-MODEL", "VIRTUAL-SKIN-LEGACY"],
247            "Coefficient": [1.0, -1.0],
248            "Multiplier": 1
249        },
250        {
251            "Name": "VIRTUAL-SKIN",
252            "Type": "SKIN",
253            "Version": "2.3",
254            "VirtualSensor": true,
255            "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"],
256            "Formula": "MAXIMUM",
257            "Combination": ["VIRTUAL-SKIN-LEGACY"],
258            "Coefficient": [1.0],
259            "HotThreshold": ["NAN", 39.0, 43.0, 45.0, 46.5, 53.0, 57.0],
260            "HotHysteresis": [0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
261            "Multiplier": 0.001,
262            "PollingDelay": 300000,
263            "PassiveDelay": 7000,
264            "SendCallback": true,
265            "BindedCdevInfo": [
266                {
267                    "CdevRequest": "gxp-cooling",
268                    "LimitInfo": [0, 0, 0, 0, 0, 99, 99]
269                }
270            ]
271        },
272        {
273            "Name": "VIRTUAL-SKIN-HINT",
274            "Type": "UNKNOWN",
275            "Hidden": true,
276            "VirtualSensor": true,
277            "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"],
278            "Formula": "MAXIMUM",
279            "Combination": ["VIRTUAL-SKIN"],
280            "Coefficient": [1.0],
281            "HotThreshold": ["NAN", 37.0, 43.0, 45.0, 46.5, 53.0, 57.0],
282            "HotHysteresis": [0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
283            "Multiplier": 0.001,
284            "SendPowerHint": true,
285            "PollingDelay": 300000,
286            "PassiveDelay": 7000
287        },
288        {
289            "Name": "VIRTUAL-SKIN-CPU-LIGHT-ODPM",
290            "Type": "UNKNOWN",
291            "Hidden": true,
292            "VirtualSensor": true,
293            "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"],
294            "Formula": "MAXIMUM",
295            "Combination": ["VIRTUAL-SKIN"],
296            "Coefficient": [1.0],
297            "HotThreshold": ["NAN", 37.0, 39.0, "NAN", "NAN", "NAN", "NAN"],
298            "HotHysteresis": [0.0, 1.9, 1.9, 0.0, 0.0, 0.0, 0.0],
299            "Multiplier": 0.001,
300            "PollingDelay": 300000,
301            "PassiveDelay": 7000,
302            "PIDInfo": {
303                "K_Po": ["NAN", "NAN", 400, "NAN", "NAN", "NAN", "NAN"],
304                "K_Pu": ["NAN", "NAN", 400, "NAN", "NAN", "NAN", "NAN"],
305                "K_I": ["NAN", "NAN", 5, "NAN", "NAN", "NAN", "NAN"],
306                "K_D": ["NAN", "NAN", 0, "NAN", "NAN", "NAN", "NAN"],
307                "I_Max": ["NAN", "NAN", 2200, "NAN", "NAN", "NAN", "NAN"],
308                "S_Power": ["NAN", "NAN", 800, "NAN", "NAN", "NAN", "NAN"],
309                "MinAllocPower": ["NAN", "NAN", 800, "NAN", "NAN", "NAN", "NAN"],
310                "MaxAllocPower": ["NAN", "NAN", 4600, "NAN", "NAN", "NAN", "NAN"],
311                "I_Cutoff": ["NAN", "NAN", 4, "NAN", "NAN", "NAN", "NAN"]
312            },
313            "BindedCdevInfo": [
314                {
315                    "CdevRequest": "thermal-cpufreq-0",
316                    "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1],
317                    "MaxReleaseStep": 1,
318                    "MaxThrottleStep": 1,
319                    "BindedPowerRail": "S4M_VDD_CPUCL0",
320                    "CdevCeilingFrequency": [1950000, 1696000, 1696000, 1696000, 1696000, 1696000, 1696000]
321                },
322                {
323                    "CdevRequest": "thermal-cpufreq-1",
324                    "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1],
325                    "MaxReleaseStep": 1,
326                    "MaxThrottleStep": 2,
327                    "BindedPowerRail": "S2M_VDD_CPUCL1",
328                    "CdevCeilingFrequency": [2600000, 1795000, 1795000, 1795000, 1795000, 1795000, 1795000]
329                },
330                {
331                    "CdevRequest": "thermal-cpufreq-2",
332                    "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1],
333                    "MaxReleaseStep": 1,
334                    "MaxThrottleStep": 2,
335                    "BindedPowerRail": "S3M_VDD_CPUCL2",
336                    "CdevCeilingFrequency": [3105000, 1396000, 1396000, 1396000, 1396000, 1396000, 1396000]
337                }
338            ],
339            "Profile": [
340                {
341                    "Mode": "game",
342                    "BindedCdevInfo": [
343                        {
344                           "CdevRequest": "thermal-cpufreq-0",
345                           "BindedPowerRail": "S4M_VDD_CPUCL0",
346                           "MaxReleaseStep": 1,
347                           "Disabled":true
348                        },
349                        {
350                           "CdevRequest": "thermal-cpufreq-1",
351                           "BindedPowerRail": "S2M_VDD_CPUCL1",
352                           "MaxReleaseStep": 1,
353                           "Disabled":true
354                        },
355                        {
356                           "CdevRequest": "thermal-cpufreq-2",
357                           "BindedPowerRail": "S3M_VDD_CPUCL2",
358                           "MaxReleaseStep": 1,
359                           "Disabled":true
360                        }
361                    ]
362                }
363            ]
364        },
365        {
366            "Name": "VIRTUAL-SKIN-CPU-MID",
367            "Type": "UNKNOWN",
368            "Hidden": true,
369            "VirtualSensor": true,
370            "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"],
371            "Formula": "MAXIMUM",
372            "Combination": ["VIRTUAL-SKIN"],
373            "Coefficient": [1.0],
374            "HotThreshold": ["NAN", 39.0, 41.0, "NAN", "NAN", "NAN", "NAN"],
375            "HotHysteresis": [0.0, 0.0, 1.9, 0.0, 0.0, 0.0, 0.0],
376            "Multiplier": 0.001,
377            "PollingDelay": 300000,
378            "PassiveDelay": 7000,
379            "PIDInfo": {
380                "K_Po": ["NAN", "NAN", 400, "NAN", "NAN", "NAN", "NAN"],
381                "K_Pu": ["NAN", "NAN", 400, "NAN", "NAN", "NAN", "NAN"],
382                "K_I": ["NAN", "NAN", 5, "NAN", "NAN", "NAN", "NAN"],
383                "K_D": ["NAN", "NAN", 0, "NAN", "NAN", "NAN", "NAN"],
384                "I_Max": ["NAN", "NAN", 1500, "NAN", "NAN", "NAN", "NAN"],
385                "S_Power": ["NAN", "NAN", 700, "NAN", "NAN", "NAN", "NAN"],
386                "MinAllocPower": ["NAN", "NAN", 0, "NAN", "NAN", "NAN", "NAN"],
387                "MaxAllocPower": ["NAN", "NAN", 2800, "NAN", "NAN", "NAN", "NAN"],
388                "I_Cutoff": ["NAN", "NAN", 4, "NAN", "NAN", "NAN", "NAN"]
389            },
390            "BindedCdevInfo": [
391                {
392                    "CdevRequest": "thermal-cpufreq-0",
393                    "CdevWeightForPID": [0.292, 0.292, 0.292, 0.292, 0.292, 0.292, 0.292],
394                    "MaxReleaseStep": 1,
395                    "MaxThrottleStep": 1,
396                    "CdevCeilingFrequency": [1950000, 1098000, 1098000, 1098000, 1098000, 1098000, 1098000]
397                },
398                {
399                    "CdevRequest": "thermal-cpufreq-1",
400                    "CdevWeightForPID": [0.804, 0.804, 0.804, 0.804, 0.804, 0.804, 0.804],
401                    "MaxReleaseStep": 1,
402                    "MaxThrottleStep": 2,
403                    "CdevCeilingFrequency": [2600000, 1221000, 1221000, 1221000, 1221000, 1221000, 1221000]
404                },
405                {
406                    "CdevRequest": "thermal-cpufreq-2",
407                    "CdevWeightForPID": [0.342, 0.342, 0.342, 0.342, 0.342, 0.342, 0.342],
408                    "MaxReleaseStep": 1,
409                    "MaxThrottleStep": 2,
410                    "CdevCeilingFrequency": [3105000, 700000, 700000, 700000, 700000, 700000, 700000]
411
412                }
413            ],
414            "Profile": [
415                {
416                    "Mode": "game",
417                    "BindedCdevInfo": [
418                        {
419                            "CdevRequest": "thermal-cpufreq-0",
420                            "MaxReleaseStep": 1,
421                            "Disabled": true
422                        },
423                        {
424                            "CdevRequest": "thermal-cpufreq-1",
425                            "MaxReleaseStep": 1,
426                            "Disabled": true
427                        },
428                        {
429                            "CdevRequest": "thermal-cpufreq-2",
430                            "MaxReleaseStep": 1,
431                            "Disabled": true
432                        }
433                    ]
434                },
435                {
436                    "Mode": "camera",
437                    "BindedCdevInfo": [
438                        {
439                            "CdevRequest": "thermal-cpufreq-0",
440                            "MaxReleaseStep": 1,
441                            "Disabled": true
442                        },
443                        {
444                            "CdevRequest": "thermal-cpufreq-1",
445                            "MaxReleaseStep": 1,
446                            "Disabled": true
447                        },
448                        {
449                            "CdevRequest": "thermal-cpufreq-2",
450                            "MaxReleaseStep": 1,
451                            "Disabled": true
452                        }
453                    ]
454                }
455            ]
456        },
457        {
458            "Name": "VIRTUAL-SKIN-CPU-HIGH",
459            "Type": "UNKNOWN",
460            "Hidden": true,
461            "VirtualSensor": true,
462            "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"],
463            "Formula": "MAXIMUM",
464            "Combination": ["VIRTUAL-SKIN"],
465            "Coefficient": [1.0],
466            "HotThreshold": ["NAN", 41.0, 43.0, 53.0, "NAN", "NAN", "NAN"],
467            "HotHysteresis": [0.0, 0.0, 1.9, 1.9, 0.0, 0.0, 0.0],
468            "Multiplier": 0.001,
469            "PollingDelay": 300000,
470            "PassiveDelay": 7000,
471            "PIDInfo": {
472                "K_Po": ["NAN", "NAN", 400, "NAN", "NAN", "NAN", "NAN"],
473                "K_Pu": ["NAN", "NAN", 400, "NAN", "NAN", "NAN", "NAN"],
474                "K_I": ["NAN", "NAN", 5, "NAN", "NAN", "NAN", "NAN"],
475                "K_D": ["NAN", "NAN", 0, "NAN", "NAN", "NAN", "NAN"],
476                "I_Max": ["NAN", "NAN", 1000, "NAN", "NAN", "NAN", "NAN"],
477                "S_Power": ["NAN", "NAN", 600, "NAN", "NAN", "NAN", "NAN"],
478                "MinAllocPower": ["NAN", "NAN", 0, "NAN", "NAN", "NAN", "NAN"],
479                "MaxAllocPower": ["NAN", "NAN", 1600, "NAN", "NAN", "NAN", "NAN"],
480                "I_Cutoff": ["NAN", "NAN", 4, "NAN", "NAN", "NAN", "NAN"]
481            },
482            "BindedCdevInfo": [
483                {
484                    "CdevRequest": "thermal-cpufreq-0",
485                    "CdevWeightForPID": [0.156, 0.156, 0.156, 0.156, 0.156, 0.156, 0.156],
486                    "MaxReleaseStep": 1,
487                    "MaxThrottleStep": 1,
488                    "CdevCeilingFrequency": [1950000, 820000, 820000, 820000, 820000, 820000, 820000]
489                },
490                {
491                    "CdevRequest": "thermal-cpufreq-1",
492                    "CdevWeightForPID": [0.428, 0.428, 0.428, 0.428, 0.428, 0.428, 0.428],
493                    "MaxReleaseStep": 1,
494                    "MaxThrottleStep": 2,
495                    "CdevCeilingFrequency": [2600000, 787000, 787000, 787000, 787000, 787000, 787000]
496                },
497                {
498                    "CdevRequest": "thermal-cpufreq-2",
499                    "CdevWeightForPID": [0.225, 0.225, 0.225, 0.225, 0.225, 0.225, 0.225],
500                    "MaxReleaseStep": 1,
501                    "MaxThrottleStep": 2,
502                    "CdevCeilingFrequency": [3105000, 700000, 700000, 700000, 700000, 700000, 700000]
503                }
504            ],
505            "Profile": [
506                {
507                    "Mode": "game",
508                    "BindedCdevInfo": [
509                        {
510                            "CdevRequest": "thermal-cpufreq-0",
511                            "MaxReleaseStep": 1,
512                            "Disabled": true
513                        },
514                        {
515                            "CdevRequest": "thermal-cpufreq-1",
516                            "MaxReleaseStep": 1,
517                            "Disabled": true
518                        },
519                        {
520                            "CdevRequest": "thermal-cpufreq-2",
521                            "MaxReleaseStep": 1,
522                            "Disabled": true
523                        }
524                    ]
525                },
526                {
527                    "Mode": "camera",
528                    "BindedCdevInfo": [
529                        {
530                            "CdevRequest": "thermal-cpufreq-0",
531                            "CdevWeightForPID": [
532                                0.156, 0.156, 0.156, 0.156, 0.156, 0.156, 0.156
533                            ],
534                            "MaxReleaseStep": 1,
535                            "MaxThrottleStep": 1,
536                            "CdevCeilingFrequency": [1950000, 1696000, 1696000, 1696000, 1696000, 1696000, 1696000]
537                         },
538                         {
539                            "CdevRequest": "thermal-cpufreq-1",
540                            "CdevWeightForPID": [0.428, 0.428, 0.428, 0.428, 0.428, 0.428, 0.428],
541                            "MaxReleaseStep": 1,
542                            "MaxThrottleStep": 2,
543                            "CdevCeilingFrequency": [2600000, 1795000, 1795000, 1795000, 1795000, 1795000, 1795000]
544                         },
545                         {
546                            "CdevRequest": "thermal-cpufreq-2",
547                            "CdevWeightForPID": [0.225, 0.225, 0.225, 0.225, 0.225, 0.225, 0.225],
548                            "MaxReleaseStep": 1,
549                            "MaxThrottleStep": 2,
550                            "CdevCeilingFrequency": [3105000, 1396000, 1396000, 1396000, 1396000, 1396000, 1396000]
551                        }
552                    ]
553                }
554            ]
555        },
556        {
557            "Name": "VIRTUAL-SKIN-SOC",
558            "Type": "UNKNOWN",
559            "Hidden": true,
560            "VirtualSensor": true,
561            "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"],
562            "Formula": "MAXIMUM",
563            "Combination": ["VIRTUAL-SKIN"],
564            "Coefficient": [1.0],
565            "HotThreshold": ["NAN", 37.0, 43.0, 45.0, 46.5, 53.0, 57.0],
566            "HotHysteresis": [0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
567            "Multiplier": 0.001,
568            "PollingDelay": 300000,
569            "PassiveDelay": 7000,
570            "PIDInfo": {
571                "K_Po": ["NAN", "NAN", "NAN", 300, "NAN", "NAN", "NAN"],
572                "K_Pu": ["NAN", "NAN", "NAN", 300, "NAN", "NAN", "NAN"],
573                "K_I": ["NAN", "NAN", "NAN", 5, "NAN", "NAN", "NAN"],
574                "K_D": ["NAN", "NAN", "NAN", 0, "NAN", "NAN", "NAN"],
575                "I_Max": ["NAN", "NAN", "NAN", 2600, "NAN", "NAN", "NAN"],
576                "S_Power": ["NAN", "NAN", "NAN", 800, "NAN", "NAN", "NAN"],
577                "MinAllocPower": ["NAN", "NAN", "NAN", 800, "NAN", "NAN", "NAN"],
578                "MaxAllocPower": ["NAN", "NAN", "NAN", 3900, "NAN", "NAN", "NAN"],
579                "I_Cutoff": ["NAN", "NAN", "NAN", 8, "NAN", "NAN", "NAN"]
580            },
581            "BindedCdevInfo": [
582                {
583                    "CdevRequest": "thermal-cpufreq-0",
584                    "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1],
585                    "MaxReleaseStep": 1,
586                    "MaxThrottleStep": 1,
587                    "BindedPowerRail": "S4M_VDD_CPUCL0",
588                    "CdevCeilingFrequency": [1950000, 820000, 820000, 820000, 820000, 820000, 820000],
589                    "LimitInfoFrequency": [1950000, 1950000, 1950000, 1950000, 1950000, 820000, 820000]
590                },
591                {
592                    "CdevRequest": "thermal-cpufreq-1",
593                    "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1],
594                    "MaxReleaseStep": 1,
595                    "MaxThrottleStep": 2,
596                    "BindedPowerRail": "S2M_VDD_CPUCL1",
597                    "CdevCeilingFrequency": [2600000, 787000, 787000, 787000, 648000, 357000, 357000],
598                    "LimitInfoFrequency": [2600000, 2600000, 2600000, 2600000, 2600000, 357000, 357000]
599                },
600                {
601                    "CdevRequest": "thermal-cpufreq-2",
602                    "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1],
603                    "MaxReleaseStep": 1,
604                    "MaxThrottleStep": 2,
605                    "BindedPowerRail": "S3M_VDD_CPUCL2",
606                    "CdevCeilingFrequency": [3105000, 700000, 700000, 700000, 700000, 700000, 700000],
607                    "LimitInfoFrequency": [3105000, 3105000, 3105000, 3105000, 3105000, 700000, 700000]
608                },
609                {
610                    "CdevRequest": "thermal-gpufreq-0",
611                    "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1],
612                    "MaxReleaseStep": 1,
613                    "MaxThrottleStep": 1,
614                    "BindedPowerRail": "S2S_VDD_G3D",
615                    "CdevCeilingFrequency": [940000, 419000, 419000, 419000, 376000, 302000, 302000],
616                    "LimitInfoFrequency": [940000, 940000, 940000, 940000, 940000, 302000, 302000]
617                },
618                {
619                    "CdevRequest": "tpu_cooling",
620                    "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1],
621                    "MaxReleaseStep": 1,
622                    "MaxThrottleStep": 1,
623                    "BindedPowerRail": "S7M_VDD_TPU",
624                    "CdevCeiling": [0, 7, 7, 7, 7, 7, 7],
625                    "LimitInfo": [0, 0, 0, 0, 0, 7, 7]
626                }
627            ]
628        },
629        {
630            "Name": "VIRTUAL-SKIN-GPU",
631            "Type": "UNKNOWN",
632            "Hidden": true,
633            "VirtualSensor": true,
634            "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"],
635            "Formula": "MAXIMUM",
636            "Combination": ["VIRTUAL-SKIN"],
637            "Coefficient": [1.0],
638            "HotThreshold": ["NAN", 43.0, 45.0, 46.5, 53.0, "NAN", "NAN"],
639            "HotHysteresis": [0.0, 1.9, 1.9, 1.4, 1.9, 0.0, 0.0],
640            "Multiplier": 0.001,
641            "PollingDelay": 300000,
642            "PassiveDelay": 7000,
643            "PIDInfo": {
644                "K_Po": ["NAN", "NAN", 700, "NAN", "NAN", "NAN", "NAN"],
645                "K_Pu": ["NAN", "NAN", 700, "NAN", "NAN", "NAN", "NAN"],
646                "K_I": ["NAN", "NAN", 5, "NAN", "NAN", "NAN", "NAN"],
647                "K_D": ["NAN", "NAN", 0, "NAN", "NAN", "NAN", "NAN"],
648                "I_Max": ["NAN", "NAN", 1723, "NAN", "NAN", "NAN", "NAN"],
649                "S_Power": ["NAN", "NAN", 473, "NAN", "NAN", "NAN", "NAN"],
650                "MinAllocPower": ["NAN", "NAN", 0, "NAN", "NAN", "NAN", "NAN"],
651                "MaxAllocPower": ["NAN", "NAN", 2500, "NAN", "NAN", "NAN", "NAN"],
652                "I_Cutoff": ["NAN", "NAN", 4, "NAN", "NAN", "NAN", "NAN"]
653            },
654            "BindedCdevInfo": [
655                {
656                    "CdevRequest": "thermal-gpufreq-0",
657                    "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1],
658                    "CdevCeilingFrequency": [940000, 419000, 419000, 376000, 302000, 302000, 302000]
659                }
660            ]
661        },
662        {
663            "Name": "cellular-emergency",
664            "Type": "POWER_AMPLIFIER",
665            "VirtualSensor": true,
666            "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"],
667            "Formula": "MAXIMUM",
668            "Combination": ["VIRTUAL-SKIN"],
669            "Coefficient": [1.0],
670            "HotThreshold": ["NAN", "NAN", "NAN", "NAN", "NAN", 55.0, "NAN"],
671            "HotHysteresis": [0.0, 0.0, 0.0, 0.0, 0.0, 1.9, 0.0],
672            "Multiplier": 0.001,
673            "PollingDelay": 300000,
674            "PassiveDelay": 7000,
675            "SendCallback": true
676        },
677        {
678            "Name": "VIRTUAL-SKIN-OUTER-DISPLAY",
679            "Type": "DISPLAY",
680            "Version": "2.0",
681            "VirtualSensor": true,
682            "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"],
683            "Formula": "MAXIMUM",
684            "Combination": ["display_therm"],
685            "Coefficient": [0.956],
686            "Offset": 1102,
687            "HotThreshold": ["NAN", 39.0, 43.0, 45.0, 46.5, 53.0, 57.0],
688            "HotHysteresis": [0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
689            "Multiplier": 0.001,
690            "SendCallback": true,
691            "PollingDelay": 300000,
692            "PassiveDelay": 7000
693        },
694        {
695            "Name": "VIRTUAL-SKIN-INNER-DISPLAY",
696            "Type": "DISPLAY",
697            "Version": "1.0",
698            "VirtualSensor": true,
699            "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"],
700            "Formula": "MAXIMUM",
701            "Combination": ["VIRTUAL-SKIN-OPEN"],
702            "Coefficient": [1.0],
703            "HotThreshold": ["NAN", 39.0, 43.0, 45.0, 46.5, 53.0, 57.0],
704            "HotHysteresis": [0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
705            "Multiplier": 0.001,
706            "SendCallback": true,
707            "PollingDelay": 300000,
708            "PassiveDelay": 7000
709        },
710        {
711            "Name": "thb_hda",
712            "Type": "UNKNOWN",
713            "Multiplier": 1
714        },
715        {
716            "Name": "WLC_CHECK",
717            "Type": "UNKNOWN",
718            "Hidden": true,
719            "VirtualSensor": true,
720            "Formula": "COUNT_THRESHOLD",
721            "Combination": ["thb_hda", "thb_hda"],
722            "Coefficient": [1, -51],
723            "Multiplier": 1
724        },
725        {
726            "Name": "IS_WLC",
727            "Type": "UNKNOWN",
728            "VirtualSensor": true,
729            "Formula": "COUNT_THRESHOLD",
730            "StepRatio": 0.2,
731            "Combination": ["WLC_CHECK"],
732            "Coefficient": [2],
733            "Multiplier": 1,
734            "PassiveDelay": 7000
735        },
736        {
737            "Name": "NO_WLC",
738            "Type": "UNKNOWN",
739            "Hidden": true,
740            "VirtualSensor": true,
741            "Formula": "WEIGHTED_AVG",
742            "Combination": ["1", "IS_WLC"],
743            "CombinationType": ["CONSTANT", "SENSOR"],
744            "Coefficient": [1.0, -1.0],
745            "Multiplier": 1
746        },
747        {
748            "Name": "VIRTUAL-SKIN-CHARGE-WLC-EQ",
749            "Type": "UNKNOWN",
750            "Hidden": true,
751            "VirtualSensor": true,
752            "Formula": "WEIGHTED_AVG",
753            "Combination": ["rffe_therm", "charger_therm", "gnss_tcxo_therm"],
754            "Coefficient": [0.588, 0.066, 0.306],
755            "Offset": 787,
756            "Multiplier": 0.001
757        },
758        {
759            "Name": "VIRTUAL-SKIN-CHARGE-WIRED-OPEN",
760            "Type": "UNKNOWN",
761            "Hidden": true,
762            "VirtualSensor": true,
763            "Formula": "WEIGHTED_AVG",
764            "Combination": ["soc_therm", "rffe_therm", "modem_therm", "gnss_tcxo_therm"],
765            "Coefficient": [0.119, 0.103, 0.481, 0.288],
766            "Offset": -203,
767            "Multiplier": 0.001
768        },
769        {
770            "Name": "VIRTUAL-SKIN-CHARGE-WIRED-CLOSE",
771            "Type": "UNKNOWN",
772            "Hidden": true,
773            "VirtualSensor": true,
774            "Formula": "WEIGHTED_AVG",
775            "Combination": ["soc_therm", "rffe_therm", "modem_therm"],
776            "Coefficient": [0.223, 0.175, 0.493],
777            "Offset": 2631,
778            "Multiplier": 0.001
779        },
780        {
781            "Name": "VIRTUAL-SKIN-CHARGE-WIRED-EQ",
782            "Type": "UNKNOWN",
783            "Hidden": true,
784            "VirtualSensor": true,
785            "Formula": "WEIGHTED_AVG",
786            "Combination": ["VIRTUAL-SKIN-CHARGE-WIRED-OPEN", "VIRTUAL-SKIN-CHARGE-WIRED-CLOSE"],
787            "Coefficient": ["OPEN_WEIGHT", "CLOSE_WEIGHT"],
788            "CoefficientType": ["SENSOR", "SENSOR"],
789            "Multiplier": 0.001
790        },
791        {
792            "Name": "VIRTUAL-SKIN-CHARGE-WIRED",
793            "Type": "UNKNOWN",
794            "Version": "0.2",
795            "VirtualSensor": true,
796            "TriggerSensor": "charger_therm",
797            "Formula": "MAXIMUM",
798            "Combination": ["VIRTUAL-SKIN-CHARGE-WIRED-EQ"],
799            "Coefficient": ["NO_WLC"],
800            "CoefficientType": ["SENSOR"],
801            "HotThreshold": ["NAN", 34.0, 38.0, 41.0, 45.0, 46.5, 57.0],
802            "HotHysteresis": [0.0, 1.9, 3.9, 2.9, 3.9, 1.4, 1.9],
803            "Multiplier": 0.001,
804            "PollingDelay": 300000,
805            "PassiveDelay": 7000,
806            "PIDInfo": {
807                "K_Po": ["NAN", "NAN", 119, "NAN", "NAN", "NAN", "NAN"],
808                "K_Pu": ["NAN", "NAN", 119, "NAN", "NAN", "NAN", "NAN"],
809                "K_I": ["NAN", "NAN", 50, "NAN", "NAN", "NAN", "NAN"],
810                "K_D": ["NAN", "NAN", 0, "NAN", "NAN", "NAN", "NAN"],
811                "I_Max": ["NAN", "NAN", 1302, "NAN", "NAN", "NAN", "NAN"],
812                "S_Power": ["NAN", "NAN", 2527, "NAN", "NAN", "NAN", "NAN"],
813                "MinAllocPower": ["NAN", "NAN", 0, "NAN", "NAN", "NAN", "NAN"],
814                "MaxAllocPower": ["NAN", "NAN", 6219, "NAN", "NAN", "NAN", "NAN"],
815                "I_Cutoff": ["NAN", "NAN", 6, "NAN", "NAN", "NAN", "NAN"],
816                "I_Default": 846
817            },
818            "ExcludedPowerInfo": [
819                {
820                    "PowerRail": "PARTIAL_SYSTEM_POWER",
821                    "PowerWeight": [0.12, 0.12, 1.0, 1.0, 1.0, 1.0, 1.0]
822                }
823            ],
824            "BindedCdevInfo": [
825                {
826                    "CdevRequest": "chg_mdis",
827                    "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1],
828                    "MaxReleaseStep": 1,
829                    "MaxThrottleStep": 1,
830                    "CdevCeiling": [0, 25, 25, 25, 26, 26, 26],
831                    "LimitInfo": [0, 0, 1, 1, 1, 26, 26]
832                }
833            ]
834        },
835        {
836            "Name": "VIRTUAL-SKIN-CHARGE-PERSIST",
837            "Type": "UNKNOWN",
838            "Version": "2.0",
839            "VirtualSensor": true,
840            "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"],
841            "Formula": "WEIGHTED_AVG",
842            "Combination":["VIRTUAL-SKIN-CHARGE-WLC-EQ", "VIRTUAL-SKIN-CHARGE-WIRED-EQ"],
843            "Coefficient":["IS_WLC", "NO_WLC"],
844            "CoefficientType": ["SENSOR", "SENSOR"],
845            "HotThreshold": ["NaN", 35.0, 41.0, 45.0, 47.0, 51.0, 57.0],
846            "HotHysteresis": [0.0, 1.9, 1.9, 3.9, 1.9, 1.9, 1.9],
847            "Multiplier": 0.001,
848            "PollingDelay": 300000,
849            "PassiveDelay": 7000,
850            "PIDInfo": {
851                "K_Po": ["NaN", "NaN", 213, "NaN", "NaN", "NaN", "NaN"],
852                "K_Pu": ["NaN", "NaN", 213, "NaN", "NaN", "NaN", "NaN"],
853                "K_I": ["NaN", "NaN", 27, "NaN", "NaN", "NaN", "NaN"],
854                "K_D": ["NaN", "NaN", 0, "NaN", "NaN", "NaN", "NaN"],
855                "I_Max": ["NaN", "NaN", 1383, "NaN", "NaN", "NaN", "NaN"],
856                "S_Power": ["NaN", "NaN", 2383, "NaN", "NaN", "NaN", "NaN"],
857                "MinAllocPower": ["NaN", "NaN", 0, "NaN", "NaN", "NaN", "NaN"],
858                "MaxAllocPower": ["NaN", "NaN", 8022, "NaN", "NaN", "NaN", "NaN"],
859                "I_Cutoff": ["NaN", "NaN", 8, "NaN", "NaN", "NaN", "NaN"],
860                "I_Default": 1383
861            },
862            "ExcludedPowerInfo": [
863                {
864                    "PowerRail": "PARTIAL_SYSTEM_POWER",
865                    "PowerWeight": [0.21, 0.21, 0.21, 0.21, 0.42, 0.42, 0.42]
866                }
867            ],
868            "BindedCdevInfo": [
869                {
870                    "CdevRequest": "chg_mdis",
871                    "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1],
872                    "MaxReleaseStep": 1,
873                    "MaxThrottleStep": 1,
874                    "CdevCeiling": [0, 25, 25, 26, 26, 26, 26],
875                    "LimitInfo": [0, 0, 1, 1, 26, 26, 26]
876                }
877            ]
878        },
879        {
880            "Name": "VIRTUAL-SKIN-SPEAKER-LEGACY",
881            "Type": "UNKNOWN",
882            "Version": "0.1",
883            "Hidden": true,
884            "VirtualSensor": true,
885            "Formula": "WEIGHTED_AVG",
886            "Combination": ["usb_conn_therm", "maxfg_base"],
887            "Coefficient": [0.89, 0.01],
888            "Offset": 8426,
889            "Multiplier": 0.001
890        },
891        {
892            "Name": "VIRTUAL-SKIN-SPEAKER-MODEL",
893            "Type": "UNKNOWN",
894            "Version": "1.0",
895            "Hidden": true,
896            "VirtualSensor": true,
897            "ModelPath": "vt_speaker_estimation_model.tflite",
898            "Formula": "USE_ML_MODEL",
899            "Combination": ["soc_therm", "rffe_therm", "charger_therm", "usb_conn_therm", "modem_therm", "inner_display_therm", "display_therm",  "gnss_tcxo_therm", "maxfg_base", "maxfg_secondary", "inner_brightness"],
900            "Multiplier": 0.001,
901            "PreviousSampleCount": 3,
902            "BackupSensor" : "VIRTUAL-SKIN-SPEAKER-LEGACY",
903            "TimeResolution": 7000
904        },
905        {
906            "Name": "VIRTUAL-SKIN-SPEAKER-MODEL-LEGACY-DIFF",
907            "Type": "UNKNOWN",
908            "VirtualSensor": true,
909            "Hidden": true,
910            "Formula": "WEIGHTED_AVG",
911            "Combination": ["VIRTUAL-SKIN-SPEAKER-MODEL", "VIRTUAL-SKIN-SPEAKER-LEGACY"],
912            "Coefficient": [1.0, -1.0],
913            "Multiplier": 1
914        },
915        {
916            "Name": "IS_VSKIN_SPEAKER_MODEL_WITHIN_RANGE_CHECK",
917            "Type": "UNKNOWN",
918            "Hidden": true,
919            "VirtualSensor": true,
920            "Formula":"COUNT_THRESHOLD",
921            "Combination":["VIRTUAL-SKIN-SPEAKER-MODEL", "VIRTUAL-SKIN-SPEAKER-MODEL"],
922            "Coefficient":[20000, -57000],
923            "Multiplier":1
924        },
925        {
926            "Name":"IS_VSKIN_SPEAKER_MODEL_WITHIN_RANGE",
927            "Type":"UNKNOWN",
928            "Hidden":true,
929            "VirtualSensor":true,
930            "Formula":"COUNT_THRESHOLD",
931            "Combination":["IS_VSKIN_SPEAKER_MODEL_WITHIN_RANGE_CHECK"],
932            "Coefficient":[2],
933            "Multiplier":1
934        },
935        {
936            "Name":"NO_VSKIN_SPEAKER_MODEL_WITHIN_RANGE",
937            "Type":"UNKNOWN",
938            "Hidden":true,
939            "VirtualSensor":true,
940            "Formula":"COUNT_THRESHOLD",
941            "Combination":["IS_VSKIN_SPEAKER_MODEL_WITHIN_RANGE_CHECK"],
942            "Coefficient":[-2],
943            "Multiplier":1
944        },
945        {
946            "Name": "VIRTUAL-SKIN-SPEAKER",
947            "Type": "UNKNOWN",
948            "Version": "2.0",
949            "VirtualSensor": true,
950            "TriggerSensor": "usb_conn_therm",
951            "Formula": "WEIGHTED_AVG",
952            "Combination": ["VIRTUAL-SKIN-SPEAKER-MODEL", "VIRTUAL-SKIN-SPEAKER-LEGACY"],
953            "Coefficient": ["IS_VSKIN_SPEAKER_MODEL_WITHIN_RANGE", "NO_VSKIN_SPEAKER_MODEL_WITHIN_RANGE"],
954            "CoefficientType": ["SENSOR", "SENSOR"],
955            "HotThreshold": ["NAN", 37.0, "NAN", "NAN", "NAN", "NAN", "NAN"],
956            "HotHysteresis": [0.0, 1.9, 0.0, 0.0, 0.0, 0.0, 0.0],
957            "Multiplier": 0.001,
958            "StepRatio": 0.4,
959            "PollingDelay": 300000,
960            "PassiveDelay": 7000,
961            "SendCallback": true
962        },
963        {
964            "Name": "USB-MINUS-CHARGER",
965            "Type": "UNKNOWN",
966            "VirtualSensor": true,
967            "Hidden": true,
968            "TriggerSensor": "usb_conn_therm",
969            "Formula": "WEIGHTED_AVG",
970            "Combination": ["usb_conn_therm", "charger_therm"],
971            "Coefficient": [1.0, -1.0],
972            "Multiplier": 0.001
973        },
974        {
975            "Name": "VIRTUAL-USB-THROTTLING",
976            "Type": "USB_PORT",
977            "Version": "0.1",
978            "VirtualSensor": true,
979            "Formula": "COUNT_THRESHOLD",
980            "TriggerSensor": "usb_conn_therm",
981            "Combination": ["usb_conn_therm", "USB-MINUS-CHARGER"],
982            "Coefficient": [46000, 7000],
983            "HotThreshold": ["NAN", "NAN", "NAN", "NAN", "2.0", "NAN", "NAN"],
984            "BindedCdevInfo": [
985                {
986                    "CdevRequest": "usbc-port",
987                    "LimitInfo": [0, 0, 0, 0, 1, 1, 1]
988                }
989            ],
990            "Multiplier": 1,
991            "PollingDelay": 300000,
992            "PassiveDelay": 7000
993        },
994        {
995            "Name": "VIRTUAL-USB-UI",
996            "Type": "USB_PORT",
997            "Version": "0.1",
998            "VirtualSensor": true,
999            "Formula": "COUNT_THRESHOLD",
1000            "TriggerSensor": "usb_conn_therm",
1001            "Combination": ["usb_conn_therm", "USB-MINUS-CHARGER"],
1002            "Coefficient": [46000, 10000],
1003            "HotThreshold": ["NAN", "NAN", "NAN", "NAN", "NAN", "2.0", "NAN"],
1004            "Multiplier": 1,
1005            "SendCallback": true,
1006            "PollingDelay": 300000,
1007            "PassiveDelay": 7000
1008        },
1009        {
1010            "Name": "LEFT-INNER-DISPLAY",
1011            "Type": "UNKNOWN",
1012            "Hidden": true,
1013            "VirtualSensor": true,
1014            "Formula": "WEIGHTED_AVG",
1015            "Combination": ["display_therm", "maxfg_secondary"],
1016            "Coefficient": [0.516, 0.535],
1017            "Offset": -26,
1018            "Multiplier": 0.001
1019        },
1020        {
1021            "Name": "RIGHT-INNER-DISPLAY",
1022            "Type": "UNKNOWN",
1023            "Hidden": true,
1024            "VirtualSensor": true,
1025            "Formula": "WEIGHTED_AVG",
1026            "Combination": ["usb_conn_therm", "maxfg_base"],
1027            "Coefficient": [0.045, 0.849],
1028            "Offset": 2975,
1029            "Multiplier": 0.001
1030        },
1031        {
1032            "Name": "INNER-DISPLAY-DIFF",
1033            "Type": "UNKNOWN",
1034            "VirtualSensor": true,
1035            "Formula": "WEIGHTED_AVG",
1036            "Combination": ["RIGHT-INNER-DISPLAY", "LEFT-INNER-DISPLAY"],
1037            "Coefficient": [1.0, -1.0],
1038            "Multiplier": 0.001
1039        },
1040        {
1041            "Name": "LITTLE",
1042            "Type": "CPU",
1043            "HotThreshold": ["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", 115.0],
1044            "VrThreshold": "NAN",
1045            "Multiplier": 0.001
1046        },
1047        {
1048            "Name": "MID",
1049            "Type": "CPU",
1050            "HotThreshold": ["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", 115.0],
1051            "VrThreshold": "NAN",
1052            "Multiplier": 0.001
1053        },
1054        {
1055            "Name": "BIG",
1056            "Type": "CPU",
1057            "HotThreshold": ["NaN", "NaN", "NaN", "NaN", "NaN", "NaN", "NaN"],
1058            "Multiplier": 0.001
1059        },
1060        {
1061            "Name": "G3D",
1062            "Type": "GPU",
1063            "HotThreshold": ["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", 115.0],
1064            "VrThreshold": "NAN",
1065            "Multiplier": 0.001
1066        },
1067        {
1068            "Name": "TPU",
1069            "Type": "NPU",
1070            "HotThreshold": ["NaN", "NaN", "NaN", "NaN", "NaN", "NaN", "NaN"],
1071            "Multiplier": 0.001
1072        },
1073        {
1074            "Name": "STATS-UPDATOR",
1075            "Type": "UNKNOWN",
1076            "VirtualSensor": true,
1077            "Hidden": true,
1078            "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm", "usb_conn_therm"],
1079            "Formula": "WEIGHTED_AVG",
1080            "Combination": ["VIRTUAL-SKIN-MODEL", "VIRTUAL-SKIN-LEGACY", "VIRTUAL-SKIN-MODEL-LEGACY-DIFF",
1081                            "VIRTUAL-SKIN-SPEAKER-MODEL", "VIRTUAL-SKIN-SPEAKER-LEGACY", "VIRTUAL-SKIN-SPEAKER-MODEL-LEGACY-DIFF"],
1082            "Coefficient": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
1083            "Multiplier": 1,
1084            "SendPowerHint": true,
1085            "PollingDelay": 300000,
1086            "PassiveDelay": 7000
1087        },
1088        {
1089            "Name": "IS_WLC_WITHOUT_STEP_RATIO",
1090            "Type": "UNKNOWN",
1091            "Hidden": true,
1092            "VirtualSensor": true,
1093            "Formula":"COUNT_THRESHOLD",
1094            "Combination":["WLC_CHECK"],
1095            "Coefficient":[2],
1096            "Multiplier":1
1097        },
1098        {
1099            "Name": "NO_WLC_WITHOUT_STEP_RATIO",
1100            "Type": "UNKNOWN",
1101            "Hidden": true,
1102            "VirtualSensor": true,
1103            "Formula":"COUNT_THRESHOLD",
1104            "Combination":["WLC_CHECK"],
1105            "Coefficient":[-2],
1106            "Multiplier":1
1107        },
1108        {
1109            "Name": "VIRTUAL-SKIN-CHARGE-DURING-WLC-STATS",
1110            "Type":"UNKNOWN",
1111            "Hidden": true,
1112            "VirtualSensor":true,
1113            "Formula":"WEIGHTED_AVG",
1114            "Combination":["VIRTUAL-SKIN-CHARGE-WLC-EQ", -1000000],
1115            "CombinationType": ["SENSOR", "CONSTANT"],
1116            "Coefficient":["IS_WLC_WITHOUT_STEP_RATIO", "NO_WLC_WITHOUT_STEP_RATIO"],
1117            "CoefficientType": ["SENSOR", "SENSOR"],
1118            "Multiplier": 0.001
1119        },
1120        {
1121            "Name": "IS_WIRED_SUB5W_CHECK",
1122            "Type": "UNKNOWN",
1123            "Hidden": true,
1124            "VirtualSensor": true,
1125            "Formula":"COUNT_THRESHOLD",
1126            "Combination":["thb_hda", "thb_hda"],
1127            "Coefficient":[51, -52],
1128            "Multiplier":1
1129        },
1130        {
1131            "Name":"IS_WIRED_SUB5W",
1132            "Type":"UNKNOWN",
1133            "Hidden":true,
1134            "VirtualSensor":true,
1135            "Formula":"COUNT_THRESHOLD",
1136            "Combination":["IS_WIRED_SUB5W_CHECK"],
1137            "Coefficient":[2],
1138            "Multiplier":1
1139        },
1140        {
1141            "Name":"NO_WIRED_SUB5W",
1142            "Type":"UNKNOWN",
1143            "Hidden":true,
1144            "VirtualSensor":true,
1145            "Formula":"COUNT_THRESHOLD",
1146            "Combination":["IS_WIRED_SUB5W_CHECK"],
1147            "Coefficient":[-2],
1148            "Multiplier":1
1149        },
1150        {
1151            "Name": "VIRTUAL-SKIN-CHARGE-DURING-WIRED-SUB5W-STATS",
1152            "Type":"UNKNOWN",
1153            "Hidden": true,
1154            "VirtualSensor":true,
1155            "Formula":"WEIGHTED_AVG",
1156            "Combination":["VIRTUAL-SKIN-CHARGE-WIRED-EQ", -1000000],
1157            "CombinationType": ["SENSOR", "CONSTANT"],
1158            "Coefficient":["IS_WIRED_SUB5W", "NO_WIRED_SUB5W"],
1159            "CoefficientType": ["SENSOR", "SENSOR"],
1160            "Multiplier": 0.001
1161        },
1162        {
1163            "Name": "IS_WIRED_5W_CHECK",
1164            "Type": "UNKNOWN",
1165            "Hidden": true,
1166            "VirtualSensor": true,
1167            "Formula":"COUNT_THRESHOLD",
1168            "Combination":["thb_hda", "thb_hda"],
1169            "Coefficient":[52, -53],
1170            "Multiplier":1
1171        },
1172        {
1173            "Name":"IS_WIRED_5W",
1174            "Type":"UNKNOWN",
1175            "Hidden":true,
1176            "VirtualSensor":true,
1177            "Formula":"COUNT_THRESHOLD",
1178            "Combination":["IS_WIRED_5W_CHECK"],
1179            "Coefficient":[2],
1180            "Multiplier":1
1181        },
1182        {
1183            "Name":"NO_WIRED_5W",
1184            "Type":"UNKNOWN",
1185            "Hidden":true,
1186            "VirtualSensor":true,
1187            "Formula":"COUNT_THRESHOLD",
1188            "Combination":["IS_WIRED_5W_CHECK"],
1189            "Coefficient":[-2],
1190            "Multiplier":1
1191        },
1192        {
1193            "Name": "VIRTUAL-SKIN-CHARGE-DURING-WIRED-5W-STATS",
1194            "Type":"UNKNOWN",
1195            "Hidden": true,
1196            "VirtualSensor":true,
1197            "Formula":"WEIGHTED_AVG",
1198            "Combination":["VIRTUAL-SKIN-CHARGE-WIRED-EQ", -1000000],
1199            "CombinationType": ["SENSOR", "CONSTANT"],
1200            "Coefficient":["IS_WIRED_5W", "NO_WIRED_5W"],
1201            "CoefficientType": ["SENSOR", "SENSOR"],
1202            "Multiplier": 0.001
1203        },
1204        {
1205            "Name": "IS_WIRED_7_5W_CHECK",
1206            "Type": "UNKNOWN",
1207            "Hidden": true,
1208            "VirtualSensor": true,
1209            "Formula":"COUNT_THRESHOLD",
1210            "Combination":["thb_hda", "thb_hda"],
1211            "Coefficient":[53, -54],
1212            "Multiplier":1
1213        },
1214        {
1215            "Name":"IS_WIRED_7_5W",
1216            "Type":"UNKNOWN",
1217            "Hidden":true,
1218            "VirtualSensor":true,
1219            "Formula":"COUNT_THRESHOLD",
1220            "Combination":["IS_WIRED_7_5W_CHECK"],
1221            "Coefficient":[2],
1222            "Multiplier":1
1223        },
1224        {
1225            "Name":"NO_WIRED_7_5W",
1226            "Type":"UNKNOWN",
1227            "Hidden":true,
1228            "VirtualSensor":true,
1229            "Formula":"COUNT_THRESHOLD",
1230            "Combination":["IS_WIRED_7_5W_CHECK"],
1231            "Coefficient":[-2],
1232            "Multiplier":1
1233        },
1234        {
1235            "Name": "VIRTUAL-SKIN-CHARGE-DURING-WIRED-7-5W-STATS",
1236            "Type":"UNKNOWN",
1237            "Hidden": true,
1238            "VirtualSensor":true,
1239            "Formula":"WEIGHTED_AVG",
1240            "Combination":["VIRTUAL-SKIN-CHARGE-WIRED-EQ", -1000000],
1241            "CombinationType": ["SENSOR", "CONSTANT"],
1242            "Coefficient":["IS_WIRED_7_5W", "NO_WIRED_7_5W"],
1243            "CoefficientType": ["SENSOR", "SENSOR"],
1244            "Multiplier": 0.001
1245        },
1246        {
1247            "Name": "IS_WIRED_15W_CHECK",
1248            "Type": "UNKNOWN",
1249            "Hidden": true,
1250            "VirtualSensor": true,
1251            "Formula":"COUNT_THRESHOLD",
1252            "Combination":["thb_hda", "thb_hda"],
1253            "Coefficient":[54, -55],
1254            "Multiplier":1
1255        },
1256        {
1257            "Name":"IS_WIRED_15W",
1258            "Type":"UNKNOWN",
1259            "Hidden":true,
1260            "VirtualSensor":true,
1261            "Formula":"COUNT_THRESHOLD",
1262            "Combination":["IS_WIRED_15W_CHECK"],
1263            "Coefficient":[2],
1264            "Multiplier":1
1265        },
1266        {
1267            "Name":"NO_WIRED_15W",
1268            "Type":"UNKNOWN",
1269            "Hidden":true,
1270            "VirtualSensor":true,
1271            "Formula":"COUNT_THRESHOLD",
1272            "Combination":["IS_WIRED_15W_CHECK"],
1273            "Coefficient":[-2],
1274            "Multiplier":1
1275        },
1276        {
1277            "Name": "VIRTUAL-SKIN-CHARGE-DURING-WIRED-15W-STATS",
1278            "Type":"UNKNOWN",
1279            "Hidden": true,
1280            "VirtualSensor":true,
1281            "Formula":"WEIGHTED_AVG",
1282            "Combination":["VIRTUAL-SKIN-CHARGE-WIRED-EQ", -1000000],
1283            "CombinationType": ["SENSOR", "CONSTANT"],
1284            "Coefficient":["IS_WIRED_15W", "NO_WIRED_15W"],
1285            "CoefficientType": ["SENSOR", "SENSOR"],
1286            "Multiplier": 0.001
1287        },
1288        {
1289            "Name": "IS_WIRED_18W_CHECK",
1290            "Type": "UNKNOWN",
1291            "Hidden": true,
1292            "VirtualSensor": true,
1293            "Formula":"COUNT_THRESHOLD",
1294            "Combination":["thb_hda", "thb_hda"],
1295            "Coefficient":[55, -56],
1296            "Multiplier":1
1297        },
1298        {
1299            "Name":"IS_WIRED_18W",
1300            "Type":"UNKNOWN",
1301            "Hidden":true,
1302            "VirtualSensor":true,
1303            "Formula":"COUNT_THRESHOLD",
1304            "Combination":["IS_WIRED_18W_CHECK"],
1305            "Coefficient":[2],
1306            "Multiplier":1
1307        },
1308        {
1309            "Name":"NO_WIRED_18W",
1310            "Type":"UNKNOWN",
1311            "Hidden":true,
1312            "VirtualSensor":true,
1313            "Formula":"COUNT_THRESHOLD",
1314            "Combination":["IS_WIRED_18W_CHECK"],
1315            "Coefficient":[-2],
1316            "Multiplier":1
1317        },
1318        {
1319            "Name": "VIRTUAL-SKIN-CHARGE-DURING-WIRED-18W-STATS",
1320            "Type":"UNKNOWN",
1321            "Hidden": true,
1322            "VirtualSensor":true,
1323            "Formula":"WEIGHTED_AVG",
1324            "Combination":["VIRTUAL-SKIN-CHARGE-WIRED-EQ", -1000000],
1325            "CombinationType": ["SENSOR", "CONSTANT"],
1326            "Coefficient":["IS_WIRED_18W", "NO_WIRED_18W"],
1327            "CoefficientType": ["SENSOR", "SENSOR"],
1328            "Multiplier": 0.001
1329        },
1330        {
1331            "Name": "IS_WIRED_GT18W_CHECK",
1332            "Type": "UNKNOWN",
1333            "Hidden": true,
1334            "VirtualSensor": true,
1335            "Formula":"COUNT_THRESHOLD",
1336            "Combination":["thb_hda", "thb_hda"],
1337            "Coefficient":[56, -57],
1338            "Multiplier":1
1339        },
1340        {
1341            "Name":"IS_WIRED_GT18W",
1342            "Type":"UNKNOWN",
1343            "Hidden":true,
1344            "VirtualSensor":true,
1345            "Formula":"COUNT_THRESHOLD",
1346            "Combination":["IS_WIRED_GT18W_CHECK"],
1347            "Coefficient":[2],
1348            "Multiplier":1
1349        },
1350        {
1351            "Name":"NO_WIRED_GT18W",
1352            "Type":"UNKNOWN",
1353            "Hidden":true,
1354            "VirtualSensor":true,
1355            "Formula":"COUNT_THRESHOLD",
1356            "Combination":["IS_WIRED_GT18W_CHECK"],
1357            "Coefficient":[-2],
1358            "Multiplier":1
1359        },
1360        {
1361            "Name": "VIRTUAL-SKIN-CHARGE-DURING-WIRED-GT18W-STATS",
1362            "Type":"UNKNOWN",
1363            "Hidden": true,
1364            "VirtualSensor":true,
1365            "Formula":"WEIGHTED_AVG",
1366            "Combination":["VIRTUAL-SKIN-CHARGE-WIRED-EQ", -1000000],
1367            "CombinationType": ["SENSOR", "CONSTANT"],
1368            "Coefficient":["IS_WIRED_GT18W", "NO_WIRED_GT18W"],
1369            "CoefficientType": ["SENSOR", "SENSOR"],
1370            "Multiplier": 0.001
1371        },
1372        {
1373            "Name": "CHARGING-STATS-UPDATOR",
1374            "Type": "UNKNOWN",
1375            "VirtualSensor": true,
1376            "Hidden": true,
1377            "TriggerSensor": ["soc_therm", "rffe_therm", "charger_therm", "modem_therm", "gnss_tcxo_therm"],
1378            "Formula": "WEIGHTED_AVG",
1379            "Combination": ["VIRTUAL-SKIN-CHARGE-DURING-WLC-STATS", "VIRTUAL-SKIN-CHARGE-DURING-WIRED-SUB5W-STATS", "VIRTUAL-SKIN-CHARGE-DURING-WIRED-5W-STATS",
1380                "VIRTUAL-SKIN-CHARGE-DURING-WIRED-7-5W-STATS", "VIRTUAL-SKIN-CHARGE-DURING-WIRED-15W-STATS", "VIRTUAL-SKIN-CHARGE-DURING-WIRED-18W-STATS",
1381                "VIRTUAL-SKIN-CHARGE-DURING-WIRED-GT18W-STATS"],
1382            "Coefficient": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
1383            "Multiplier": 1,
1384            "SendPowerHint": true,
1385            "PollingDelay": 300000,
1386            "PassiveDelay": 7000
1387        }
1388    ],
1389    "CoolingDevices": [
1390        {
1391            "Name": "thermal-cpufreq-0",
1392            "Type": "CPU",
1393            "WritePath": "/dev/thermal/cdev-by-name/thermal-cpufreq-0/user_vote",
1394            "ScalingAvailableFrequenciesPath": "/sys/devices/system/cpu/cpufreq/policy0/scaling_available_frequencies"
1395        },
1396        {
1397            "Name":"thermal-cpufreq-1",
1398            "Type":"CPU",
1399            "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-1/user_vote",
1400            "ScalingAvailableFrequenciesPath": "/sys/devices/system/cpu/cpufreq/policy4/scaling_available_frequencies"
1401        },
1402        {
1403            "Name":"thermal-cpufreq-2",
1404            "Type":"CPU",
1405            "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-2/user_vote",
1406            "ScalingAvailableFrequenciesPath": "/sys/devices/system/cpu/cpufreq/policy7/scaling_available_frequencies"
1407        },
1408        {
1409            "Name": "thermal-gpufreq-0",
1410            "Type": "GPU",
1411            "WritePath": "/dev/thermal/cdev-by-name/thermal-gpufreq-0/user_vote",
1412            "ScalingAvailableFrequenciesPath": "/sys/devices/platform/1f000000.mali/available_frequencies"
1413        },
1414        {
1415            "Name": "chg_mdis",
1416            "Type": "BATTERY"
1417        },
1418        {
1419            "Name": "usbc-port",
1420            "Type": "BATTERY"
1421        },
1422        {
1423            "Name": "tpu_cooling",
1424            "Type": "NPU",
1425            "WritePath": "/dev/thermal/cdev-by-name/tpu_cooling/user_vote"
1426        },
1427        {
1428            "Name": "gxp-cooling",
1429            "Type": "NPU",
1430            "WritePath": "/dev/thermal/cdev-by-name/gxp-cooling/user_vote"
1431        }
1432    ],
1433    "PowerRails": [
1434        {
1435            "Name": "S3M_VDD_CPUCL2",
1436            "PowerSampleDelay": 7000,
1437            "PowerSampleCount": 1
1438        },
1439        {
1440            "Name": "S2M_VDD_CPUCL1",
1441            "PowerSampleDelay": 7000,
1442            "PowerSampleCount": 1
1443        },
1444        {
1445            "Name": "S4M_VDD_CPUCL0",
1446            "PowerSampleDelay": 7000,
1447            "PowerSampleCount": 1
1448        },
1449        {
1450            "Name": "S2S_VDD_G3D",
1451            "PowerSampleDelay": 7000,
1452            "PowerSampleCount": 1
1453        },
1454        {
1455            "Name":"S7M_VDD_TPU",
1456            "PowerSampleDelay":7000,
1457            "PowerSampleCount":1
1458        },
1459        {
1460            "Name": "PARTIAL_SYSTEM_POWER",
1461            "VirtualRails": true,
1462            "Formula": "WEIGHTED_AVG",
1463            "Combination": [
1464                "S1S_VDD_CAM",
1465                "S2S_VDD_G3D",
1466                "S4S_VDD2H_MEM",
1467                "S5S_VDDQ_MEM",
1468                "S9S_VDD_AOC",
1469                "L2S_PLL_MIPI_UFS",
1470                "L21S_VDD2L_MEM",
1471                "VSYS_PWR_DISPLAY",
1472                "VSYS_PWR_WLAN_BT",
1473                "S1M_VDD_MIF",
1474                "S3M_VDD_CPUCL2",
1475                "S2M_VDD_CPUCL1",
1476                "S4M_VDD_CPUCL0",
1477                "S5M_VDD_INT",
1478                "S6M_LLDO1",
1479                "S7M_VDD_TPU",
1480                "S8M_LLDO2",
1481                "VSYS_PWR_MODEM"
1482            ],
1483            "Coefficient": [
1484                1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0,
1485                1.0, 1.0, 1.0, 1.0
1486            ],
1487            "PowerSampleDelay": 7000,
1488            "PowerSampleCount": 5
1489        }
1490    ],
1491    "Stats": {
1492        "Sensors": {
1493            "RecordWithDefaultThreshold": ["VIRTUAL-SKIN", "VIRTUAL-SKIN-OUTER-DISPLAY"],
1494            "RecordWithThreshold": [
1495                {
1496                    "Name": "VIRTUAL-SKIN",
1497                    "Thresholds": [31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 55]
1498                },
1499                {
1500                    "Name": "VIRTUAL-SKIN-LEGACY",
1501                    "Thresholds": [31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55, 57]
1502                },
1503                {
1504                    "Name": "VIRTUAL-SKIN-MODEL",
1505                    "Thresholds": [31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55, 57]
1506                },
1507                {
1508                    "Name": "VIRTUAL-SKIN-OUTER-DISPLAY",
1509                    "Thresholds": [31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55, 57]
1510                },
1511                {
1512                    "Name": "VIRTUAL-SKIN-MODEL-LEGACY-DIFF",
1513                    "LoggingName": "MODEL-LEGACY-0.5",
1514                    "Thresholds": [
1515                        -4500, -4000, -3500, -3000, -2500, -2000, -1500, -1000, -500, 0,
1516                        500, 1000, 1500, 2000, 2500, 3000, 3500, 4000, 4500
1517                    ]
1518                },
1519                {
1520                    "Name": "VIRTUAL-SKIN-MODEL-LEGACY-DIFF",
1521                    "LoggingName": "MODEL-LEGACY-1",
1522                    "Thresholds": [
1523                        -13000, -12000, -11000, -10000, -9000, -8000, -7000, -6000, -5000,
1524                        -4000, 4000, 5000, 6000, 7000, 8000, 9000, 10000, 11000, 12000
1525                    ]
1526                },
1527                {
1528                    "Name": "VIRTUAL-SKIN-SPEAKER-MODEL",
1529                    "Thresholds": [31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55, 57]
1530                },
1531                {
1532                    "Name": "VIRTUAL-SKIN-CHARGE-DURING-WLC-STATS",
1533                    "Thresholds": [-200, 15, 25, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55]
1534                },
1535                {
1536                    "Name": "VIRTUAL-SKIN-CHARGE-DURING-WIRED-SUB5W-STATS",
1537                    "Thresholds": [-200, 15, 25, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55]
1538                },
1539                {
1540                    "Name": "VIRTUAL-SKIN-CHARGE-DURING-WIRED-5W-STATS",
1541                    "Thresholds": [-200, 15, 25, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55]
1542                },
1543                {
1544                    "Name": "VIRTUAL-SKIN-CHARGE-DURING-WIRED-7-5W-STATS",
1545                    "Thresholds": [-200, 15, 25, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55]
1546                },
1547                {
1548                    "Name": "VIRTUAL-SKIN-CHARGE-DURING-WIRED-15W-STATS",
1549                    "Thresholds": [-200, 15, 25, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55]
1550                },
1551                {
1552                    "Name": "VIRTUAL-SKIN-CHARGE-DURING-WIRED-18W-STATS",
1553                    "Thresholds": [-200, 15, 25, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55]
1554                },
1555                {
1556                    "Name": "VIRTUAL-SKIN-CHARGE-DURING-WIRED-GT18W-STATS",
1557                    "Thresholds": [-200, 15, 25, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55]
1558                }
1559            ],
1560            "Abnormality": {
1561                "Outlier": {
1562                    "Configs": [
1563                        {
1564                            "Monitor": ["VIRTUAL-SKIN-LEGACY"],
1565                            "TempRange": [0.0, 57.0]
1566                        },
1567                        {
1568                            "Monitor": ["VIRTUAL-SKIN-MODEL"],
1569                            "TempRange": [0.0, 57.0]
1570                        },
1571                        {
1572                            "Monitor": ["VIRTUAL-SKIN-SPEAKER-MODEL"],
1573                            "TempRange": [0.0, 57.0]
1574                        },
1575                        {
1576                            "Monitor": ["VIRTUAL-SKIN-MODEL-LEGACY-DIFF"],
1577                            "TempRange": [-7000, 7000]
1578                        },
1579                        {
1580                            "Monitor": ["VIRTUAL-SKIN-SPEAKER-MODEL-LEGACY-DIFF"],
1581                            "TempRange": [-15000, 15000]
1582                        }
1583                    ]
1584                },
1585                "Stuck": {
1586                    "Configs": [
1587                        {
1588                            "Monitor": ["VIRTUAL-SKIN"],
1589                            "TempStuck": {
1590                                "MinPollingCount": 8,
1591                                "MinStuckDuration": 120000
1592                            }
1593                        }
1594                    ]
1595                }
1596            }
1597        },
1598        "CoolingDevices": {
1599            "RecordVotePerSensor": {
1600                "DefaultThresholdEnableAll": true
1601            }
1602        }
1603    }
1604}
1605