58 Commits

Author SHA1 Message Date
37d28c9f35 update 2023-05-30 from gitmlz
Change-Id: I0b1eb2941692fde5c9d98f107fc38315625dcfdb
2023-05-31 14:17:21 +02:00
Alexander Zaft
0b501ba444 Fix generator
Change-Id: Ic332e9c130b56e446787af87718d4028f2aac714
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/30746
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de>
Reviewed-by: Alexander Zaft <a.zaft@fz-juelich.de>
2023-04-21 16:17:30 +02: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
Georg Brandl
340c031f46 systemd generator: adapt to changed config API
Change-Id: Idb2527b7007aca3a051c1ec9a2d8eecdb55cacef
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/29535
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
Reviewed-by: Georg Brandl <g.brandl@fz-juelich.de>
2022-10-20 15:13:29 +02:00
Enrico Faulhaber
9725b4326e fix secop-generator
Change-Id: Ic983cadefcf04807b43654a7ce4339a8362b37a1
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/22936
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2020-04-09 17:04:09 +02:00
Enrico Faulhaber
339c970192 move ppms.cfg to right place
Change-Id: I7a771c7615ac5c45923253367dcf789807bec50a
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/21481
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2019-10-29 17:04:33 +01:00
d4916f4591 modified ppms driver
chamber module has now an enum instead of a string as main value
+ update_value_status must be called even for disabled modules
  in order to update the status to disabled

Change-Id: I3470de8b82f45b7fe53b18576c9898d1747e0ff6
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/21448
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch>
2019-10-22 11:09:15 +02:00
2a2750ad71 added PPMS driver
this is driver for the PPMS of LIN at PSI.
This includes the SCoP driver and a simulation, which mimics a
PPMS device including the command interface.
The (small) interface to the windows system of PPMS follows in
a separate patch.

Change-Id: I92173b6dd83016fd1db446c710af101d436fc57b
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/21445
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch>
2019-10-21 16:44:32 +02:00
Enrico Faulhaber
4884435c2d fix packaging
Change-Id: I073e9208fe6d7655d5bd89cd21252d8b10d46755
2019-10-11 10:38:02 +02:00
Enrico Faulhaber
eee7307818 upgrading debian files to compat 11
works on buster

Change-Id: I700ec073d3c13ce684cf361f7c3b059e79901bae
2019-09-27 17:06:47 +02:00
Enrico Faulhaber
8e619a67d4 fix debian files
to work again (hopefully).

Also:
 - few minor tweaks for py3
 - added psi facility
 - split secop-gui into separate package, so secop-core doesn't need QT

Change-Id: I457d3c9c60c78feb40e15c2fb153ce0d3491d1e8
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/21327
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Tested-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2019-09-26 16:24:58 +02:00
Enrico Faulhaber
9b33e07260 Provide systemd files
+ move example cfg from etc/ to cfg/

Change-Id: I437b3e2aaca55539ff110f5a46e411b34e0a0b9c
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/21319
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2019-09-25 15:32:48 +02:00
Enrico Faulhaber
f6d8f823d9 rework property handling
+ DataType validators are shifted to __call__
+ as_json is moved to export_datatape()
+ new HasProperties Base Mixin for Modules/DataTypes
+ accessibles can be accessed via iterator of a module
+ properties are properly 'derived' and checked, are set with .setPropertyValue

remember: parameters only have properties, so use getPropertyValue()

Change-Id: Iae0273f971aacb00fe6bf05e6a4d24a6d1be881a
Reviewed-on: https://forge.frm2.tum.de/review/20635
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch>
2019-07-16 10:56:17 +02:00
ef27fd1b54 additional parameter properties
- custom properties: to be declared at startup calling the
  classmethods Parameter.add_property or Command.add_property
  Probably the call should be placed in secop_<facility>/__init__.py

- valid properties are listed in Parameter.valid_properties /
  Command.valid_properties. New properties without relation to code
  in the SECnode like fmtstr, group, visibility can be added at one
  place in code only

Change-Id: I8c550eba955473665d246ddef3815b23c68be4f7
Reviewed-on: https://forge.frm2.tum.de/review/19611
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch>
2018-12-18 16:53:49 +01:00
Enrico Faulhaber
29a5b5c49e big rework to comply to current spec
- adapt to release(v2018-11-07)
- remove duplicate errors.py
- adapt tests

Change-Id: I383bb571f9808c72b37c12fbe55042011c4c0084
Reviewed-on: https://forge.frm2.tum.de/review/19397
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2018-12-04 10:18:40 +01:00
Enrico Faulhaber
87261382cf remove Message objects + rewrite server startup
Change-Id: Ide72fb915c3ca93c74edadd8952853508e677de7
Reviewed-on: https://forge.frm2.tum.de/review/19199
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2018-10-16 08:33:07 +02:00
Enrico Faulhaber
7e54cd93b7 minor fixes
Change-Id: I4be15d264e402be000811dffc1b28a2bc93ab297
Reviewed-on: https://forge.frm2.tum.de/review/18941
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2018-09-25 12:50:35 +02:00
fb1939d5c8 merge 'parameters' and 'commands' to 'accessibles'
- for now, the definition also accepts the old syntax
  (to be changed later)
