Skip to content

Conversation

@JeanLucPons
Copy link
Contributor

@JeanLucPons JeanLucPons commented Jan 22, 2026

Added example on BESSY2 VA for chroma measurement.

image

@JeanLucPons JeanLucPons merged commit 281c5f5 into main Jan 23, 2026
3 checks passed
@JeanLucPons JeanLucPons deleted the add-chromaticity-bessy2 branch January 23, 2026 12:30
@simoneliuzzo
Copy link
Contributor

Dear @JeanLucPons

I get this error messagge:

23 Jan 2026, 13:31:57 | WARNING | OA control system binding for PyAML initialized with name 'live' and prefix='liuzzo:'
Traceback (most recent call last):
  File "/Users/liuzzo/Desktop/pyaml_workshop_dev_instruction/pyaml/pyaml/configuration/factory.py", line 141, in build_object
    obj = elem_cls(cfg)
TypeError: Can't instantiate abstract class EpicsR without an implementation for abstract methods 'check_device_availability', 'get_range'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/Users/liuzzo/Desktop/pyaml_workshop_dev_instruction/pyaml/examples/BESSY2_example/bessy2-chroma.py", line 3, in <module>
    sr = Accelerator.load("BESSY2Chroma.yaml")
  File "/Users/liuzzo/Desktop/pyaml_workshop_dev_instruction/pyaml/pyaml/accelerator.py", line 173, in load
    return Accelerator.from_dict(config_dict)
           ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/Users/liuzzo/Desktop/pyaml_workshop_dev_instruction/pyaml/pyaml/accelerator.py", line 143, in from_dict
    return Factory.depth_first_build(config_dict, ignore_external)
           ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/liuzzo/Desktop/pyaml_workshop_dev_instruction/pyaml/pyaml/configuration/factory.py", line 175, in depth_first_build
    obj = self.depth_first_build(value, ignore_external)
  File "/Users/liuzzo/Desktop/pyaml_workshop_dev_instruction/pyaml/pyaml/configuration/factory.py", line 165, in depth_first_build
    obj = self.depth_first_build(e, ignore_external)
  File "/Users/liuzzo/Desktop/pyaml_workshop_dev_instruction/pyaml/pyaml/configuration/factory.py", line 175, in depth_first_build
    obj = self.depth_first_build(value, ignore_external)
  File "/Users/liuzzo/Desktop/pyaml_workshop_dev_instruction/pyaml/pyaml/configuration/factory.py", line 180, in depth_first_build
    return self.build_object(d, ignore_external)
           ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
  File "/Users/liuzzo/Desktop/pyaml_workshop_dev_instruction/pyaml/pyaml/configuration/factory.py", line 144, in build_object
    raise PyAMLConfigException(
        f"{str(e)} when creating '{type_str}.{cls_name}' {location_str}"
    ) from e
pyaml.common.exception.PyAMLConfigException: Can't instantiate abstract class EpicsR without an implementation for abstract methods 'check_device_availability', 'get_range' when creating 'pyaml_cs_oa.epicsR.EpicsR' /Users/liuzzo/Desktop/pyaml_workshop_dev_instruction/pyaml/examples/BESSY2_example/BESSY2Chroma.yaml at line 18, column 5.


@simoneliuzzo
Copy link
Contributor

@JeanLucPons:
I updated the pyaml-cs-oa and now it is running ok.
thank you

@simoneliuzzo
Copy link
Contributor

Dear @JeanLucPons
if I switch to sr.design then the measurement is not ok
Screenshot 2026-01-23 at 13 38 06
but the output is correct
(pyaml_bessy2_venv) macliuzzo:BESSY2_example liuzzo$ python bessy2-chroma.py 23 Jan 2026, 13:37:41 | WARNING | PyAML OA control system binding (0.1.1) initialized with name 'live' and prefix='liuzzo:' Moment compaction factor: 0.0007079019672909947 [1.7494258 3.01929974]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants