Commit graph

626 commits

Author SHA1 Message Date
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
Stephan I. Böttcher
28add0e8c9 new class solo.solomsgclass.msg_capture(solomsg) 2021-08-04 15:35:00 +02:00
Stephan I. Böttcher
f2b57c7f24 fix method name :-( 2021-08-04 14:04:29 +02:00
Stephan I. Böttcher
75b10d9ae9 new method solo.patcg.disable_ana() 2021-08-04 14:00:04 +02:00
Stephan I. Böttcher
b21513b4b0 new class solo.solomsgclass.msg_capture(solomsg) 2021-08-04 13:59:22 +02:00
Solar Orbiter GSE ops
2c52216077 Merge branch 'step_dps' of ssh://git.psjt.org/home/pott/git/solo/solo_config into step_dps 2021-08-02 14:39:03 +02:00
Stephan I. Böttcher
7b28074caf step.dps: new methods .ebins_main(), .ebins_aux() 2021-07-27 23:36:07 +02:00
Stephan I. Böttcher
81c542dc3f dps_table: new method .ebins()
Calculate the exact linear range of dps_items.
2021-07-27 23:29:08 +02:00
Stephan I. Böttcher
9e523e0d01 Merge branch 'master' into step_dps 2021-07-27 21:40:10 +02:00
Stephan I. Böttcher
c812f09714 hetept_config_table: fix .connect() 2021-07-27 18:30:20 +02:00
Stephan I. Böttcher
521ba60a9d hetept_config_table: fix .connect() 2021-07-27 18:25:56 +02:00
Stephan I. Böttcher
c3b3c6ba2a solo/l3: fix verbosity and .dif()
The commandline flag `-q` shall reset the verbosity to 0, or -1 if it is
already at 0.  Do _not_ decrement below -1.  `-vq` will set the verbosity to 0,
independendly of earlier options.  `verbose` is a module variable that
carries over from earlier `l3.compile()`s.

Fix `l3.diff()` for cases of different length codes.  Remove any `None` from
the final list.
2021-07-27 17:54:25 +02:00
Stephan I. Böttcher
dc54d5f7b7 hetept/l3: add some address logging 2021-07-27 17:53:45 +02:00
Stephan I. Böttcher
ba893fffbd hetept/l3trigger: fix verbosity iniz, add some verbosity
Reset `verbose` to zero with `-vq`.

Unconditionally emit the list of L3 args to stderr.
2021-07-27 17:51:03 +02:00
Stephan I. Böttcher
ecfbf35053 solo/l3: fix verbosity and .dif()
The commandline flag `-q` shall reset the verbosity to 0, or -1 if it is
already at 0.  Do _not_ decrement below -1.  `-vq` will set the verbosity to 0,
independendly of earlier options.  `verbose` is a module variable that
carries over from earlier `l3.compile()`s.

Fix `l3.diff()` for cases of different length codes.  Remove any `None` from
the final list.
2021-07-27 17:45:10 +02:00
Stephan I. Böttcher
598d8a99d3 hetept patch 9.1: output 2021-07-27 14:42:07 +02:00
Stephan I. Böttcher
184b2bb3a7 solo.patch: fix .main() 2021-07-27 14:35:52 +02:00
Stephan I. Böttcher
d8b969cff2 solo.patch: fix .main() 2021-07-27 14:35:41 +02:00
Stephan I. Böttcher
71f3206dc0 solo.patch: merge stop_l3, add .name 2021-07-27 14:35:31 +02:00
Stephan I. Böttcher
dc6575377c do not print diagnostics to stdout, print() 2021-07-27 14:35:04 +02:00
Stephan I. Böttcher
855114b589 do not print diagnostics to stdout 2021-07-27 14:33:20 +02:00
Stephan I. Böttcher
4914256937 solo.patch: fix .main() 2021-07-27 14:32:07 +02:00
Stephan I. Böttcher
1ed84a5f27 solo.patch: fix .main() 2021-07-27 14:31:18 +02:00
Stephan I. Böttcher
426060d4aa solo.patch: fix .main() 2021-07-27 14:26:30 +02:00
Stephan I. Böttcher
f72d9b0efb solo.patch: fix .main() 2021-07-27 14:25:55 +02:00
Stephan I. Böttcher
a7144ef754 hetept patch 9.1: add name= 2021-07-27 14:25:00 +02:00
Stephan I. Böttcher
103cf699d4 solo.patch: merge stop_l3, add .name 2021-07-27 14:19:57 +02:00
Stephan I. Böttcher
d5d9ffe5c6 solo.patch: merge stop_l3, add .name 2021-07-27 14:19:21 +02:00
Stephan I. Böttcher
570167c044 do not print diagnostics to stdout, print() 2021-07-27 13:57:34 +02:00