- Commands have datatype CommandType
- do not need keyword for the decription parameter of Override
- issue a Warning when a Parameter is overwritten without Overrride
  (this should be turned into an error message)
-

Change-Id: Ib2c0f520abb5b4d7e6aed4d77a0d2b8bc470a85a
Reviewed-on: https://forge.frm2.tum.de/review/18251
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch>
2018-06-25 17:26:01 +02:00
Enrico Faulhaber
807f821968 MLZ_ccr12: update config file
Change-Id: If1419a20318dd14c56c10f221f73e97349fdfeeb
Reviewed-on: https://forge.frm2.tum.de/review/18260
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2018-06-25 15:36:49 +02:00
Enrico Faulhaber
629a1338bb [MLZ:stressihtf2] add sensor
Change-Id: Ic038b922dc4719c17357540f8a3b53ac605aec50
Reviewed-on: https://forge.frm2.tum.de/review/17749
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
Tested-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2018-04-17 17:36:27 +02:00
Enrico Faulhaber
3b802e67c8 improve Py2/3 compat
Change-Id: I1dfdcb88a492401851d5157c734cd708496bf004
Reviewed-on: https://forge.frm2.tum.de/review/17734
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2018-04-17 17:34:24 +02:00
Jens Krüger
82b3e93126 STRESSIHTF2: Fix maximum ramp value
The maximum ramp value is 9999. This will be used by the entangle server
during the stop, but it collides with the former limit 600 and creates
errors in the client.

Change-Id: I6888b876515a4a13ba04e4ccad3d045a8092f499
Reviewed-on: https://forge.frm2.tum.de/review/17747
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Jens Krueger <jens.krueger@frm2.tum.de>
2018-04-17 13:51:49 +02:00
Enrico Faulhaber
b041d72b66 amagnet: fix wrongly renamed tangomodule
Change-Id: I9069bbe4d7ad0812ab90013731ed5233c792cc63
Reviewed-on: https://forge.frm2.tum.de/review/17737
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2018-04-16 14:29:30 +02:00
Jens Krüger
279d28f960 CCR12: Fix setup to new parameter names
Change-Id: If638d611f302292cf601956c69c75ad1ea97ac71
Reviewed-on: https://forge.frm2.tum.de/review/17723
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2018-04-16 14:27:02 +02:00
Jens Krüger
4c7752e3a2 STRESSIHTF2: add setup
Change-Id: I4b5db4ac540a5d7f5e413f3f06f6a4cf817d97d9
Reviewed-on: https://forge.frm2.tum.de/review/17722
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2018-04-16 14:26:53 +02:00
Enrico Faulhaber
3ae82fb352 fix regression from renaming device to module
Change-Id: I05c6c1d5bef2d6e4bce6a6130793bf8a8ed9bd6c
Reviewed-on: https://forge.frm2.tum.de/review/17272
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2018-02-08 09:38:41 +01:00
Enrico Faulhaber
5621b17ee4 More simulation cfg's
Change-Id: I57c0d85513e673cf070870708a7a3f75e90ebeda
Reviewed-on: https://forge.frm2.tum.de/review/17157
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2018-02-07 13:57:51 +01:00
Enrico Faulhaber
41eb7e6508 Provide mlz_ccr12 simulation mockup cfg
Change-Id: Ia473023dba6004a9148678c2af4dec9df9516054
Reviewed-on: https://forge.frm2.tum.de/review/17129
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2018-01-22 18:03:26 +01:00
Enrico Faulhaber
b0c3ac01d4 Provide a mean for simulation dummy devices
create the correct descriptive data.
Main use case is for unit-tests and testing custom configs.

