39th Tango Community meeting at INAF

Europe/Rome
Giulianova

Giulianova

Hotel Europa **** Lungomare Zara, 57, 64021 Giulianova TE
Matteo Canzari (INAF - OAAb)
Description

39th Tango Community Meeting at INAF


Hosted as a hybrid meeting by INAF (Italian National Institute for Astrophysics) and INAF - OAAb (Osservatorio Astronomico d'Abruzzo)
Dates: May 21–23, 2025 (The meeting will take place all day on May 21 and 22, while on May 23, sessions will be held only in the morning.)
Location: Giulianova, Province of Teramo, Italy

Welcome to the 39th Tango Community Meeting at OAAb. We are excited to bring together our international community for three days of inspiring sessions and networking opportunities in the beautiful town of Giulianova.

The agenda is finalized. 

The main Zoom room for the entire Tango Collaboration Meeting will be:

https://us02web.zoom.us/j/86213502238?pwd=f3qUswuECkL6XemSvLMwa6aqlBF4CO.1
Meeting ID: 862 1350 2238
Access code: 228383

Parallel sessions links:

Introductory Workshop to the PANIC Alarm System, led by Sergi Rubio (ALBA):
https://us02web.zoom.us/j/89315189832?pwd=hmk46IctMj0GkbIuFtVpQ2a3VjGYoT.1
Meeting ID: 893 1518 9832
Access code: 908357

Developing Device Servers in Kubernetes, led by Matteo Di Carlo (INAF):
https://us02web.zoom.us/j/86889865586?pwd=u0TnJNobxzuVjmPV1XfPdzVNHwaS5Z.1
Meeting ID: 868 8986 5586
Access code: 092915

All sessions will be recorded and later published on the event's Indico page.

 

In-Person Participation:

  • Registration is required for in-person attendance.
  • A fee of €100 (VAT included) applies, covering coffee breaks, lunches, and the meeting dinner on May 22, 2025.

Important Dates:

  • Registration & Abstract Submission Opens: March 17, 2025
  • Registration (and fee payment) & Abstract Submission Closes: May 15, 2025
     

Please note that physical attendance is limited to 50 participants. Should this limit be reached, we will work with the venue to explore additional capacity, but no extra spots are guaranteed.

Meeting Venue:
The meeting will be held at Hotel Europa in Giulianova.

Accommodation Details:

  • Special Rate: Hotel Europa has a limited allocation of 20 rooms at a special rate.
  • Booking: The reservation form is available in the Accommodation section of our website, where you can also find alternative lodging options.

 

Travel Tip:
Giulianova is a popular tourist destination. Although we are not in peak season, a considerable number of visitors are expected. To avoid higher prices or unavailability of accommodations nearby, we recommend booking as early as possible.

    • 08:00 08:30
      Registration
    • 08:30 09:00
      Welcome
    • 09:00 11:30
      Parallel Worskhop
    • 11:30 12:00
      Coffee break 30m
    • 12:00 13:00
      Facilities Status Update
      Convener: Zbigniew Reszela (ALBA Synchrotron)
      • 12:00
        SOLEIL Status 20m

        SOLEIL Status:
        SOLEIL II status (upgrade plans)
        Current usage of our Web applications
        Archiving status at SOLEIL
        Taurus usage at SOLEIL
        Highlights
        Ongoing developments and solutions

        Speaker: Raphaël GIRARDOT (SOLEIL)
      • 12:20
        SKA Status Update 20m

        The Square Kilometre Array (SKA) is moving rapidly from conceptual designs to tangible construction, with trenches being dug and dishes being installed. The highly anticipated AA0.5 milestone has produced the first image from the SKA-Low telescope demonstrating the system's operational viability; the system works! This significant accomplishment has provided invaluable insights, prompting a retrospective review of our control system. Since the control systems for both telescopes have a shared architecture, we are confident in our ability to produce the first image from SKA-Mid within this year, marking another critical milestone. This talk will delve into these key developments and showcase how the TANGO control system framework has been crucial in enabling the advancement of the Telescope Control System.

        Speaker: Samuel Twum (SKAO)
      • 12:40
        LOFAR2.0 Monitoring and Control Status Update 20m

        LOFAR is the LOw Frequency ARray comprising of
        54 stations across Europe with the majority
        located around Exloo in the Netherlands. This
        radio telescope is currently undergoing a major
        upgrade including a drastically redesigned
        monitoring and control design leveraging (Py)Tango.

        In this presentation we show the current state
        of this LOFAR2.0 monitoring and control system across
        its various layers and technologies including how we
        use PyTango. The contents show various interesting
        technologies and standards such as OPCUA, gRPC,
        Prometheus, and Grafana as well as how these
        services are spread across our stations and central
        facilities. Next we show our current roadmap and our
        envisioned future directions.

        Speaker: Corne Lukken
    • 13:00 14:00
      Lunch 1h
    • 14:00 15:20
      Facilities Status Update - part 2
      Convener: Reynald Bourtembourg (ESRF)
      • 14:00
        NSRC SOLARIS Status update and Control System Upgrade 20m

        The National Synchrotron Radiation Centre SOLARIS has been in operation since 2015 and has since undergone substantial development. This presentation outlines the current status of the facility, highlighting its expanding infrastructure and growing user base. It also focuses on the ongoing upgrade of the control system, with particular emphasis on modernization efforts aimed at improving maintainability, upgrading operating systems, and ensuring long-term sustainability.

        Speaker: Michał Fałowski (NSRC SOLARIS)
      • 14:20
        Tango-Controls @ HIJ-POLARIS: state and upcoming activities 20m

        We are integrating Tango Controls into a high-intensity laser system currently operated by standalone actor model based LabVIEW applications on Windows. Our goal is a smooth step-by-step migration toward a fully open-source control infrastructure, gradually phasing out proprietary software. A key objective is to enable highly automated data acquisition in accordance with the F.A.I.R. principles (Findable, Accessible, Interoperable and Reusable).
        We will share our experiences from this transition process and also present our newly initiated collaboration with the company S2Innovation, which may be of interest to the wider Tango community. This includes the migration of the HIJ-Vision library tailored for laser laboratory, the revision of the Tango thread locking mechanism, the extension of Sardana with custom commands and the customization of the Sardana for typical workflow during high-intensity laser experiments.

        Speaker: Alexander Kessler (HI-Jena)
      • 14:40
        Overview on the Tango infrastructure at the Centre for Advanced Laser Applications (CALA) 20m

        At the Centre for Advanced Laser Applications (CALA) near Munich, Germany, a multi-petawatt short pulse laser system and several experimental endstations are operated within a university research environment. Unlike large-scale user facilities, CALA must function within limited financial and staffing resources. These constraints have strongly influenced the design of our Tango-based control and data acquisition system, leading us to prioritize simplicity, robustness, and low complexity to ensure reliable and maintainable operation. In my presentation, I will first provide a brief overview of the facility, followed by a walkthrough of our Tango infrastructure. The focus will be on selected in-house solutions that may be of interest to the broader Tango community. These include tools like our Tango-based GitMonitor, which helps maintain consistent updates across distributed Git repositories, as well as more advanced developments such as a modular, automated laser drift stabilization system—also built on the Tango framework.

        Speaker: Florian Schweiger (CALA LMU München)
      • 15:00
        Elettra 2.0 status update 20m

        The status of Elettra 2.0 project is presented

        Speaker: Lorenzo Pivetta (ELETTRA Sincrotrone Trieste)
    • 15:20 16:00
      Coffee Break 40m
    • 16:00 18:00
      Projects status update
      Convener: Lorenzo Pivetta (ELETTRA Sincrotrone Trieste)
      • 16:00
        cppTango: Now in version 10 better than ever 20m

        Over the past decades cppTango, i.e. The Kernel, has come a long way and it has finally arrived at the ominous version 10. We look at how it turned out and the new features that we have implemented for you since the last community meeting.

        Speakers: Benjamin Bertrand (MAX IV Laboratory), Damien Lacoste, Reynald Bourtembourg (ESRF), Thomas Braun (byte physics e.K.), Thomas Ives (Observatory Sciences Ltd), Thomas Juerges (SKAO), Yury Matveev (DESY)
      • 16:20
        PyTango Status Report 20m

        Latest news from the PyTango project.

        Speaker: Yury Matveev (DESY)
      • 16:40
        Taurus Status 20m

        This presentation will cover the latest developments in the Taurus projects (taurus and taurus_pyqtgraph). We will review the key highlights and improvements introduced in the current 5.2 release, and provide an outlook on the upcoming 5.3 release.

        A special focus will be placed on the ongoing Taurus Performance Optimization (TPO) efforts, including an analysis of the results achieved so far, lessons learned, and the ongoing work to adapt the new asynchronous event subscription feature from Tango.

        Speaker: Oriol Vallcorba (ALBA Synchrotron)
      • 17:00
        Sardana Status 20m

        This presentation will cover the current developments in the Sardana project and its community. Current work is focused on improving Continuous Scans with support for multiple synchronization descriptions, as well as enhancements to components such as shutter control, the MacroServer environment, the configuration tool, and the support for archiving events.

        Speaker: Oriol Vallcorba (ALBA Synchrotron)
      • 17:20
        HDB status report 20m

        News from HDB++ on the past year.

        Recent developments, news from HDB installation in the institutes using it and so on.

        Speakers: Damien Lacoste, Dmitry Egorov, Graziano Scalamera (Elettra), Johan Forsberg (MAX IV Laboratory), Reynald Bourtembourg (ESRF), Sergi Rubio Manrique (ALBA Synchotron), Thomas Juerges (SKAO)
      • 17:40
        A review of the Tango documentation update and restructure 20m

        A big effort has been made over the last year to update and improve the current Tango documentation available on Read the Docs. This involved an initial review of the material to identify specific sections that were in need of updating or were no longer relevant. This was followed by a complete restructure to follow the Diataxis documentation approach (i.e. assigning content to one of the four sections: Tutorials, How-tos, Explanations or References) . A workshop was held in October 2024 to stimulate effort for the initial restructure and since then work has been continuing to update the document content and improve the user experience. This presentation will highlight the work of the Tango community and detail some of the more significant changes and features that have been added to the documentation.

        Speaker: Rebecca Auger-Williams (Observatory Sciences Ltd)
    • 18:00 19:00
      Tango Steering Committee meeting - reserved
    • 19:00 20:00
      Welcome drink party 1h
    • 09:00 10:20
      Tango Ecosystem updates
      Convener: Andrew Goetz (ESRF)
      • 09:00
        PyTango Database Device Server 20m

        The official Tango Database is written in C++ and requires MariaDB as backend.

        PyTango contains its own Database implementation, which should work as a drop-in replacement. It stores data using SQLite so it has no external dependencies, making it easier to run.

        This implementation isn't new but didn't get much support in the past years and was in a broken state. In the past month, there was some effort to update it. A fork was even created to move it outside PyTango repository for faster development: pytango-db.

        This talk will go through a few use cases for local development and CI.

        Speaker: Benjamin Bertrand (MAX IV Laboratory)
      • 09:20
        Client-Server Authentication for Tango 20m

        Client-Server Authentication and Validation of Messages for Tango Control System Using Asymmetric Cryptography and Digital Signatures
        All Tango messages exchanged over the network include a digital signature which authenticates the client performing given operation and contents of the message. The key pair used for signing messages can be generated per host, user or application. This can be configured e.g. in /etc/tangorc, environment variables or on command line.

        Device Server has access to a security policy (e.g. stored in Tango database) which specifies which clients are allowed to interact with which elements of the control system and which operations are allowed. The clients are recognized based on their public key.
        The policy can be configured per server, device, attribute/command, or for the whole control system instance.

        Conversely, the device server can also sign it's messages in order for the client to be able to verify them.

        Speaker: Lukasz Zytniak (S2INNOVATION)
      • 09:40
        Support for the Tango Control system in Ophyd-Async and Bluesky 20m

        Ophyd-Async is the asynchronous successor to the device layer of the Bluesky experiment orchestration system. Ophyd-Async is in development and is expected to see its 1.0 release later this year. It has been designed to be control system agnostic and as of its most recent development release, natively supports the Tango control system. This support will better enable the Tango community to make use of tools developed by the Bluesky and EPICS communities, creating opportunities for cross-system collaboration.

        Speaker: Devin Burke (DESY)
      • 10:00
        Panic v10 : new upcoming features and call for collaboration 20m

        Roadmap for next features to implement in panic and an invitation for collaboration to merge the existing panic branches in Tango community (ALBA, MaxIV, Solaris, S2I, ...).

        Speaker: Sergi Rubio Manrique (ALBA Synchotron)
    • 10:20 10:50
      Coffee break 30m
    • 10:50 13:00
      Tango Community Device and tools - part 1
      Convener: Mirjam Lindberg (MAX IV)
      • 10:50
        Opening an existing software portfolio to a Tango environment 20m

        DESY MSK provides a large back catalogue of hardware for accelerator control and diagnostics.

        The hardware comes with an established set of control applications for a range of use-cases such as LLRF control, motion control, oscillators, and many more.

        In order to be able to provide control system integration of those control servers to our collaboration partners at Helmholtz and beyond, we have created the ChimeraTK framework for hardware and control system abstraction.

        In this oral I will give a short introduction to ChimeraTK and will describe how we recently extended it to also support Tango as a target control system framework.

        Speaker: Jens Georg (DESY (MSK))
      • 11:10
        Server-side role based access control system 20m

        Tango Controls features a client-side access control system that verifies users through system accounts and can restrict access based on IP addresses. However, this method lacks flexibility, as it relies on system accounts and is relatively easy to bypass.
        In addition to the existing access control, a server-side authorization system was developed at JINR, allowing roles and sessions to be managed while logging all actions of authorized users.
        The presentation covers the current usage of the system, its limitations, and potential starting points for discussion and integration of this system into Tango Controls.

        Speaker: Dmitry Egorov (MAX IV)
      • 11:30
        Integrating Microcontrollers into TANGO Control Systems with a Standardized Library and Dynamic Device Server 20m

        Evolving control systems can benefit from seamless integration of embedded devices while maintaining scalability and maintainability. This work, done the MAX IV Laboratory in Lund, Sweden, presents a solution for incorporating custom hardware into the TANGO control system.

        This is achieved by selecting a widely available microcontroller, to limit reliance on a single manufacturer, and defining a library that simplifies firmware development and abstracts direct interaction with TANGO.

        The microcontroller communicates with TANGO through the library using the MQTT protocol, enabling efficient messaging and real-time updates in both directions. It supports over-the-air (OTA) firmware upgrades, self-description of the firmware capabilities, and hosting of a web server for easy configuration. A paired TANGO device server dynamically interprets the microcontroller’s self-description, automatically generating TANGO attributes and commands based on its capabilities. This dynamic approach reduces development effort, ensures consistency across deployments, and enhances interoperability within TANGO-based infrastructures.

        This approach provides flexibility, modularity, and ease of maintenance, making it a robust solution for embedded control in large-scale scientific and industrial applications.

        Speaker: Mr Antonio Bartalesi
      • 11:50
        Distributed tracing in action at MAX IV 20m

        With OpenTelemetry support added to cppTango and PyTango since version 10.0.0, we tried it out operationally at MAX IV. We provide some examples of the traces, trends, and other data available when running at scale. We report on the compute and performance impact for clients and servers, as well as practical issues. For the backend servers that receive and query all the telemetry data (Grafana Tempo for traces and Grafana Loki for logs) we also look at the compute resources required.

        Speaker: Anton Joubert (MAX IV Laboratory)
      • 12:10
        Arbitrary Two-Dimensional Mapping Scan Utilizing the Sardana Framework 20m

        Advanced materials such as energy materials, catalysts, and biological materials like bone have complex hierarchical structures spanning several length scales where chemical elements are organized in a spatial heterogeneous fashion. Understanding these materials requires the ability to map both their structural and elemental composition with high spatial resolution. The current meshct scan in Sardana enables users to perform continuous scanning over relatively large sample areas. However, its functionality is limited to rectangular scan geometries, which is inefficient when the region of interest within a sample has an arbitrary shape. As a result, significant time is spent scanning both the sample and irrelevant surrounding areas, with total scan duration often ranging from one to several hours. To address this limitation and enhance scanning efficiency, a new scan macro, imeshct, has been developed based on the existing meshct. This improved version allows scientists to define and scan custom-shaped areas tailored to specific experimental needs. The implementation of imeshct has demonstrated a potential reduction in scan time by up to 50%, significantly increasing the overall efficiency of experimental workflows.

        Speaker: Yimeng Li
      • 12:30
        Summary of the work and tools done at SOLARIS synchrotron for managing MySQL Tango archiving database 20m

        National Synchrotron Radiation Centre SOLARIS is a Polish light source next to Jagiellonian University, currently operating with seven beam-lines and two new beam-lines under development.
        Such facilities employ constant monitoring of all systems and sensors in order to provide the best and uninterrupted service to our users.

        Tango archiving database provides an insight into performance of many various parts of the synchrotron ring, linear accelerator, beam-lines and other systems and elements.

        Historical data is used to analyse certain events in order to understand and fix technical issues, improve operation and import most recent data to a few applications. Historical data has also been used or is planned to be used to train experimental AI models.

        Numerous internal tools have been developed to keep track of the archiving process, to provide fixes for any encountered issues and for importing, exporting or transferring large amounts of data.

        Speaker: Krzysztof Madura (National Synchrotron Radiation Centre, Solaris)
    • 13:00 14:00
      Lunch 1h
    • 14:00 16:00
      Tango Community Device and tools - part 2
      Convener: Yury Matveev (DESY)
      • 14:00
        High throughput data streaming system for diagnostic signal analysis 20m

        National Synchrotron Radiation Centre SOLARIS is a third generation light source with seven fully operational beamlines.
        Big science facilities like SOLARIS are obligated to provide the best possible conditions for conducting research. Building robust and extensible environment for developed application is a warranty to continuous delivering precise tools for stable and safe operation purposes.
        Coherent and standardized toolset widely used across many different teams, simplify maintenance as well as offers more resource-balanced solution.

        The constantly evolving infrastructure and increasing sensorization pose new challenges to control systems departments.
        Solution for smooth handling plenty of diagnostic signals should offer easily point-to-point connections, filter/computation layers and convenient interface for integration with applications.
        The system that was created in SOLARIS and is still actively developed aims to meet these requirements.
        Currently streaming system was successfully deployed in beam anomaly detection subsystem.
        Additionally control layer was implemented in PyTango to perform management and error handling actions in more convenient way.

        Speaker: Maciej Mleczko (National Synchrotron Radiation Center)
      • 14:20
        AI-driven Tango device driver generator 20m

        The application is a web-based tool designed to automate the generation of device server code within the Tango Controls environment, focusing on Python code generation. Accessible from any device with an internet connection, the web app requires no local installation, making it highly convenient for developers.
        The application's key strength lies in its documentation integration system. It uses an LLM model to extract commands and settings from device manuals and convert them into functional code, eliminating the need for manual documentation lookup and speeding up the device integration workflow.

        Speaker: Lukasz Zytniak (S2INNOVATION)
      • 14:40
        ska-tango-exporter: a diagnostic tool to assist in the analysis of interconnected problems 20m

        The ska-tango-exporter is a Diagnostic tool that extract every possible information from a TANGO system in order to assist in the analysis of interconnected problems difficult made to run in a kubernetes environment. It use existing data sources such as the TANGO and the kubernetes database (etcd) together with internal data sources such as prometheus (to collect attributes in a polling fashon) and InfluxDB (to collect events).
        It uses Grafana to display data with a specific plugin to display TANGO attributes (ska-tango-attributes).

        Speaker: Matteo Di Carlo (INAF)
      • 15:00
        The one class decorator to monitor them all 20m

        The availability of historical data on a complex control system
        is essential to understanding it and aids greatly in being able
        to resolve issues. The process of collecting and storing
        these data as well as visualization is collectively
        known as Monitoring. This paradigm is often extended with
        event conditions and autonomous or manual actions based on these
        events in a process called Alarming. Both are often realized
        by operating on time-series data retrieved using time range
        queries. These data can be served by specialized databases such
        as Prometheus, providing efficient and high throughput data access.
        But how could such a database be integrated into the Tango controls
        ecosystem?

        In this presentation we demonstrate the device_metrics
        decorator. A single Python class decorator to automatically export Tango
        device attributes to a Prometheus database. The decorator
        automatically handles the conversion between data dimensionality
        and types as well as offering control over included attributes.
        To illustrate we will show some of the inner workings of the decorator
        as well as the technical challenges that we had to address.

        Speaker: Corne Lukken
      • 15:20
        New event system performance monitoring in cppTango 20m

        In the up coming cppTango 10.1.0 release we are introducing a couple of new DServer commands based on tools developed by SKAO to debug issues with the Tango ZMQ event system. Here we demonstrate what information can be collected about the ZMQ event system using this new tool and discuss how it has been used to track down issues in Tango devices at SKAO.

        Speaker: Thomas Ives (Observatory Sciences Ltd)
      • 15:40
        Tango's Multiclasses: How to use them to simplify development and deployment and get configuration right 20m

        In environments where numerous identical devices are deployed, each consisting of a main Tango device plus individual Tango devices for each channel, managing development, installation, and configuration becomes increasingly complex. We explore how Tango's Multiclasses provide an elegant solution to streamline these processes while significantly reducing configuration errors.

        Speaker: Lorenzo Pivetta (ELETTRA Sincrotrone Trieste)
    • 16:00 16:30
      Coffee break 30m
    • 16:30 17:30
      Web and user interfaces
      Convener: Stefano Di Frischia (INAF - OAAb)
      • 16:30
        Tango - Astor in your browser 20m

        Polka is a WebAstor.
        Features:
        1. Added support for multiple Tango databases.
        2. Enabled renaming of branches.
        3. Enabled the option to move Starters between branches
        4. Added functionality to add a Starter to a Tango database.
        5. Added pooling configuration for servers.
        6. Added a pooling profiler with two basic charts.
        7. Introduced a feature to check pooling status.
        8. Added a pooling thread manager.
        9. Enabled editing Starter properties.
        10. Added functionality to view Starter and server statistics.

        Performance improvements:
        1. Polka now uses TangoGQL WebSockets.

        Speaker: Lukasz Zytniak (S2INNOVATION)
      • 16:50
        Taranta Status update 20m

        Taranta Status update

        Speaker: Matteo Canzari (INAF - OAAb)
    • 18:00 21:30
      Teramo tour - Social Dinner 3h 30m
    • 21:30 23:30
      Astronomical Observatory night visit 2h
    • 09:00 09:20
      Roadmap
      Conveners: Thomas Braun (byte physics e.K.), Thomas Juerges (SKAO)
    • 09:20 11:30
      Working groups
    • 11:30 11:45
      Coffee break 15m
    • 11:45 12:15
      Summary WPs
    • 12:15 12:35
      Tango Steering Committee report
      Convener: Yury Matveev (DESY)
      • 12:15
        Tango executive commitee report 20m

        Tango executive commitee report

        Speaker: Yury Matveev (DESY)
    • 12:35 13:00
      Final conclusion
      Convener: Andrew Goetz (ESRF)