40 Commits

Author SHA1 Message Date
Alexander Zaft
15d38d7cc1 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 14:06:06 +01:00
db9ce02028 Revert "revert commits done before MZ holidays"
This reverts commit d2885bdd72331b60b5a6f26e0c52683d110406b5.
2023-08-18 16:32:16 +02:00
d2885bdd72 revert commits done before MZ holidays
they are all not neccessary for SINQ SE operation

Change-Id: Ic9adcccf685752ab90bb6b86005ac8e04b302855
2023-07-06 08:03:15 +02:00
975593dd6b update to gerrit version
Change-Id: Ifdaa28dd961a529cd9197c4c3639744f108b0a6a
2023-07-05 17:33:05 +02:00
9a6421a54f up to date with develop/mlz
Change-Id: I5ea71bc99a2f0dffc3dbe37e1119eb188ef8a3f0
2023-05-31 14:27:36 +02:00
df4a37085a frappy-cli: fix init(*...)
Change-Id: Iba8106a779ac399e6d72d247ea93e6c1e8cdbf94
2023-05-15 11:12:31 +02:00
l_samenv
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
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
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
34b93adef0 more merges from gerrit
Change-Id: I13441cd8889dd39f74a2dd1a85e75a1b76bb93c8
2022-03-08 10:52:14 +01:00
acb3bdad6a varios fixes at psi repo, as of 2022-02-01
Change-Id: I8cdc849126d52ef0f2f27a0faf661830aac6f874
2022-02-02 09:57:30 +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
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
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
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
Enrico Faulhaber
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
Seger Sandra
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
Enrico Faulhaber
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
Enrico Faulhaber
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
Alexander Lenz
449bdcd48b Fix path detection.
Change-Id: If76969e6c753596fff885fdb021ba53b1537c945
2017-09-07 11:08:10 +02:00
Enrico Faulhaber
2e492269b8 fix typo
Change-Id: Ic7125870f209dd9b12e597e43a4874c30da3ca05
2017-07-27 11:38:04 +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
c0fd2e9907 Use mlzlog for better logging
Change-Id: Ic82ca0d7b43a906cb9c7d3f1350287e7082afc45
2017-05-16 18:17:43 +02:00
Enrico Faulhaber
d5e935788f Bug hunting and polishing
Change-Id: I0f05730dd4e01e926ab0c4870c27ed5754f3ccfd
2017-01-23 17:48:50 +01:00
Alexander Lenz
d442da0789 Stub debug client gui.
Change-Id: Ib422c66bc36245e1fc3c450765d7555da5c8dda0
2017-01-19 10:04:16 +01:00
Enrico Faulhaber
78bb3b5f96 Pep8 improvements + cleanup
Change-Id: I9052e703b58e93b639c027521b47f693ae853f6e
2016-12-16 14:21:42 +01:00
Enrico Faulhaber
b6af55c358 reworking messages
1) start 'bin/secop-server test'
2) connect to localhost port 10767
3) enter help<enter>
4) enjoy

Change-Id: I488d5f9cdca8c91c583691ab23f541a4a8759f4e
2016-12-08 13:46:32 +01:00
Enrico Faulhaber
8c825a93ed Implement a variant of the Demo protocol from Markus
include LOTs of bugfixes as well

todo: documentation!

Change-Id: I52252ade34966d24990afd9672f38049882c3199
2016-08-31 08:28:51 +02:00
Alexander Lenz
2dae7649be Fix/Improve startup/init.
Change-Id: Ia4b90c75a8cf89f4069bd8984a0e0c88f9ffa832
2016-08-08 13:39:50 +02:00
Alexander Lenz
e0bf201b48 Improvements.
Change-Id: I773b69e72b7167292dbe0ec751039f15e76523a5
2016-08-04 15:42:00 +02:00
Enrico Faulhaber
c11bca3c37 rework on transport (encoding/framing) and dispatcher
put encoders and framers into their own files.
also rework messages and dispatcher
make tcpserver functional

FIRST WORKING VERSION!
(no daemon mode yet, sorry)

start bin/server.py, connect a terminal to localhost:10767
and press enter....

note: not all requests are bug free yet, ListDevicesRequest() works

Change-Id: I46d6e469bca32fc53057d64ff48cce4f41ea12ea
2016-06-29 18:14:55 +02:00
Enrico Faulhaber
d3c430e1b9 Devices infrastructure and minimal server
starts and creates (server-side) devices
no daemonizing and servicing yet

hint: try starting:
$ bin/server.py -v start

Change-Id: I6ac7a78dfff309a459cc0338a8d0d319ee72ada5
2016-06-22 17:21:18 +02:00
Enrico Faulhaber
b52c2d7a60 First checkin, base point for development
+ docu-converter
+ some python source files
+ Makefile

Change-Id: I055522c2feff9b72fc4bc88d6663642c78693fe8
2016-06-13 15:49:23 +02:00