The IFO has been in NLN for a while now, but I couldn't take the IFO to OBSERVE because the LASER_PWR guardian had the nominal state set wrong and it took a while to figure out how to change it.
For other operators while we are still in a semi-commissioning phase, I fixed this by editing the LASER_PWR guardian. In the LASER_PWR there is a line that says:
nominal = 'POWER_{}W'.format(REQUEST_POWERS[X])
where X is some negative number. REQUEST_POWER is a vector defined above this line:
REQUEST_POWERS = [DEFAULT_POWER,10,25,35,50]
X is the index of the element that corresponds to the power, counting from the right (i.e for 50 W, X = -1, for 35 W X= -2...).
I had to change:
nominal = 'POWER_{}W'.format(REQUEST_POWERS[-2]) for 35 W to
nominal = 'POWER_{}W'.format(REQUEST_POWERS[-3]) for 25 W.
Save, then hit load on LASER_PWR.
The number in square brackets in e.g. "REQUEST_POWERS[-2]" is the index of the element in the REQUEST_POWER list. Negative numbers could from the right while positive numbers count from the left. So for:
REQUEST_POWERS = [DEFAULT_POWER,10,25,35,50]
then:
REQUEST_POWERS[-2] = REQUEST_POWERS[3] = 35
So you could also just specify the power level directly, e.g.:
nominal = 'POWER_{}W'.format(35)