TAURUS Workshop

Europe/Paris
Batiment Principal (SOLEIL)

Batiment Principal

SOLEIL

Synchrotron SOLEIL L'Orme des Merisiers Départementale 128 91190 Saint-Aubin FRANCE
Description

TAURUS has become a widely adopted framework for developing control and data acquisition interfaces, both graphical (GUIs) and command-line tools (CLIs), in scientific and industrial environments. As an open-source project initially developed at ALBA Synchrotron (Spain), TAURUS is now used across many large-scale facilities for daily operations, thanks to its flexibility, extensibility, and ease of use for both non-programmers and developers.

This workshop builds on the previous TAURUS workshop held at ESRF three years ago (https://indico.esrf.fr/event/76/). Since then, several facilities, including SOLEIL, have been actively adopting and integrating TAURUS into their infrastructures. In this context, SOLEIL aims to use this workshop to share feedback on operational use of TAURUS, particularly in accelerators and beamlines. Contributions from operators and beamline staff using TAURUS in their daily work are especially encouraged.

The proposed 2-day event will be dedicated to user feedback and future strategy, as well as demonstrations of TAURUS for newcomers to the community.

Regarding the organisation details, this hybrid TAURUS workshop will be hosted by SOLEIL and held on May 12th & 13th, 2026. Speakers and attendees are welcome on site, and sessions will also be accessible remotely.

Important information : Registration  will be closed the 23rd of April 

Registration
Registration [Remote]
    • 08:30
      Registration Amphitheater (Synchrotron SOLEIL)

      Amphitheater

      Synchrotron SOLEIL

    • Taurus Framework: Introduction Amphitheater (Synchrotron SOLEIL)

      Amphitheater

      Synchrotron SOLEIL

      • 1
        Welcome
        Speaker: Yves-Marie ABIVEN (SOLEIL)
      • 2
        Taurus Introduction

        This session provides a comprehensive introduction to Taurus as a framework for building control system user interfaces.

        We will cover the core concepts of Taurus, including its data model, widget philosophy, and event-driven architecture, and explain how it simplifies the development of graphical applications compared to using Qt directly. The concept of schemes will be introduced, showing how Taurus can adapt to different data sources, including Tango for seamless integration with existing control systems.

        The session will also include a brief overview of installation options, project structure, and community resources.

        By the end of the session, participants will understand the main advantages of Taurus and how to get started developing their own applications.

        Speaker: Oriol Vallcorba (ALBA Synchrotron)
      • 3
        Taurus plotting

        This session introduces the plotting and archiving capabilities available in Taurus for building data visualization tools.

        We will present the current plotting solutions, with a focus on taurus_pyqtgraph as the main library for real-time visualization. We will show how it can be used to display live data efficiently, as well as how Taurus integrates with archiving systems to access and visualize historical data.

        Speaker: Jose Antonio Ramos Andrades (ALBA Synchrotron)
    • 10:30
      Break Amphiteater (Synchrotron SOLEIL)

      Amphiteater

      Synchrotron SOLEIL

    • Taurus Framework: Recent features & current developments Amphitheater

      Amphitheater

      SOLEIL

      • 4
        Qt6 support and platform compatibility

        This session will present the current status of Qt6 support in Taurus and discuss its implications for application development and deployment.

        We will review the main changes introduced to support Qt6, highlighting compatibility considerations and practical experience using different Python bindings (PyQt and PySide). The session will also cover the Taurus Qt abstraction layer (Qt shim), which enables binding-independent development.

        In addition, we will explore how Taurus applications behave in modern Linux environments, including Wayland-based systems, reduced X11 support, and remote access solutions such as RDP and Waypipe.

        Speaker: Arturo Alejandro Hoffstadt Urrutia (ESO)
      • 5
        Color schemes in Taurus

        This session will present the current support in Taurus for color schemes and theming in graphical applications.

        We will review the existing basic implementations, including how visual elements such as status indicators (e.g. LEDs) can be customized. The session will also discuss current limitations and outline possible directions towards more flexible and user-configurable theming mechanisms.

        The goal is to gather feedback and share ideas on how to evolve Taurus towards a more consistent and configurable visual experience across applications.

        Speakers: Raphael GIRARDOT (SOLEIL), Oriol Vallcorba (ALBA Synchrotron)
      • 6
        Taurus Performance Optimization (TPO)

        Taurus Performance Optimization (TPO)

        This session will present the results of the Taurus Performance Optimization (TPO) initiative, aimed at reducing startup times and improving overall performance in applications handling large numbers of attributes.

        We will review the main optimizations introduced, including improvements in polling mechanisms, reduction of unnecessary threads, caching strategies, and the adoption of more efficient event subscription modes with asynchronous behavior. These changes significantly reduce startup times and improve application responsiveness.

        Finally, we will outline ideas for a potential next phase, exploring optimizations applied after application startup, such as dynamic loading of components and incremental data handling.

        Speaker: Emilio Morales (ALBA Synchrotron)
      • 7
        2D Widgets

        This session will present the ongoing work on Taurus 2D visualization widgets and their recent migration from guiqwt to PlotPy.

        We will also discuss the possibility to include new plugins for 2D data handling, based on pyqtgraph (as for 1D data).

        The goal is to share the current direction of development and gather feedback from users and developers interested in 2D visualization tools in Taurus.

        Speaker: Jose Antonio Ramos Andrades (ALBA Synchrotron)
      • 8
        SVG synoptic library

        This session will introduce the use of SVG-based synoptic views in Taurus using the svgsyniptic library for building interactive and customizable control system interfaces.

        We will present the current capabilities for integrating SVG graphics with Taurus, enabling the creation of rich visual synoptics where graphical elements are dynamically linked to control system data.

        Speaker: Johan Forsberg (MAX IV)
    • 12:30
      Lunch break Restaurant (Synchrotron SOLEIL)

      Restaurant

      Synchrotron SOLEIL

    • User Feedback & Use Cases Amphitheater

      Amphitheater

      SOLEIL

      • 9
        ALBA: Control Room GUIs

        This session will present the design and development of control room GUIs at ALBA using Taurus.

        We will showcase real-world applications, highlighting design choices, usability considerations, and integration with control system components. The session will also discuss challenges encountered in production environments and the solutions adopted.

        The goal is to share practical experience and insights that can be useful for developing robust and user-friendly control system interfaces

        Speaker: David Yepez (ALBA Synchrotron)
      • 10
        ESO: Schema Plugin Development

        This session will present the development of schema-based plugins in Taurus, with a focus on use cases from ESO.

        We will introduce how custom schema plugins can be implemented to support specific data sources and integration needs. The session will describe the design and development of several schema plugins developed at ESO.

        The goal is to provide a practical overview of the plugin approach and share guidelines for developing custom schema integrations in Taurus.

        Speaker: Arturo Alejandro Hoffstadt Urrutia (ESO)
      • 11
        MAXIV: BALDER Beamline GUIs

        Use of Taurus GUIs and Synoptics in the BALDER beamline at MAX-IV

        (Remote)

        Speaker: Konstantin Klementiev (MAX IV)
      • 12
        A Taurus GUI for automated BioSAXS experiments at the CoSAXS beamline at MAX IV

        Lukas Wittenbecher(1), Hanno Perrey(2), Lin Zhu(1), Benjamin Folsom(1)

        (1) MAX IV Laboratory, Lund, Sweden
        (2) European Spallation Source, Lund, Sweden

        BioSAXS - small angle X-ray scattering (SAXS) from biological samples in solution - provides valuable structural information about biological macromolecules such as proteins, DNA or viruses. Using modern synchrotron light sources, dozens to hundreds of BioSAXS measurements can be carried out within a few hours, asking for automation of these experiments. At the CoSAXS beamline at MAX IV, we are currently in the process of installing a new BioSAXS system, featuring, among others, robotic loading of liquid samples and automatic sample positioning for measurements. The beamline users will control this experiment through a graphical user interface (GUI), built with Taurus, that allows the users to define a catalog of samples from which they can compile an experimental schedule for automatic execution. In this presentation, we will present the GUI, highlight design decisions, and describe the integration with the beamline control system.

        (Remote)

        Speaker: Lukas Wittenbecher (MAX IV)
      • 13
        ESRF: Taurus usage feedback
        Speaker: Natxo Vergara (ESRF)
    • 15:30
      Break Amphitheater (Synchrotron SOLEIL)

      Amphitheater

      Synchrotron SOLEIL

    • User Feedback & Use Cases Amphitheater (Synchrotron SOLEIL)

      Amphitheater

      Synchrotron SOLEIL

      • 14
        Taurus at SOLEIL

        We will present the current status of Taurus usage at Synchrotron SOLEIL:

        Arnaud Hemmerle (beamline scientist): status of Taurus deployment at SOLEIL, tests carried out on control systems, in-house documentation in progress, and examples of GUIs on a beamline.
        Alexandre Moutardier (machine operator): development of Taurus and PyQt-Tango GUIs for machine control.
        Raphaël Girardot (IT engineer): development of a fly-scan visualization GUI using Taurus.

        Speakers: Alexandre MOUTARDIER (SOLEIL), Arnaud HEMMERLE (SOLEIL), Raphael GIRARDOT (SOLEIL)
    • 15
      Qt for Python: A Practical Overview for Scientific Applications Amphiteater (Synchrotron SOLEIL)

      Amphiteater

      Synchrotron SOLEIL

      Python has become the lingua franca of scientific computing, and Qt, through PySide6 and PyQt6, remains one of the most powerful frameworks for building the desktop and control-system UIs that researchers depend on daily. Yet navigating the Qt for Python ecosystem can be surprisingly tricky: licensing implications, competing UI paradigms, tooling choices, and performance pitfalls are rarely covered in one place.
      This talk offers a practical, opinionated overview aimed at developers building scientific and control-system applications, including those working with the Taurus framework. We cover the PyQt6 vs PySide6 licensing landscape, the Qt Widgets vs QML choice and Qt's strategic direction for both, Designer's plugin mechanism for building reusable control panels, and — critically for this audience — strategies for handling floods of high-frequency signals from instruments and sensors without overwhelming the UI.
      Attendees will leave with a clearer picture of the Qt for Python ecosystem and actionable advice applicable to both existing Taurus-based projects and greenfield applications.

      Speaker: Cristián Maureira-Fredes (Qt)
    • Steering Committee Meeting Amphitheater

      Amphitheater

      SOLEIL

      Session with representation from the facilities and institutions using Taurus to discuss project governance, including how decisions are made, how the roadmap is defined, and how responsibilities and contributions are shared across participating organizations.

      The meeting will also provide a space to align expectations, identify priorities, and discuss the resources that each facility can contribute to the project.

    • 16
      Workshop dinner Restaurant

      Restaurant

      Chapeau (former known as "Living-room") 10 boulevard Gaspard Monge, 91120 PALAISEAU

      Dinner for participants who subscribed.
      Restaurant : Chapeau (former known as "Living-room")
      10 boulevard Gaspard Monge,
      91120 PALAISEAU

      The menu is fixed (except for those who indicated diet restrictions):
      Starter:
      Cream of pumpkin soup with chestnut pieces and pan-fried mushrooms
      Main course:
      Grilled sea bream fillet with Provençal sun-drenched ratatouille
      Dessert:
      Classic Italian tiramisu

      We will share cars to drive you to the restaurant and back to your hotel.
      Let's meet at 19:00 in the hall of the central building.

  • Wednesday 13 May
    • Session for Taurus Developers: Introduction Synchrotron SOLEIL

      Synchrotron SOLEIL

      • 17
        Taurus Developer Introduction

        This session will provide a hands-on introduction to the Taurus codebase and development workflow, aimed at participants interested in contributing to the project.

        We will walk through the structure of the codebase, identify key components, and show how to set up a working development environment. Participants will learn how to run Taurus locally, explore the code, and locate relevant parts for different areas (e.g. plotting, widgets, core).

        The session will also explain how to pick issues, understand their scope, and contribute effectively using the available documentation, tools, and guidelines.

        The goal is to prepare participants for the hands-on sessions by giving them the necessary context and guidance to start working on real issues.

        Speaker: Oriol Vallcorba (ALBA Synchrotron)
      • 18
        Creating GUIs with Taurus designer
        Speaker: Emilio Morales (ALBA Synchrotron)
      • 19
        Practical Session: Contributing to Taurus

        This session will be a hands-on, collaborative working session where participants will contribute to Taurus by working on real issues.

        Participants will be encouraged to pick small, well-defined tasks with a clear scope and existing design, and work in pairs (ideally pairing experienced and new contributors). Work will be organized by areas such as plotting (e.g. usability improvements in taurus_pyqtgraph), widgets (Taurus Form, Device, etc.), Designer, Wizards/TaurusGUI, and core components.

        In parallel, participants less focused on development can join guided groups to learn how to use Taurus with existing materials, with the possibility to interact with experts and ask questions.

        The goal is to foster collaboration, lower the barrier to contribution, and make tangible progress on the project.

    • 10:30
      Break Synchrotron SOLEIL

      Synchrotron SOLEIL

    • Session for Taurus Developers: Practical Session Synchrotron SOLEIL

      Synchrotron SOLEIL

      • 20
        Practical Session: Contributing to Taurus

        This session will be a hands-on, collaborative working session where participants will contribute to Taurus by working on real issues.

        Participants will be encouraged to pick small, well-defined tasks with a clear scope and existing design, and work in pairs (ideally pairing experienced and new contributors). Work will be organized by areas such as plotting (e.g. usability improvements in taurus_pyqtgraph), widgets (Taurus Form, Device, etc.), Designer, Wizards/TaurusGUI, and core components.

        In parallel, participants less focused on development can join guided groups to learn how to use Taurus with existing materials, with the possibility to interact with experts and ask questions.

        The goal is to foster collaboration, lower the barrier to contribution, and make tangible progress on the project.

    • 12:30
      Lunch break Restaurant (Synchrotron SOLEIL)

      Restaurant

      Synchrotron SOLEIL

    • Session for Taurus Developers: Practical Session Synchrotron SOLEIL

      Synchrotron SOLEIL

      • 21
        Practical Session: Contributing to Taurus

        This session will be a hands-on, collaborative working session where participants will contribute to Taurus by working on real issues.

        Participants will be encouraged to pick small, well-defined tasks with a clear scope and existing design, and work in pairs (ideally pairing experienced and new contributors). Work will be organized by areas such as plotting (e.g. usability improvements in taurus_pyqtgraph), widgets (Taurus Form, Device, etc.), Designer, Wizards/TaurusGUI, and core components.

        In parallel, participants less focused on development can join guided groups to learn how to use Taurus with existing materials, with the possibility to interact with experts and ask questions.

        The goal is to foster collaboration, lower the barrier to contribution, and make tangible progress on the project.

    • Workshop feedback and closure Amphitheater

      Amphitheater

      SOLEIL

    • 15:30
      Break Batiment Principal

      Batiment Principal

      SOLEIL

      Synchrotron SOLEIL L'Orme des Merisiers Départementale 128 91190 Saint-Aubin FRANCE