75cfffb548
all: remove coding cookies
...
Change-Id: I53a4d79c3ebc50b8aed43a5ef1fa6538f8059a47
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/32251
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
Reviewed-by: Alexander Zaft <a.zaft@fz-juelich.de >
2024-01-29 16:00:08 +01:00
6b8e6498fa
Revert "revert commits done before MZ holidays"
...
This reverts commit d2885bdd72
.
2023-10-16 17:49:30 +02:00
8124ed3294
revert commits done before MZ holidays
...
they are all not neccessary for SINQ SE operation
Change-Id: Ic9adcccf685752ab90bb6b86005ac8e04b302855
2023-10-16 17:49:19 +02:00
aa7910c28c
update to gerrit version
...
Change-Id: Ifdaa28dd961a529cd9197c4c3639744f108b0a6a
2023-10-16 17:49:19 +02:00
dc0cc590ed
Merge branch 'wip' into develop
...
Change-Id: Ib5084b8750b31523819c688f4954c52cef4d4a0c
2023-05-31 14:06:05 +02:00
df4a37085a
frappy-cli: fix init(*...)
...
Change-Id: Iba8106a779ac399e6d72d247ea93e6c1e8cdbf94
2023-05-15 11:12:31 +02:00
087036922a
move more code from bin/frappy-cli to frappy/client/interactive.py
2023-05-11 10:42:10 +02:00
3fcd72b189
merge manually with mlz repo
...
as of 2023-05-04
Change-Id: I5926617c454844927799e20a489db20d538db100
2023-05-04 16:34:09 +02:00
748ea1400a
improve interactive client
...
- remove irrelevant traceback on remote errors
- add run() function to execute scripts
- when started with bin/frappy-cli, use separate namespace
Change-Id: Ic808a76fa76ecd8d814d52b15a6d7d2203c6a2f3
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/30957
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2023-05-02 15:54:32 +02:00
da15df076a
fetched mlz version
...
- before some chamges in the gerrit pipline
Change-Id: I33eb2d75f83345a7039d0fb709e66defefb1c3e0
2023-05-02 15:25:11 +02:00
1171245704
add playground
...
+ fix SR_7270 communicator
Change-Id: If9604f9a6fe59ca3de3bbdbecf1b5053fce0573e
2023-04-26 13:54:53 +02:00
98162a59b9
add frappy-cli
...
Change-Id: I2622212e178ceede7cc7285564a7a09929fafc5c
2023-04-21 16:17:31 +02:00
4f69899fbe
interactive client: avoid messing up the input line
...
- trigger a redraw of the input line when asynchronous log
messages arrive
+ do not print traceback on 'remote' errors
+ persistent readline history
Change-Id: If85fd064c1c09c44e0cb0ebccbfc1b6411ad5aac
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/30793
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2023-04-21 16:17:30 +02:00
df8bc1c203
cli: add argparse and inlcudes before repl
...
+ add argparse to cli
+ add option for files that are executed after connection to the modules
but before repl starts
+ add option to skip interactive mode after executing files
Change-Id: I8f01db84b2c91d4bf1a7b397e8fa1bf0c87ddf0d
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/30823
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Tested-by: Markus Zolliker <markus.zolliker@psi.ch >
Reviewed-by: Alexander Zaft <a.zaft@fz-juelich.de >
2023-04-21 16:17:30 +02:00
79277e86f1
fix generalConfig defaults
...
bin/frappy-server:
- the default for omit_unchanged_within must not be overriden
+ remove no longer used disable_value_range_check
Change-Id: I5c0620e44dc7df3ae2ca48f7ab6371189acae489
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/30727
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2023-04-21 16:17:30 +02:00
d4b80eabd6
[Needs Feedback] Add PyQt6. Remove PyQt4
...
- fully qualify enum values for Qt6
- add resource file per Qt version
- TabWidget: use QPointF instead of QPoint for constructing mouse event
Change-Id: I07da61c36c4228a60f6b5b9dacbead27c0a2409d
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/30585
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
Reviewed-by: Alexander Zaft <a.zaft@fz-juelich.de >
2023-04-21 16:15:20 +02:00
746df2eb94
improve online help of frappy-cli
...
- help text shown exactly once (even with no or more arguments)
- automatically generated client object names
+ stay in interactive mode even when not all clients succeded
Change-Id: Iefcac66df92f47363e43bc9b97bb2082f153e5df
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/30583
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Alexander Zaft <a.zaft@fz-juelich.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2023-04-21 16:15:20 +02: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
a66f2ac21b
Remove auto-connect to 10767 on startup
...
* not necessary with greeter
* Port is default in greeter text field
Change-Id: If89cb72ec6af20fd4d83488af85b942c5f54b105
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/30531
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Alexander Zaft <a.zaft@fz-juelich.de >
2023-03-06 08:24:15 +01:00
9f54d89efa
Rework GUI.
...
Work-in-progress state of the new gui.
Change-Id: Ib5e9ad2178b372fbd2914077096a9c73f025ecb7
2023-03-06 08:24:15 +01:00
38ae301cda
add frappy-cli
...
Change-Id: I2622212e178ceede7cc7285564a7a09929fafc5c
2023-01-30 17:16:08 +01:00
b19a8c2e5c
converter for creating python config files
...
+ testmode in server returns errors
+ fix in (old) statemachine
Change-Id: Icdfd6c3d8f70e717fecd61e8a54adad326be6000
2023-01-23 18:00:56 +01:00
c522c41654
GUI: add logging infra, switch to argparse
...
First part for #4662
Change-Id: I75877337e8ea35d4c4555471ee4518c942dac88a
2022-12-08 16:38:00 +01:00
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
526a182ed7
init generalConfig.defaults only in secop-server
...
generalConfig.defaults must not be set on import, as this
depends on import order
Change-Id: I00395b40b4281ddc044c196713f6512068011380
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/27985
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 >
2022-04-08 15:36:23 +02:00
e6d6179925
init generalConfig.defaults only in secop-server
...
generalConfig.defaults must not be set on import, as this
depends on import order
Change-Id: I00395b40b4281ddc044c196713f6512068011380
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/27985
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 >
2022-03-22 07:56:38 +01:00
34b93adef0
more merges from gerrit
...
Change-Id: I13441cd8889dd39f74a2dd1a85e75a1b76bb93c8
2022-03-08 10:52:14 +01:00
b423235c5d
new poll mechanism
...
- remove secop.poller and basic poller
- regular polls for 'important' parameters done by method doPoll
- all other parameters are polled slower (slowInterval) and
with lower priority (only one at a time when main poll is due)
- nopoll decorator for read_* to disable poll
- enablePoll attribute (default True) for disabling polling a module
- fast polls may be implemented by means of a statemachine
- configurable slow poll interval
+ allow a Parameter to override a Property (parameter
Readable.pollinterval overrides Module.pollinterval)
Change-Id: Ib1b3453041a233678b7c4b4add22ac399670e447
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/27832
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
2022-03-04 09:58:15 +01:00
acb3bdad6a
varios fixes at psi repo, as of 2022-02-01
...
Change-Id: I8cdc849126d52ef0f2f27a0faf661830aac6f874
2022-02-02 09:57:30 +01:00
c1307cdd03
unify name and module on Attached property
...
- setting the attribute using the name of an attached module
- getting the attribute results in the module object
+ change names iodev to io, iodevClass to ioClass,
sendRecv to communicate, HasIodev to HasIO
Change-Id: I200b63a5a7dc1453bf6ac998782b065645201900
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/27575
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2022-01-31 10:57:49 +01:00
b911bc1838
check for problematic value range
...
A common problematic practice is, to declare the value parameter
with the same FloatRange than the target. Because of measurement
errors, a value might be near, but outside the limit.
In order to avoid this, we force the programmer to declare a
bigger range for the value than for the target, or to
explicitly disable this check on a module property.
It is also fine to declare the value without limits.
This behavior may be disabled via command line option or in the
general config file. For simplicity, FloatRanges inside data
structures are not considered.
+ above command line option is also used to disable the error
handling on a string to float conversion
+ log appropriate error message for string to float conversion
Change-Id: Ib78ea1fb7c821442bf5847030573c8c27822dea5
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/27574
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 >
2022-01-31 09:12:39 +01:00
f3450375ce
enhance logging
...
- bin/secop-server options -v and -q applied to console logger only
- level for logfile taken from general config
- option for automatic deletion of old logfiles
- added 'comlog' level (between debug and info)
This allows to run the servers by default with 'comlog' level on
the logfiles, which helps a lot for analyzing very rare communication
errors in retrospect.
to avoid spamming of the normal log files, comlog data is stored
separately, one file per communicator
+ redesign of remote logging (no more need of LoggerAdapter)
Change-Id: Ie156a202b1e7304e50bbe830901bc75872f6ffe2
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/27427
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2022-01-17 10:19:55 +01:00
f13e29aad2
introduce general config file
...
+ redesign general config
+ remove obsolete secop/paths.py
Change-Id: Ice08ec37c54b1a6e2e2e6e29fdaaf0bd2dd725dc
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/27362
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2022-01-05 09:05:00 +01:00
fbccd0f9b7
remove obsolete code
...
- basic_validators is not needed any more since the implementation
of datatypes.Stub
- client/baseclient.y is replaced by client/__init__.py both for
the gui client and NICOS SECoP client
- lib/parsing.py used by baseclient only
Change-Id: I15b6ac880017000e155b8f6b7e2456e1bbf56dab
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/25058
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 >
2021-02-26 17:27:13 +01:00
899a07aec8
remove obsolete code
...
- basic_validators is not needed any more since the implementation
of datatypes.Stub
- client/baseclient.y is replaced by client/__init__.py both for
the gui client and NICOS SECoP client
- lib/parsing.py used by baseclient only
Change-Id: I15b6ac880017000e155b8f6b7e2456e1bbf56dab
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/25058
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 >
2021-02-26 13:21:48 +01:00
4411707f6a
change arguments of stringio-server
...
+ add verbosity flag
Change-Id: I0425efb11f03f8a59d3d81e8f2eeb95aca22e138
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/23032
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 >
2020-05-04 16:30:36 +02:00
bd56481276
support for multiple secop servers
...
- server port can be given as cmd line argument
- multiple cfg files may be merged on one server
needed for the way how frappy is planned to be used at PSI
+ add --test option in bin/secop-server
Change-Id: I1e77f65891b15a70b191cbac8168e69715ace3dc
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/22947
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2020-04-23 09:48:08 +02:00
89c98fa716
move argument handling from mainwindow.py to bin/secop-gui
...
allows calling the GUI client independently from command line arguments
Change-Id: If51b899c456ad610cf8a64f9b0f7c8a218cf5c5b
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/22503
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2020-02-24 08:09:02 +01:00
9825b9c135
new generic secop client
...
new client intended as base class for all clients
- based on Ennos secop client in nicos ([WIP] provide secop client)
- self healing connection singletons
- extension for other than TCP is foreseen (by extending new uri schemes)
- extensible name mangling
- seperate rx and tx threads supporting events
- internal cache
- extensible error handling
- callback for unhandled messages
- callback for descriptive data change
- callback for node stat change (connected, disconnected)
- a short close down and reconnect without change in descriptive data
does not disturb the client side
works with secop-gui (change follows), planned to be used for Frappy
internal secop proxy and as a replacement for secop.client.baseclient.Client
in the nicos secop device.
-> secop/client/baseclient.py to be removed after planned changes
moved secop/client/__init__.py to secop/client/console.py because secop.client
would be the natural place to put the new base class.
Change-Id: I1a7b1f1ded2221a8f9fcdd52f9cc7414e8fbe035
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/22218
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2020-01-30 08:51:47 +01:00
cb4874331b
driver for Lakeshore Model 370 resistivity measurement
...
- this does not (yet) include temperatures and control loop
- including stringio-server for test purposes
Change-Id: I414ae2e6663bb0773fe60db1798401dfc9dde018
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/22005
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2019-12-13 17:13:05 +01:00
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
c1164568ae
further fixes of py3 issues
...
complaints by pylint are mainly related to
- remove object from base list in class definitions
- unnecessary else/elif after return/raise
Change-Id: I13d15449149cc8bba0562338d0c9c42e97163bdf
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/21325
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2019-09-26 14:15:48 +02:00
70a9c42a7a
Remove py2 support
...
Change-Id: Ieeaeb3b8efcae004e94aea6c1d2703c9782a8650
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/21320
Tested-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
2019-09-26 10:32:01 +02:00
e1f017d678
add cfg-editor
...
Change-Id: I68b8ba9311ec0487d7a2676095a7170a2447b3d0
Reviewed-on: https://forge.frm2.tum.de/review/20206
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
2019-07-23 14:23:26 +02:00
8efd1df92c
fix isort
...
Change-Id: I5486e1f9b3143c6bb0804c49c7ca21adb9b84de1
Reviewed-on: https://forge.frm2.tum.de/review/19524
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
Tested-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
2018-12-04 10:18:55 +01:00
e830666315
Support PyQt5 (fallback to PyQt4)
...
Change-Id: I7fa1add00d677e626fee5cd1071dee54d0bf8565
Reviewed-on: https://forge.frm2.tum.de/review/17666
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 >
2018-04-11 12:43:04 +02:00
449bdcd48b
Fix path detection.
...
Change-Id: If76969e6c753596fff885fdb021ba53b1537c945
2017-09-07 11:08:10 +02:00
2e492269b8
fix typo
...
Change-Id: Ic7125870f209dd9b12e597e43a4874c30da3ca05
2017-07-27 11:38:04 +02:00
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
c0fd2e9907
Use mlzlog for better logging
...
Change-Id: Ic82ca0d7b43a906cb9c7d3f1350287e7082afc45
2017-05-16 18:17:43 +02:00