Profile Configuration

Format

{
  "Name": <string>,
  "Ports": [<PortIdentifier>],

  "SpeedControllers": [<SpeedController>],
  "Effects": [<Effect>]
}

Variables

Name

Name of the profile.

Important: The name has to be unique.

Required: Yes
Default value:

"Default"

Example:

"Name": "Top Fans"

Ports

List of Port Identifiers modified by this config.

Required: Yes
Default value:

[]

Example:

"Ports": [
  [9802, 9101, 1],
  [9802, 9101, 3]
]

SpeedControllers

List of Speed Controllers.

Note: The order matters because the speed controller that will be used is the first one whose Trigger returns true value. This means that you always want the last speed controller in the list to have a AlwaysTrigger set.

Required: No
Default value:

[]

Example:

"SpeedControllers": [
  {...},
  {...}
]

Effects

List of Effects.

Note: The order matters because the effect that will be used is the first one whose Trigger returns true value. This means that you always want the last effect in the list to have a AlwaysTrigger set.

Required: No
Default value:

[]

Example:

"Effects": [
  {...},
  {...}
]

Examples

{
  "Name": "Default",
  "Ports": [
    [9802, 8101, 1]
  ],
  "SpeedControllers": [
    {
      "Type": "PwmSpeedController", 
      "Config": {
        "CurvePoints": [
          [30, 30],
          [45, 50],
          [55, 60],
          [65, 75],
          [75, 100]
        ],
        "Sensors": ["/intelcpu/0/temperature/8"],
        "Trigger": {
          "Type": "AlwaysTrigger"
        }
      }
    }
  ],
  "Effects": [
    {
      "Type": "SensorEffect",
      "Config": {
        "Sensors": ["/intelcpu/0/temperature/8"],
        "ColorGradient": [
          [40, [16, 16, 128]],
          [60, [16, 16, 16]],
          [86, [128, 16, 16]]
        ],
        "Trigger": {
          "Type": "AlwaysTrigger"
        }
      }
    }
  ]
}