1{
2    "Exposes": [
3        {
4            "Address": "0x52",
5            "BindConnector": "Fan1 connector",
6            "Bus": 6,
7            "Index": 0,
8            "MaxReading": 36200,
9            "Name": "Fan1a_in",
10            "PowerState": "Always",
11            "Presence": {
12                "PinName": "FAN0_PRESENCE_R_N",
13                "Polarity": "Low"
14            },
15            "Thresholds": [
16                {
17                    "Direction": "less than",
18                    "Name": "lower critical",
19                    "Severity": 1,
20                    "Value": 0
21                },
22                {
23                    "Direction": "less than",
24                    "Name": "lower non critical",
25                    "Severity": 0,
26                    "Value": 1800
27                },
28                {
29                    "Direction": "greater than",
30                    "Name": "upper critical",
31                    "Severity": 1,
32                    "Value": 36200
33                },
34                {
35                    "Direction": "greater than",
36                    "Name": "upper non critical",
37                    "Severity": 0,
38                    "Value": 28960
39                }
40            ],
41            "Type": "I2CFan"
42        },
43        {
44            "Address": "0x52",
45            "BindConnector": "Fan1 connector",
46            "Bus": 6,
47            "Index": 1,
48            "MaxReading": 0,
49            "Name": "Fan1b_in",
50            "PowerState": "Always",
51            "Thresholds": [
52                {
53                    "Direction": "less than",
54                    "Name": "lower critical",
55                    "Severity": 1,
56                    "Value": 0
57                },
58                {
59                    "Direction": "less than",
60                    "Name": "lower non critical",
61                    "Severity": 0,
62                    "Value": 1800
63                },
64                {
65                    "Direction": "greater than",
66                    "Name": "upper critical",
67                    "Severity": 1,
68                    "Value": 36200
69                },
70                {
71                    "Direction": "greater than",
72                    "Name": "upper non critical",
73                    "Severity": 0,
74                    "Value": 28960
75                }
76            ],
77            "Type": "I2CFan"
78        },
79        {
80            "Address": "0x52",
81            "BindConnector": "Fan2 connector",
82            "Bus": 6,
83            "Index": 2,
84            "MaxReading": 0,
85            "Name": "Fan2a_in",
86            "PowerState": "Always",
87            "Presence": {
88                "PinName": "FAN1_PRESENCE_R_N",
89                "Polarity": "Low"
90            },
91            "Thresholds": [
92                {
93                    "Direction": "less than",
94                    "Name": "lower critical",
95                    "Severity": 1,
96                    "Value": 0
97                },
98                {
99                    "Direction": "less than",
100                    "Name": "lower non critical",
101                    "Severity": 0,
102                    "Value": 1800
103                },
104                {
105                    "Direction": "greater than",
106                    "Name": "upper critical",
107                    "Severity": 1,
108                    "Value": 36200
109                },
110                {
111                    "Direction": "greater than",
112                    "Name": "upper non critical",
113                    "Severity": 0,
114                    "Value": 28960
115                }
116            ],
117            "Type": "I2CFan"
118        },
119        {
120            "Address": "0x52",
121            "BindConnector": "Fan2 connector",
122            "Bus": 6,
123            "Index": 3,
124            "MaxReading": 0,
125            "Name": "Fan2b_in",
126            "PowerState": "Always",
127            "Thresholds": [
128                {
129                    "Direction": "less than",
130                    "Name": "lower critical",
131                    "Severity": 1,
132                    "Value": 0
133                },
134                {
135                    "Direction": "less than",
136                    "Name": "lower non critical",
137                    "Severity": 0,
138                    "Value": 1800
139                },
140                {
141                    "Direction": "greater than",
142                    "Name": "upper critical",
143                    "Severity": 1,
144                    "Value": 36200
145                },
146                {
147                    "Direction": "greater than",
148                    "Name": "upper non critical",
149                    "Severity": 0,
150                    "Value": 28960
151                }
152            ],
153            "Type": "I2CFan"
154        },
155        {
156            "Address": "0x52",
157            "BindConnector": "Fan3 connector",
158            "Bus": 6,
159            "Index": 4,
160            "MaxReading": 0,
161            "Name": "Fan3a_in",
162            "PowerState": "Always",
163            "Presence": {
164                "PinName": "FAN2_PRESENCE_R_N",
165                "Polarity": "Low"
166            },
167            "Thresholds": [
168                {
169                    "Direction": "less than",
170                    "Name": "lower critical",
171                    "Severity": 1,
172                    "Value": 0
173                },
174                {
175                    "Direction": "less than",
176                    "Name": "lower non critical",
177                    "Severity": 0,
178                    "Value": 1800
179                },
180                {
181                    "Direction": "greater than",
182                    "Name": "upper critical",
183                    "Severity": 1,
184                    "Value": 36200
185                },
186                {
187                    "Direction": "greater than",
188                    "Name": "upper non critical",
189                    "Severity": 0,
190                    "Value": 28960
191                }
192            ],
193            "Type": "I2CFan"
194        },
195        {
196            "Address": "0x52",
197            "BindConnector": "Fan3 connector",
198            "Bus": 6,
199            "Index": 5,
200            "MaxReading": 0,
201            "Name": "Fan3b_in",
202            "PowerState": "Always",
203            "Thresholds": [
204                {
205                    "Direction": "less than",
206                    "Name": "lower critical",
207                    "Severity": 1,
208                    "Value": 0
209                },
210                {
211                    "Direction": "less than",
212                    "Name": "lower non critical",
213                    "Severity": 0,
214                    "Value": 1800
215                },
216                {
217                    "Direction": "greater than",
218                    "Name": "upper critical",
219                    "Severity": 1,
220                    "Value": 36200
221                },
222                {
223                    "Direction": "greater than",
224                    "Name": "upper non critical",
225                    "Severity": 0,
226                    "Value": 28960
227                }
228            ],
229            "Type": "I2CFan"
230        },
231        {
232            "Address": "0x52",
233            "BindConnector": "Fan4 connector",
234            "Bus": 6,
235            "Index": 6,
236            "MaxReading": 0,
237            "Name": "Fan4a_in",
238            "PowerState": "Always",
239            "Presence": {
240                "PinName": "FAN3_PRESENCE_R_N",
241                "Polarity": "Low"
242            },
243            "Thresholds": [
244                {
245                    "Direction": "less than",
246                    "Name": "lower critical",
247                    "Severity": 1,
248                    "Value": 0
249                },
250                {
251                    "Direction": "less than",
252                    "Name": "lower non critical",
253                    "Severity": 0,
254                    "Value": 1800
255                },
256                {
257                    "Direction": "greater than",
258                    "Name": "upper critical",
259                    "Severity": 1,
260                    "Value": 36200
261                },
262                {
263                    "Direction": "greater than",
264                    "Name": "upper non critical",
265                    "Severity": 0,
266                    "Value": 28960
267                }
268            ],
269            "Type": "I2CFan"
270        },
271        {
272            "Address": "0x52",
273            "BindConnector": "Fan4 connector",
274            "Bus": 6,
275            "Index": 7,
276            "MaxReading": 0,
277            "Name": "Fan4b_in",
278            "PowerState": "Always",
279            "Thresholds": [
280                {
281                    "Direction": "less than",
282                    "Name": "lower critical",
283                    "Severity": 1,
284                    "Value": 0
285                },
286                {
287                    "Direction": "less than",
288                    "Name": "lower non critical",
289                    "Severity": 0,
290                    "Value": 1800
291                },
292                {
293                    "Direction": "greater than",
294                    "Name": "upper critical",
295                    "Severity": 1,
296                    "Value": 36200
297                },
298                {
299                    "Direction": "greater than",
300                    "Name": "upper non critical",
301                    "Severity": 0,
302                    "Value": 28960
303                }
304            ],
305            "Type": "I2CFan"
306        },
307        {
308            "Address": "0x52",
309            "BindConnector": "Fan5 connector",
310            "Bus": 6,
311            "Index": 8,
312            "MaxReading": 0,
313            "Name": "Fan5a_in",
314            "PowerState": "Always",
315            "Presence": {
316                "PinName": "FAN4_PRESENCE_R_N",
317                "Polarity": "Low"
318            },
319            "Thresholds": [
320                {
321                    "Direction": "less than",
322                    "Name": "lower critical",
323                    "Severity": 1,
324                    "Value": 0
325                },
326                {
327                    "Direction": "less than",
328                    "Name": "lower non critical",
329                    "Severity": 0,
330                    "Value": 1800
331                },
332                {
333                    "Direction": "greater than",
334                    "Name": "upper critical",
335                    "Severity": 1,
336                    "Value": 36200
337                },
338                {
339                    "Direction": "greater than",
340                    "Name": "upper non critical",
341                    "Severity": 0,
342                    "Value": 28960
343                }
344            ],
345            "Type": "I2CFan"
346        },
347        {
348            "Address": "0x52",
349            "BindConnector": "Fan5 connector",
350            "Bus": 6,
351            "Index": 9,
352            "MaxReading": 0,
353            "Name": "Fan5b_in",
354            "PowerState": "Always",
355            "Thresholds": [
356                {
357                    "Direction": "less than",
358                    "Name": "lower critical",
359                    "Severity": 1,
360                    "Value": 0
361                },
362                {
363                    "Direction": "less than",
364                    "Name": "lower non critical",
365                    "Severity": 0,
366                    "Value": 1800
367                },
368                {
369                    "Direction": "greater than",
370                    "Name": "upper critical",
371                    "Severity": 1,
372                    "Value": 36200
373                },
374                {
375                    "Direction": "greater than",
376                    "Name": "upper non critical",
377                    "Severity": 0,
378                    "Value": 28960
379                }
380            ],
381            "Type": "I2CFan"
382        },
383        {
384            "Address": "0x54",
385            "BindConnector": "Fan6 connector",
386            "Bus": 6,
387            "Index": 0,
388            "MaxReading": 0,
389            "Name": "Fan6_in",
390            "PowerState": "Always",
391            "Presence": {
392                "PinName": "FAN5_PRESENCE_N",
393                "Polarity": "Low"
394            },
395            "Thresholds": [
396                {
397                    "Direction": "less than",
398                    "Name": "lower critical",
399                    "Severity": 1,
400                    "Value": 0
401                },
402                {
403                    "Direction": "less than",
404                    "Name": "lower non critical",
405                    "Severity": 0,
406                    "Value": 1800
407                },
408                {
409                    "Direction": "greater than",
410                    "Name": "upper critical",
411                    "Severity": 1,
412                    "Value": 36200
413                },
414                {
415                    "Direction": "greater than",
416                    "Name": "upper non critical",
417                    "Severity": 0,
418                    "Value": 28960
419                }
420            ],
421            "Type": "I2CFan"
422        },
423        {
424            "Address": "0x54",
425            "BindConnector": "Fan7 connector",
426            "Bus": 6,
427            "Index": 1,
428            "MaxReading": 0,
429            "Name": "Fan7_in",
430            "PowerState": "Always",
431            "Presence": {
432                "PinName": "FAN6_PRESENCE_N",
433                "Polarity": "Low"
434            },
435            "Thresholds": [
436                {
437                    "Direction": "less than",
438                    "Name": "lower critical",
439                    "Severity": 1,
440                    "Value": 0
441                },
442                {
443                    "Direction": "less than",
444                    "Name": "lower non critical",
445                    "Severity": 0,
446                    "Value": 1800
447                },
448                {
449                    "Direction": "greater than",
450                    "Name": "upper critical",
451                    "Severity": 1,
452                    "Value": 36200
453                },
454                {
455                    "Direction": "greater than",
456                    "Name": "upper non critical",
457                    "Severity": 0,
458                    "Value": 28960
459                }
460            ],
461            "Type": "I2CFan"
462        },
463        {
464            "Class": "fan",
465            "FFGainCoefficient": 0.0079,
466            "FFOffCoefficient": 0,
467            "ICoefficient": 0,
468            "ILimitMax": 0,
469            "ILimitMin": 0,
470            "Inputs": [
471                "Fan1a_in",
472                "Fan1b_in"
473            ],
474            "Name": "Fan1_PID",
475            "NegativeHysteresis": 0,
476            "OutLimitMax": 100,
477            "OutLimitMin": 18,
478            "Outputs": [
479                "Fan1_Pwm"
480            ],
481            "PCoefficient": 0.0026,
482            "PositiveHysteresis": 0,
483            "SetPoint": 70,
484            "SlewNeg": 0,
485            "SlewPos": 0,
486            "Type": "Pid",
487            "Zones": [
488                "CECIO"
489            ]
490        },
491        {
492            "Class": "fan",
493            "FFGainCoefficient": 0.0079,
494            "FFOffCoefficient": 0,
495            "ICoefficient": 0,
496            "ILimitMax": 0,
497            "ILimitMin": 0,
498            "Inputs": [
499                "Fan2a_in",
500                "Fan2b_in"
501            ],
502            "Name": "Fan2_PID",
503            "NegativeHysteresis": 0,
504            "OutLimitMax": 100,
505            "OutLimitMin": 18,
506            "Outputs": [
507                "Fan2_Pwm"
508            ],
509            "PCoefficient": 0.0026,
510            "PositiveHysteresis": 0,
511            "SetPoint": 70,
512            "SlewNeg": 0,
513            "SlewPos": 0,
514            "Type": "Pid",
515            "Zones": [
516                "CECIO"
517            ]
518        },
519        {
520            "Class": "fan",
521            "FFGainCoefficient": 0.0079,
522            "FFOffCoefficient": 0,
523            "ICoefficient": 0,
524            "ILimitMax": 0,
525            "ILimitMin": 0,
526            "Inputs": [
527                "Fan3a_in",
528                "Fan3b_in"
529            ],
530            "Name": "Fan3_PID",
531            "NegativeHysteresis": 0,
532            "OutLimitMax": 100,
533            "OutLimitMin": 18,
534            "Outputs": [
535                "Fan3_Pwm"
536            ],
537            "PCoefficient": 0.0026,
538            "PositiveHysteresis": 0,
539            "SetPoint": 70,
540            "SlewNeg": 0,
541            "SlewPos": 0,
542            "Type": "Pid",
543            "Zones": [
544                "CECIO"
545            ]
546        },
547        {
548            "Class": "fan",
549            "FFGainCoefficient": 0.0079,
550            "FFOffCoefficient": 0,
551            "ICoefficient": 0,
552            "ILimitMax": 0,
553            "ILimitMin": 0,
554            "Inputs": [
555                "Fan4a_in",
556                "Fan4b_in"
557            ],
558            "Name": "Fan4_PID",
559            "NegativeHysteresis": 0,
560            "OutLimitMax": 100,
561            "OutLimitMin": 18,
562            "Outputs": [
563                "Fan4_Pwm"
564            ],
565            "PCoefficient": 0.0026,
566            "PositiveHysteresis": 0,
567            "SetPoint": 70,
568            "SlewNeg": 0,
569            "SlewPos": 0,
570            "Type": "Pid",
571            "Zones": [
572                "CECIO"
573            ]
574        },
575        {
576            "Class": "fan",
577            "FFGainCoefficient": 0.0079,
578            "FFOffCoefficient": 0,
579            "ICoefficient": 0,
580            "ILimitMax": 0,
581            "ILimitMin": 0,
582            "Inputs": [
583                "Fan5a_in",
584                "Fan5b_in"
585            ],
586            "Name": "Fan5_PID",
587            "NegativeHysteresis": 0,
588            "OutLimitMax": 100,
589            "OutLimitMin": 18,
590            "Outputs": [
591                "Fan5_Pwm"
592            ],
593            "PCoefficient": 0.0026,
594            "PositiveHysteresis": 0,
595            "SetPoint": 70,
596            "SlewNeg": 0,
597            "SlewPos": 0,
598            "Type": "Pid",
599            "Zones": [
600                "CECIO"
601            ]
602        },
603        {
604            "Class": "fan",
605            "FFGainCoefficient": 0.0079,
606            "FFOffCoefficient": 0,
607            "ICoefficient": 0,
608            "ILimitMax": 0,
609            "ILimitMin": 0,
610            "Inputs": [
611                "Fan6_in"
612            ],
613            "Name": "Fan6_PID",
614            "NegativeHysteresis": 0,
615            "OutLimitMax": 100,
616            "OutLimitMin": 18,
617            "Outputs": [
618                "Fan6_Pwm"
619            ],
620            "PCoefficient": 0.0026,
621            "PositiveHysteresis": 0,
622            "SetPoint": 70,
623            "SlewNeg": 0,
624            "SlewPos": 0,
625            "Type": "Pid",
626            "Zones": [
627                "NVME"
628            ]
629        },
630        {
631            "Class": "fan",
632            "FFGainCoefficient": 0.0079,
633            "FFOffCoefficient": 0,
634            "ICoefficient": 0,
635            "ILimitMax": 0,
636            "ILimitMin": 0,
637            "Inputs": [
638                "Fan7_in"
639            ],
640            "Name": "Fan7_PID",
641            "NegativeHysteresis": 0,
642            "OutLimitMax": 100,
643            "OutLimitMin": 18,
644            "Outputs": [
645                "Fan7_Pwm"
646            ],
647            "PCoefficient": 0.0026,
648            "PositiveHysteresis": 0,
649            "SetPoint": 70,
650            "SlewNeg": 0,
651            "SlewPos": 0,
652            "Type": "Pid",
653            "Zones": [
654                "NVME"
655            ]
656        },
657        {
658            "Class": "temp",
659            "FFGainCoefficient": 0,
660            "FFOffCoefficient": 0,
661            "ICoefficient": -5,
662            "ILimitMax": 18000,
663            "ILimitMin": 2500,
664            "Inputs": [
665                "BCM0_TEMP Temperature",
666                "BCM1_TEMP Temperature",
667                "BCM2_TEMP Temperature",
668                "BCM3_TEMP Temperature"
669            ],
670            "Name": "PSU Temperature",
671            "NegativeHysteresis": 0,
672            "OutLimitMax": 18000,
673            "OutLimitMin": 2500,
674            "Outputs": [],
675            "PCoefficient": -500,
676            "PositiveHysteresis": 0,
677            "SetPoint": 95,
678            "SlewNeg": 0,
679            "SlewPos": 0,
680            "Type": "Pid",
681            "Zones": [
682                "CECIO"
683            ]
684        },
685        {
686            "Class": "temp",
687            "FFGainCoefficient": 0,
688            "FFOffCoefficient": 0,
689            "ICoefficient": -5,
690            "ILimitMax": 18000,
691            "ILimitMin": 2500,
692            "Inputs": [
693                "Ambient 0 Temp",
694                "Ambient 1 Temp"
695            ],
696            "Name": "Ambient Temperature",
697            "NegativeHysteresis": 0,
698            "OutLimitMax": 18000,
699            "OutLimitMin": 2500,
700            "Outputs": [],
701            "PCoefficient": -500,
702            "PositiveHysteresis": 0,
703            "SetPoint": 85,
704            "SlewNeg": 0,
705            "SlewPos": 0,
706            "Type": "Pid",
707            "Zones": [
708                "CECIO"
709            ]
710        },
711        {
712            "FailSafePercent": 100,
713            "MinThermalOutput": 2500,
714            "Name": "CECIO",
715            "Type": "Pid.Zone"
716        },
717        {
718            "FailSafePercent": 100,
719            "MinThermalOutput": 2500,
720            "Name": "NVME",
721            "Type": "Pid.Zone"
722        }
723    ],
724    "Name": "chassis",
725    "Probe": "xyz.openbmc_project.FruDevice({'BOARD_PRODUCT_NAME': '.*SYS1', 'BOARD_MANUFACTURER': 'IBM'})",
726    "Type": "Chassis",
727    "xyz.openbmc_project.Inventory.Decorator.Asset": {
728        "Manufacturer": "$PRODUCT_MANUFACTURER",
729        "Model": "$PRODUCT_PRODUCT_NAME",
730        "PartNumber": "$CHASSIS_PART_NUMBER",
731        "SerialNumber": "$CHASSIS_SERIAL_NUMBER"
732    }
733}
734