Closed cjbe closed 5 years ago
Is it happening while channels are powered on?
Yes. I can reproduce this by power cycling the Booster, then pressing the "standby" button to enable all the channels. All the channels go into "interlock tripped" (due to #182), then after ~2 seconds channels 0 and 4 go into "error"
Could you try setting the OVC limits higher - command ovc <channel> <value>
. Default value is 51 for revision v1.3.
OK - what are the units, and how much of a increase is sensible?
It's like 10~ == 100 mA
This does not seem to solve the problem. I have set the OVC to 60 and I still see the channel tripping into "error" frequently when the interlock trips.
After fixing #182 the symptoms of this have changed somewhat. The channel stays OK after power-up, but trips into "error" most times the interlock trips. Before the channel goes into error the SCPI command INT:STAT?
returns something funny (16, rather than 0 or 1). Shortly after this the channel trips into error - the time ordering of this can be seen via logstash:
[INFO] network client 10.255.6.32 connected
[ERROR] Interlock tripped on channel 4, i=0 o=1
[INFO] network client disconnected
[ERROR] OVC on channel 4, current 0.00
My code disconnects when I get the odd response from INT:STAT?
, then a fraction of a second later the channel trips into error.
Disabled OVCurrent Protection. Could you try if it helps? Sorry but I was overthinking with that ovc
command, since on startup channel overwrite changes made by that command.
@wizath okay, nearly there...
That fixes the OVC issue. However, on channel 4 when the interlock trips 'INT:STAT?' returns 16. That makes sense as 1 <<4. But, in all other cases it was returning 1 or 0 for the channel. So, I think there is an inconsistency in the code. Can you have a look at that?
This is important for us, as we're using some automated tooling to test Booster and these kinds of inconsistencies break our code.
e.g.
Testing channel 4 ...
Gain:
40.5 dB (at P_out = 20.0 dBm)
39.3 dB (at P_out = 30.0 dBm)
38.6 dB (at P_out = 35.0 dBm)
Internal power meter:
f=100 MHz: error -0.2 dB at P_out = 20.0 dBm
f=100 MHz: error -0.1 dB at P_out = 30.0 dBm
f=100 MHz: error -0.0 dB at P_out = 35.0 dBm
f=250 MHz: error 0.0 dB at P_out = 20.0 dBm
f=250 MHz: error 0.2 dB at P_out = 30.0 dBm
Traceback (most recent call last):
File "test_channel.py", line 29, in <module>
p_in, p_out = set_output_power(p, ch=args.channel, freq=freq, iface=iface)
File "/home/ion/scratch/cjb/booster_tests/set_output_power.py", line 29, in set_output_power
tripped = not iface.booster.get_interlock_status(ch)
File "/home/ion/scratch/oxart/oxart/devices/booster/driver.py", line 104, in get_interlock_status
return not self._query_bool("INT:STAT?", channel)
File "/home/ion/scratch/oxart/oxart/devices/booster/driver.py", line 72, in _query_bool
"Unrecognised response to {}: '{}'".format(cmd, resp))
Exception: Unrecognised response to INT:STAT?: '16'
Sorry, that was one command that ran away from my last refractor :disappointed:.
Fixed it to work like other commands e.g:
int:stat? all
returns bitmask with bit shifter statuses for each interlock
int:stat? 1
returns 0 or 1
https://github.com/sinara-hw/Booster/issues/98#issuecomment-475288436
After power-cycling the Booster, channels 0 and 4 reliably (N=5) go into "error" after ~2s (the other channels show "interlock tripped"). There are no errors shown via logstash.
There are clearly some bad calibrations being used, seeing as all of the DAC2 (forward power interlock) are set to 0 (due to #182). Are there some other problems caused by this as well? I don't understand how these channels can go into error without something being present in the log