Commit graph

2,021 commits

Author SHA1 Message Date
Stephan I. Böttcher
aeb11df9d2 hetept.ppss.set_opheater_setpoint(): fix info message 2022-01-25 21:15:19 +01:00
Stephan I. Böttcher
cd6eb3bf91 hetept patch 9.4 xml 2022-01-21 13:06:25 +01:00
Stephan I. Böttcher
400ec64f89 HET/EPT patch 9.4: activate OP heaters
Directly patch the parameters in the PPSS entry that triggeres the OP
heater once per minute.

Due to the nonlinearity of the regulator we can alway roughly assume we
heat with DC=70%.  We need to adjust the setpoint with a correspondig
offset.  This offset depends on the gain.  The default gain is
`shift=0`.  The DC will be ADC-setpoint.  A shift of 1, 2, or 3 will
reduce the DC by a power of two, i.e.,

  DC = (ADC - setpoint) >> shift

This patch keeps shift=0.

The target temperatures are

  HET/EPT1: -6.0°C
  HET/EPT2: -0.5°C

Usage:

(stephan)blaulicht:~/solo/solo_config$ ./solopath.py
SOLOPATH> from solo.configurations.hetept1.v0009.hetept_config_opheater_patch4 import *
…

SOLOPATH> main()
…

SOLOPATH> msg=solo.solomsgclass.msg_print()

SOLOPATH> patch1.send(msg)
msg(0x000f, 3, 0x0000093500090004)
Temp SPY: -6.0°C  -3.2°C  -8.8°C
Temp SPY: -6.0°C  -3.3°C  -5.9°C
Temp SPY: -6.0°C  -3.2°C  -6.0°C
Temp SPY: -6.0°C  -3.2°C  -6.0°C
Temp SPY: -6.0°C  -3.2°C  -6.0°C
msg(0x268c, 3, 0x0000af1f0000c002)
msg(0x268d, 3, 0x007270e009f99000)
OP heater setpoint: -6 C = 2553 ADC
msg(0x2697, 1, 0x00000000000000ff)
msg(0x2696, 3, 0x0003e8010000413c)

SOLOPATH> patch1.OH_SHIFT=1

SOLOPATH> patch1.send(msg)
msg(0x000f, 3, 0x0000093500090004)
Temp SPY: -6.0°C  -0.2°C  -11.8°C
Temp SPY: -6.0°C  -0.5°C  -5.7°C
Temp SPY: -6.0°C  -0.5°C  -6.0°C
Temp SPY: -6.0°C  -0.5°C  -6.0°C
Temp SPY: -6.0°C  -0.5°C  -6.0°C
msg(0x268c, 3, 0x0000af1f0000c002)
msg(0x268d, 3, 0x007270e019739000)
OP heater setpoint: -6 C = 2419 ADC
msg(0x2697, 1, 0x00000000000000ff)
msg(0x2696, 3, 0x0003e8010000413c)
2022-01-21 12:49:28 +01:00
Stephan I. Böttcher
f9ae128e70 hetept: ppss.set_opheater_setpoint() with dc_estimate and shift 2022-01-21 12:49:13 +01:00
Stephan I. Böttcher
acb6934395 step v9: restore multi to LL
The multi hit counts were part of nominal in solo_data().  They got lost
with version 8, when all DPS was reimplemented except for Low Latency.

This commit removes all old data products in solo_data except for low
latency.  The multi hit counts are kept and appended to LL.

The version number is bumped to 9.1.
2021-11-22 13:53:37 +01:00
Stephan I. Böttcher
b39cef8b46 Merge branch 'hetept_v9_patches' of gitlab.physik.uni-kiel.de:solo/solo_config into hetept_v9_patches 2021-11-15 12:31:53 +01:00
Stephan I. Böttcher
4dbb52dbfd hetept patch 9.2: fix clear of the anticoincidence
solo.l1l2.l2trigger.set() changes only the given parameters. It does not
imply a .reset(). Those lines were a NOP. We only need to clear none=(),
to prevent any anticoincidences.
2021-11-15 12:28:52 +01:00
Stephan I. Böttcher
350806d109 step v0008 change config_page
The STEP unit EEPROM contains v6 in page 0x00000/0x60000.  The ICU
config memory contains v7 in page 0x70000 and v8 in 0x60000.  We plan to
write v8 into page 0x10000/0x70000 to not overwrite v6.  v7 was never
written to EEPROM.  At ICU reboot (after EGAM), the v8 config will the
appear in 0x70000.

