Commit Graph

1523 Commits

Author SHA1 Message Date
f563999a9e frappy_psi.mercury: communication needs latin-1 encoding
this means also StringType(isUTF8=True)
2026-02-13 10:39:05 +01:00
1ea8aad20c adapt stick motor address to focus 2026-02-13 10:20:52 +01:00
aa753b8e7e followup fix to 38071: class missing 'frappy.' prefix
in 38071 get_class was modified not to prefix 'frappy.'
when path does not start with 'frappy'.

Change-Id: I528ed552a2af693794ce7f92c2e7dc43f4118f27
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/38435
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de>
Reviewed-by: Georg Brandl <g.brandl@fz-juelich.de>
2026-02-12 17:20:10 +01:00
71ab0bebd5 frappy-edit: add missing bin/frappy-edit
Change-Id: I43b4d645186342c08d296ef5482e63f1ec667b93
2026-02-12 09:34:16 +01:00
18f6fa239b frappy-edit: fix class completion
when the suggestion ends with a dot, all possibilities have
to be on the popup menu

Change-Id: Ic6f759d1e9d4028695d8949be5d4e3e81bbbe044
2026-02-12 09:00:22 +01:00
00318cc7a1 frappy-edit: add default cfg path given typically at psi
Change-Id: I91032c912d76f555ae88e3e7ae313fa3c03948bd
2026-02-11 14:30:01 +01:00
7167d02613 add ioClass to many module classes
+ add converted mb11_cfg.py

Change-Id: Ic985fc16b5ce39caacbf1f3abd87b13b1e7c2da7
2026-02-11 13:40:32 +01:00
e1e642fb2f beta version of frappy-edit
Change-Id: I82b35505207429cddac44d28222e20627b3a90b3
2026-02-11 13:40:32 +01:00
53256d1583 [WIP] work on curses cfg editor
state as of 2026-01-28

Change-Id: I73d2fa4e6fda8820a95fe4e7256c7a23bf565f67
2026-02-11 13:40:32 +01:00
e741404d0b simplify configuration of IO modules
As the communicator class needed for a module can be specified,
in the configuration we do not need to specifiy it explicitly.

A new configurator function IO() is introduced for this, defining
names and uri only.

- update also configuration reference and a tutorial example
- update get_class function to accept attributes of classes like
  'frappy_demo.lakshore.TemperatureSensor.ioClass' and import from
  modules other than frappy... like 'test.test_iocfg.Mod'.
- add ioClass to the example class for the temperature controller
  tutorial

Change-Id: I3115371d612f14024e43bc6d38b642e1d27b314d
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/38071
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de>
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch>
2026-02-11 13:40:32 +01:00
d0b56ae918 followup fix for 37776: remove Secnode.raise_config_errors
use raise_config_errors from generalConfig

Change-Id: I5c05edee452540ddc0401f47b375335690d29e54
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/37935
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch>
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de>
Reviewed-by: Georg Brandl <g.brandl@fz-juelich.de>
2026-02-11 13:40:32 +01:00
c353ed3499 frappy_psi.picontrol: stop when switching to manual mode
Change-Id: I3ffb9a109fb3b04fbca06f5a72acbfbd19525aae
2026-02-11 13:40:32 +01:00
e616b40fc8 frappy_psi.dilution_new: add file 2026-01-21 17:16:25 +01:00
40934e45bc frappy.lib.mathparser: add relational operators 2026-01-21 17:15:52 +01:00
ce29430e18 cfg.sim_dil_cfg: add file 2026-01-21 17:13:56 +01:00
9d98a381b0 cfg.dil4_test_cfg: add bronkhorst modules 2026-01-21 17:13:13 +01:00
32dad35075 frappy_psi: add file 2026-01-21 17:12:37 +01:00
705f0173f4 cfg: add bronkhorst cfg 2026-01-21 16:03:37 +01:00
3cb6b10183 frappy_psi.bronkhorst: minor change 2026-01-21 16:02:59 +01:00
d7a07b63ae cfg.dil4_test_cfg: add 2026-01-14 17:29:36 +01:00
07263281fd frappy_psi.oiclassic: extend and test IGH 2026-01-14 17:29:11 +01:00
600d11d3bb frappy_psi.oiclassic: add IGH (not finished) 2026-01-07 18:09:15 +01:00
8f835e3d3d cfg.test_ips_cfg: minor changes 2025-12-10 17:12:24 +01:00
ec226a9124 frappy_psi.ips_classic: converted file to oiclassic 2025-12-10 17:11:50 +01:00
7d0ca5f9dd cfg: add hcp cfg file 2025-12-10 17:11:09 +01:00
6ea8bc6e52 frappy_psi: add oiclassic (not finished) 2025-12-10 17:10:54 +01:00
75c3161035 frappy_psi.bronkhorst: add bronkhorst 2025-12-10 17:09:32 +01:00
ecf4192d53 frappy_psi.magfield: add trainmode 2025-12-10 17:08:29 +01:00
3586f53c3d cfg: add bronkhorst cfg file 2025-12-10 17:07:07 +01:00
7994177873 add cfgs for fibrestick/laser 2025-12-03 10:30:04 +01:00
8e95fa9266 ma7_thermalc: fix read/write parameters 2025-12-03 10:30:04 +01:00
38dd5b8ebb frappy_psi.ips_classic: small fixes
Change-Id: I6dcfc48d247a5581e969717b57675cf5d4cc34f7
2025-11-25 09:59:15 +01:00
3cc9cadeb9 frappy_psi.ips_classic: add skeleton code
Change-Id: I99d5c66e1b995559f3a8d876a91d904bf88904aa
2025-11-25 09:56:53 +01:00
dfb8037a65 frappy_psi.ahcapbridge: fix loss unit mechanism
Change-Id: Iba4ca4988146a71a01dcc6dbe911be5588bfe292
2025-11-21 07:58:24 +01:00
e8e5d2743a frappy_psi.ahcapbridge: fix behaviour when serial echo is on 2025-11-20 17:21:33 +01:00
77bda6a72f add frappy haake driver cfg
move haake sea configs to cfg/obsolete_sea_cfg
2025-11-20 11:33:51 +01:00
42ebe05d5b added an example config 2025-11-20 11:33:51 +01:00
765218eed2 frappy_psi.ahcapbridge: simplify
- remove the auto detect from replies
- improve readability
- add not implemented attributes in AHBase to avoid pylint
  complaints