Change-Id: I3077f80cb9fdbf2443ee9da796c3749707fd2b55
Reviewed-on: https://forge.frm2.tum.de/review/16806
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2017-12-15 15:00:04 +01:00
Enrico Faulhaber
4b02a4c82e fix amagnet
Change-Id: I6f1dedd5dfdd10cc828e27ea22440c35a25c2b9d
Reviewed-on: https://forge.frm2.tum.de/review/16790
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
Tested-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2017-11-30 10:55:34 +01:00
Enrico Faulhaber
ab5beeeae6 wait for tango
Change-Id: Ie316eb0fbd954c40ccef1dab0f60916a78340994
Reviewed-on: https://forge.frm2.tum.de/review/16327
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
Tested-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2017-09-22 17:34:28 +02:00
Enrico Faulhaber
c627caf0d1 fix init script
Change-Id: I0bc2e95bf87eaba02b5d502719354e439042de1e
Reviewed-on: https://forge.frm2.tum.de/review/16323
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
Tested-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2017-09-22 13:29:00 +02:00
Enrico Faulhaber
eeac276601 Remove obsolete protocol implementations
Change-Id: I9342ff3d00666238b6412b41a3785dadd96a7778
Reviewed-on: https://forge.frm2.tum.de/review/16273
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
2017-09-18 15:14:04 +02:00
Enrico Faulhaber
c5671dd26e implement Writable as specified.
Change-Id: I8a1b192dcfba91ae1828a2b2e0e2e8bd24538c08
2017-09-13 09:32:59 +02:00
Enrico Faulhaber
b9b2db1763 fixups
Change-Id: Ibbae99d1c51edcbf251f43cd75f21e448825139c
2017-09-12 18:25:06 +02:00
Enrico Faulhaber
2613c7daf1 update descriptions of provided configurations
Change-Id: I6ab0049d62ee0442898c964f14c8fea5ac23fab5
2017-09-12 16:19:15 +02:00
Enrico Faulhaber
96ac437fd3 fix transport and display of node-properties
Change-Id: I35a3021768e386a5ce922c8e24128d0bc3a039be
2017-09-12 16:10:22 +02:00
Enrico Faulhaber
ba59448442 fixups
Change-Id: If1377ef41f8d500ccab0e2a0979343b4c090c036
2017-09-11 17:50:20 +02:00
Enrico Faulhaber
b26b64032e fixups
Change-Id: Ib0c6fddd38f594d735feadce31e4809e7a4c5d44
2017-09-11 11:27:52 +02:00
Alexander Lenz
54ca6e1f4e init script: add should start.
Change-Id: I86bc1c410e8d4be7b9856939d8f84b29250041c2
2017-08-01 12:27:03 +02:00
Enrico Faulhaber
2bb96bea70 provide setup for MLZ_Amagnet to be used @PSI soon
Also implement lots of fixes and improvements.

fixes: #3381

Change-Id: Ibe6664da00756ae5813b90f190295045808b2ff0
2017-07-27 11:21:05 +02:00
Enrico Faulhaber
29ee07c5b3 several improvements and bugfixes
+ rework GUI
  - include a combobox for selection of visibility
  - include a checkbox wether validation should be done in the client
  - remove unused lineEdit
+ improve datatypes
+ improve tests for new descriptive data
+ metaclasse: fix overlooked read_* or write_* func's
+ improve polling
+ Introduce new ErrorClasses
+ dispatcher: use new features of datatypes + PARAMS
+ improve lib
+ autopep8
+ first working version of MLZ_entangle integration
+ split specific stuff into it's own package (MLZ,demo,ess)

Change-Id: I8ac3ce871b28f44afecbba6332ca741095426712
2017-07-19 11:03:29 +02:00
Enrico Faulhaber
f984129986 GUI: show grouping of parameters
still todo: grouping of modules

Change-Id: I67e8582004f16061dda96e455f424f5a12e6a163
2017-05-24 17:15:22 +02:00
Erik Dahlbäck
241af728d6 fix whitespace issues
Change-Id: I2045828bb0a46a9840731f61cbeec41402fecb2b
2017-05-24 17:09:42 +02:00
Erik Dahlbäck
502d0f152a rework Epics support/testing with LS336
second approach, better fitting what was agreed upon so far.
- pv_names are local to SEC-node, so not exporting via json and marking
  them 'private'
- 2 devices for 2 temperature control loops, not one 'monster' device
  which handles everything.
- read_status implemented
- write_target also updates the status (may be sensible to go to the core?)
- provide working stubs in case epics is not installed (-> testing possible)
- tested with the stubs.
- tests with real epics.

found problems:
in EpicsTempCtrl(EpicsDriveable) the read/write_<paramname> methods from
EpicsDriveable needed to be reimplemented. This should not be needed!

Change-Id: I9e4eeaff83114131d117c8f04fba758dfe22237b
2017-05-24 12:29:10 +02:00
Enrico Faulhaber
8123d21897 implement configurable module-properties
+ make parameter-properties configurable
+ better derivation of automatic properties
+ implement 'group' properties (how to display in gui???
+ clean up descriptive data by omitting unset and live properties

Change-Id: Icd2b6e91e09037e9d4a8d6ad88483f8509a2cf5f
2017-01-26 17:05:25 +01:00
Enrico Faulhaber
6ec30e38e8 polishing for a demo
+ adopting additional requests

Change-Id: If5ca29b5d247f1bc429ca101b0081b1d14f6e6f1
2017-01-26 10:13:12 +01:00
Enrico Faulhaber
d5e935788f Bug hunting and polishing
Change-Id: I0f05730dd4e01e926ab0c4870c27ed5754f3ccfd
2017-01-23 17:48:50 +01:00
Enrico Faulhaber
78bb3b5f96 Pep8 improvements + cleanup
Change-Id: I9052e703b58e93b639c027521b47f693ae853f6e
2016-12-16 14:21:42 +01:00
Enrico Faulhaber
7320ac1538 Provide basic client Object
also improve the describing data and core params

Change-Id: I645444f2a618fdfd40a729e1007c58def24d5ffb
2016-12-15 14:24:25 +01:00