30 Commits

Author SHA1 Message Date
c0704b3d4f split BadValue into WrongType and RangeError
in order to match SECoP specification

fixes #4668

Change-Id: Ica73a8171536ccc324cf8db915347a6263c2d736
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/30625
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch>
2023-04-21 16:16:40 +02:00
Oksana Shliakhtun
5fb1e649ab Driver for ThermoFisher A 10
Change-Id: Ic19ae444c3b4242f3bb1fe83852d4521326d0b9d
2023-04-13 15:14:44 +02:00
Oksana Shliakhtun
7a3cfe9836 fix %g in the write_target
Change-Id: I3c15ed44848c792320dd146d17d4bb52f30f49f0
2023-03-08 14:57:22 +01:00
Oksana Shliakhtun
e12f2bacb1 fix read_setpoint
Change-Id: I8c6449979aca294af13c350b7632190121bc4230
2023-03-08 14:52:16 +01:00
Oksana Shliakhtun
d6c641e67b fix set/get_par
Change-Id: I9790a667bc2e89baf2be9e35edb7473cdfc5dd31
2023-03-08 14:49:56 +01:00
Oksana Shliakhtun
ec15a35977 lakeshore ramp
Change-Id: I323c2b88e554bc2dc9c3f1af2b23f99aa082489f
2023-03-08 14:37:56 +01:00
05415e79b1 qnw: WARN status when control is off
Change-Id: Ic91607658b4c0f3a622ad7307aa55d927c82914b
2023-03-06 14:05:01 +01:00
908f2d4c23 fix minor issues in ppmssim and k2601b
merging changes in gitpsi and gitmlz branch

Change-Id: I4996da637ad62c5bd76596ea95aee1decaaccaf2
2023-03-06 08:24:16 +01:00
05cf4a791a demo lakeshore with simulation
- example for lakeshore tutorial
- lakeshore simulator (merge with frappy_psils370sim)
- rename stringio-server to sim-server

Change-Id: I33a9c75ea268349573f8a8387910921e19f242eb
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/30516
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de>
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch>
2023-03-06 08:24:15 +01:00
0acb80380a fix ppms with proxy
- proxy: remote parameter status should overddide datatype from
  ProxyModule.status
- ppms: create PpmsDrivable instead of importing from
  (PpmsBase, Drivable). Order matters for status parameter!
- update cfg files

Change-Id: If8fc263cffb903d8b3c1a93a089dcac3597d13a0
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/30512
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de>
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch>
2023-03-06 08:24:15 +01:00
Oksana Shliakhtun
bc553f889c Implement ramping qnw
Change-Id: I9d7fab73194a0a8be3a230cc7ca99066d2553fce
2023-03-02 17:01:43 +01:00
Oksana Shliakhtun
cae225df41 create qnw driver
Change-Id: I7b466caf91b7a2a177fa94ac84cdfc315475f959
2023-03-01 17:49:15 +01:00
Oksana Shliakhtun
3a52f9d31c fixes in lakeshore alarm
Change-Id: Ibbcbe94d9a64d1c074025183e1310506a2cb00f4
2023-03-01 17:49:15 +01:00
edd3437682 improve persistent parameters
A value given in config overrides values read from the persistent data file.
To let the loaded parameter have precedence, configure a default only.
The write_<param> method of a persistent parameter is now always called
on startup.

- add tests for persistent behaviour
+ simplify Modules.writeInitParams: remove started_callback argument

Change-Id: I08b49de52e9d9a2ed0918018eb2fe538141a4f5e
2023-02-20 12:50:19 +01:00
Oksana Shliakhtun
6b9d4a8140 .
Change-Id: I45df6909814299a26eefdb25c63b827741872d82
2023-02-02 17:31:24 +01:00
Oksana Shliakhtun
af295b12b0 fixed write_alarm
Change-Id: I1c155a63c7340aa1292bc1e530cedfcc72d5ffed
2023-02-02 17:25:34 +01:00
Oksana Shliakhtun
69dd011260 Added alarms
Change-Id: Idd06278e44e01522ddf904b56a452ce8c704b5a6
2023-02-02 17:22:08 +01:00
Oksana Shliakhtun
d62076128a add comma between command and arguments
Change-Id: Ibc3a9072140842d521ebb4840eecb180e69b134e
2023-01-31 09:42:45 +01:00
Oksana Shliakhtun
2ee9ea65da fix SETP?
Change-Id: I337adece10204ca67dcf720e4de36085b80601ba
2023-01-30 17:13:52 +01:00
Oksana Shliakhtun
0dfaa79f77 fix set_par/get_par calls
Change-Id: Iff6b244ca381849333646853b4c0bb8a347bbb3b
2023-01-30 17:09:46 +01:00
Oksana Shliakhtun
866fe73f2e fix CDISP
Change-Id: I09010a1997799bed04f25a7a3eb0157f7af5ad8b
2023-01-30 17:04:28 +01:00
l_samenv
f5c96214b0 Merge branch 'develop' of gitlab.psi.ch:samenv/frappy into develop 2023-01-30 16:57:29 +01:00
l_samenv
4d28abe141 fix issue with old reading
- old reading shoould be ignored
- fix channels for CTI7
2023-01-30 16:56:31 +01:00
Oksana Shliakhtun
c75d7f17f7 The PID parameters were added.
Change-Id: I67a7db66ca13b60d35cb4041bbd35c6c4729416c
2023-01-30 16:52:06 +01:00
Oksana Shliakhtun
a384664639 first version of lakeshore 340 driver
Change-Id: Ie9a68be61e142802b2e71420b87623b7a4b4f645
2023-01-24 18:13:34 +01:00
Oksana Shliakhtun
ee708f7b02 fix typo in frappy_psi.mixins
Change-Id: Ifccb6278bbfc221882067a2ae8c72d0163e5f351
2023-01-24 18:12:25 +01:00
edc942cb24 introduce frappy_psi.mixins
containing for now: HasControlledBy, HasOutputModule

Change-Id: I27e3a81d6e985c74440eb9ea6d224272bac4fb7d
2023-01-24 15:33:27 +01:00
f4e974f46c improve parameter initialisation
- make 'value' a Parameter property instead of an attribute
- use 'value' instead of 'default' property for setting
  the initial value in the config file
- removal of initwrite parameter property

this change is the basis of a better implementation
for change 30041 (PersistentParam property 'override_cfg')

Change-Id: I2b82bdd54c2dacb87dcd2b3472004d2f0a730cf0
2023-01-20 16:55:06 +01:00
a14c282993 redesign of the state machine
With the current implementation, we run into a deadlock with the lock
from the state machine interfering with the accessLock on the module.
We can not wait for the state machine to finish while having the
accessLock locked by write_target. As a consequence, when restarting
the state machine we should not wait, but remember the state function
to call and postpone the restart after the cleanup has finished.
For this, we want to know the status before calling the state function.

- create HasState mixin, using doPoll for driving the machine
- StatusCode decorator for assigning a status to a state function
- remove the state machines 'threaded' option
- 'Retry' is now a unique value instead of a class. The retry period
  is determined by the (fast) poll interval.
- return 'Finish' instead of None for finishing the machine. returning
  None for state function is now an error, as this might happen
  easily inadvertently.

Change-Id: Icb31367442f10e98be69af3e05a84f12ce5cc966
2022-12-06 10:18:50 +01:00
Alexander Zaft
7f166a5b8c Rename from secop to frappy
debian/ is still missing, will follow in next commit.

Fixes: #4626

Change-Id: Ia87c28c1c75b8402eedbfca47f888585a7881f44
2022-11-09 16:29:29 +01:00