Change-Id: I20aabe6c5cfaad94845cdfff22b889fb7ff7e257
2025-11-18 12:03:00 +01:00
f00d37b7a6 frappy.client.interactive: cosmetic fixes 2025-11-17 16:33:24 +01:00
3575921ac0 frappy_demo.test: add simple writable 2025-11-17 16:07:44 +01:00
f832e40898 add shortcut for acquisition modules
acq(<goal>) sets goal, starts and waits for completion
2025-11-17 16:06:07 +01:00
495ad01ff6 changes for leiden dil
- fixes on frappy_psiahcapbridge
- fixes on cfg files
- add cp1000 sea cfg files
2025-11-17 16:01:51 +01:00
e786c5ec77 frappy_psi.dilhtr: add Ctrlby wrapper
+ minor fix in tcs.py
2025-11-17 15:57:41 +01:00
a7b3f23bef frappy_psi.bridge: minor fixes
TODO: rename the file
2025-11-17 15:52:28 +01:00
151627b4f4 frappy.io: add readline method
For devices sending messages asynchronously, a simple
readline method is added. Waiting for characters is not
blocking writeline - only the actual reading is using
a lock.
This needs also some rework of frappy.lib.asynconn.
2025-11-17 15:48:45 +01:00
ee26c72ed4 add missing property check
check also values of properties with mandatory=False

Change-Id: I346691a7260a4d85b89c9620c097180da4e9d657
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/37777
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch>
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de>
2025-11-13 17:30:08 +01:00
9fe040e9d3 improve error handling during polls
improve the mechanism which avoids duplicated error messages
in the log file:

- extend to errors in doPoll
- trigger error messages every day, so that they appear in every
  logfile

+ add missing space in some error message

Change-Id: Icfaa06b43ee53f477483bab1f84def832fd0b977
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/37432
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch>
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de>
2025-11-13 17:29:58 +01:00
943995b1d7 improve error handling on startup
- configuration errors on startup are no longer collected in the
  'errors' attribute, but logged immediately and counted in a new
  'logError' method.
- generalConfig may be configured to raise the errors immediately
  instead
- Raise immediately on unhandled errors. Some of them were catched
  before which may lead to strange follow up errors.
- do not start poller thread, when the error count is non-zero
- as before, simple connection failures are not preventing startup,
  but now more severe errors (bad uri) will stop the server

Change-Id: I4f84ee8e86cf2925108c0fe92eaab796bb731091
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/37776
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de>
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch>
2025-11-13 17:29:41 +01:00
8291976c5d frappy.modulebase: remove unneeded while loop
Change-Id: I76cf2d5323187972a1c8849f6b8dc98f99f21f90
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/37699
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de>
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch>
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de>
Reviewed-by: Georg Brandl <g.brandl@fz-juelich.de>
2025-11-13 15:38:33 +01:00
Georg Brandl
2ec2954159 datatypes: make length checks more consistent
Change-Id: If5a5422675571506085c73ff2051ba06f4fb37b2
Reviewed-on: https://forge.frm2.tum.de/review/c/secop/frappy/+/37844
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de>
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch>
Reviewed-by: Georg Brandl <g.brandl@fz-juelich.de>
2025-11-13 15:35:39 +01:00