This patch creates the STEP config compiled for 0x70000.

A preliminary xml to burn it into EEPORM is included.  Missing from that
xml is the restart of the unit after burn.
2021-11-04 16:51:41 +01:00
f6cd9a3968 updating hetept v0009 patch23 XMLs again 2021-11-03 17:30:09 +01:00
83d6e8c0c5 Revert "update hetept v0009 patch23 XMLs"
This reverts commit fabf4f0eb9.
2021-11-03 17:15:40 +01:00
fabf4f0eb9 update hetept v0009 patch23 XMLs 2021-11-03 17:04:51 +01:00
567bc7cab8 fix version number in hetept92.main() 2021-11-03 16:26:35 +01:00
1f413d3f86 solo.patch: adjust output format in .patch.xml() 2021-11-03 16:12:24 +01:00
4fa211e47d solo.patch: adjust output format in .patch.xml() 2021-11-03 16:10:17 +01:00
Stephan I. Böttcher
6c88a22201 EPT L3 test for negative signals
Apply the anticoincidence cuts to the negative values as well.
Patch3 is orthogonal to patch2.
2021-11-01 23:32:44 +01:00
Stephan I. Böttcher
8b1fd53b96 EPT l1l2: and update output 2021-11-01 17:33:21 +01:00
Stephan I. Böttcher
287edae51c EPT l1l2: increment subversion 2021-11-01 17:30:55 +01:00
Stephan I. Böttcher
2c3c1b0f45 EPT l1l2 patch 9.2 - the actual code. :-( 2021-11-01 17:24:14 +01:00
Stephan I. Böttcher
d0019e5194 EPT l1l2: trigger in anticoincidence hits
To investigate the x-talk issues, remove the anticoincidence condition
from EPT L₂.
Trigger on Ax channels with L₁ thr=1MeV.
2021-11-01 17:20:52 +01:00
Stephan I. Böttcher
84d95aa5d3 step v0008 bins 2021-10-28 15:52:37 +02:00
Stephan I. Böttcher
0d721ac99a step v0005 defs
why is there no defs for v0005?  I copied v0006.
2021-10-28 15:51:24 +02:00
Stephan I. Böttcher
ed38864a19 step dps: fix tag collision
In high rate, MAIN and AUX were using the same tag/flg.
Use tag=0x5f for STEP AUX.
2021-10-11 21:42:10 +02:00
Stephan I. Böttcher
3a2ef9102f step: checkout 2021-10-08 11:14:43 +02:00
Stephan I. Böttcher
f049631bdd config_table: pass SUBVERSION (scratch) to CONFIG() 2021-10-08 11:01:30 +02:00
Stephan I. Böttcher
3c161b13d0 step v8.2 part 3 checkout 2021-09-30 22:29:26 +02:00
Stephan I. Böttcher
190e385e66 STEP ppss: fix small pixel flg
Those flags appear to be broken in old configs. Or maybe I broke them
earlier.
2021-09-30 22:10:48 +02:00
Solar Orbiter GSE ops
3676eae88d Merge branch 'step_dps' of ssh://git.psjt.org/home/pott/git/solo/solo_config into step_dps 2021-09-30 19:20:29 +02:00
Stephan I. Böttcher
0318976eac STEP v8.2 checkout 2021-09-30 19:19:08 +02:00
Stephan I. Böttcher
3d8390c0ed STEP v8.2 part 2: start up in low rate
The SOC parses our telemetry for index entries and feeds their data
model with assumptions about the resulting data rate.  This patch
restores the assignment of index entries to relative data rate.

 [2] Full nominal config with 10s cadence
 [6] patch to 1s cadence
 [7] == [2]
2021-09-30 18:29:18 +02:00
Stephan I. Böttcher
443afbf185 step v8.2 defs, … 2021-09-30 15:19:59 +02:00
Stephan I. Böttcher
f9220b8686 step version 8.2, LOW TM routed to tag 0x57
The Alcalá pipeline requires LOW TM mode to be visible in the SCI data.
Use tag NOM_UNSTABLE for LOW TM mode.  v8.1 used NOM_UNSTABLE for AUX.
2021-09-30 15:16:20 +02:00
Lars Berger
cccfbb5329 The commands for step_v0008 upload to the ICU @ 0x060000 are be produced 2021-09-30 09:05:31 +02:00
Solar Orbiter GSE ops
e831fc3330 Merge branch 'step_dps' of git://git.psjt.org/solo/solo_config into step_dps 2021-09-24 12:22:45 +02:00
Stephan I. Böttcher
4051015d0a step L3: fix pedestal roundig errors
Calibration of ADC readings `HIT` to energy `E` works like this
```
E = MULI HIT * gain
E = ADDI HIT + pedl
```
The `pedl` was calculated as
```
pedl = -$floor(p*gain)
```
where `p` is the ADC reading corresponding to E = 0 keV.
Since `p` is a large magnitude negative number, the limited precision
of the `MULI` instruction parameter causes significant errors in `pedl`.

This patch aims to fis those errors. The new formula for `pedl` is
```
pedl = $floor(-p*$MRND(gain))
```
i.e., we use the same value for `gain` as the `MULI` instruction.  This
is now in place for any automatic calibration calculations in
`step_temp_calib.l3`.

For the FS in space we use a fixed precomputed calibration.  This is based on
the TVAC FS calibration for T=-36°C, with some adjustments for the changed
`acq_time=6`.  The TVAC calib has been saved earlier to
`step_fs_calib-36.calib` with full precision, i.e., without taking `$MRND()`
into account.  The awk script `step_fs_calib-36.awk` reverts those
calculations, applies the adjustments, and outputs the adjustes numbers.  Since
awk does not have access to `$MRND()`, the script has been changed to output
formulas for `pedl`, including `$MRND()`,
2021-09-22 17:19:03 +02:00
Stephan I. Böttcher
36b1f16191 step l3 gold 2021-09-22 17:10:59 +02:00
Stephan I. Böttcher
ff939af62f Merge branch 'master' into step_dps 2021-09-22 16:27:41 +02:00
Stephan I. Böttcher
635e4998da l3.py: new function $MRND()
`$MRND(f)` returns the floating point number `f` rounded to exactly
what `MULI R * f` will be compiled to.

STEP calibrates like this:
```
pedl := p*gain
a = MULI HIT * gain
a = ADDI HIT + pedl
```
This leads to large errors in `pedl` due to the limited resolution of `MULI`.
Instead use:
```
pedl = $MRND(p)*gain
```
2021-09-22 16:11:57 +02:00
Stephan I. Böttcher
ed3aaac844 step/l3 gold: use -DM_FS 2021-09-22 16:10:22 +02:00
Stephan I. Böttcher
c20e9b7370 step/l3: update gold 2021-09-22 16:06:23 +02:00
Stephan I. Böttcher
465f967d30 Merge branch 'master' into step_dps
l3sim rework
2021-09-22 15:01:31 +02:00
Stephan I. Böttcher
150f703216 l3sim: minor fix 2021-09-21 23:11:42 +02:00
Stephan I. Böttcher
a4c753bd87 solo.l3sim: rewrite and unification
solo.step.l3sim and solo.hetept.l3sim are now obsolete.
data parsing moved completly to solo.i128event.
numpy output removed, data is still generated.
2021-09-21 23:00:48 +02:00
Stephan I. Böttcher
55bc6cb6d2 step v8 hexdump 2021-09-20 15:12:48 +02:00
Stephan I. Böttcher
4af07e3583 Merge branch 'master' into step_dps 2021-09-20 14:56:48 +02:00
Stephan I. Böttcher
a0f7135898 Merge branch 'master' into step_v7_dev 2021-09-20 14:50:13 +02:00
Stephan I. Böttcher
9875b8fac3 step: remove temp config diffs 2021-09-20 14:13:50 +02:00
Stephan I. Böttcher
3895df5094 Merge branch 'master' into step_dps 2021-09-20 12:49:27 +02:00
Stephan I. Böttcher
5b7438a4ba STEP patch 7.4: reduce gain of opheater regulator 2021-08-12 11:42:20 +02:00
Stephan I. Böttcher
deb9633594 opheater infra for shift= 2021-08-12 11:41:44 +02:00
Stephan I. Böttcher
702e704674 Merge branch 'master' of ssh://git.psjt.org/home/pott/git/solo/solo_config 2021-08-12 10:37:00 +02:00