PID control configuration usage

Lei YU mine260309 at gmail.com
Fri Mar 8 13:11:56 AEDT 2019


> >> Could someone point me to a functional
> >> (possibly in-use) example or show the json config produced from
> >> entity-manager?
> > I thought the Quanta system used it, but I'm not seeing the JSON.
> > Patrick checked in a basic example here:
> > https://github.com/openbmc/phosphor-pid-control/blob/master/examples/fan-info.json
> > But I'm guessing you already found that.
> I did see that. I used that as my starting point, but its quite a simple
> config that I was interested in seeing a more complex example that's in use.
>

I tried pid-control on Romulus before and here is a working config for
Romulus, just for testing purpose.
https://github.com/mine260309/openbmc/blob/3d45a1b452d9150da89e058bcc544d9f5525cf27/meta-openbmc-machines/meta-openpower/meta-ibm/meta-romulus/recipes-phosphor/fans/romulus-fans-sensor-list/pid-list.yaml

The above config does below settings:
1. Set the outlet temperature set-point to 45, so when the temperature is
   above 45, the fan speed is increased, and when it's lower than 45, the fan
   peed is decreased.
2. Romulus' fan0/2 uses the same pwm, so they are controlled in a same group.
3. The fan1 uses a separated pwm, so it's in a separated group.
4. I tried to use cpu core temperature as set-point, but that requires the
   cores described in the config file are all available.
   If a core temperature is missing (e.g. the CPU does not have all the cores),
   phosphor-pid-control throws and exits.
   On my Romulus it has 4-core CPUs, so I need to put the specific 8 cores in
   the config to make it work.


More information about the openbmc mailing list