Pyra 4 Documentation
What is Pyra?
Pyra (name based on Python and Ra) is a software that automates the operation of EM27/SUN measurement setups. Operating EM27/SUN devices requires a lot of human interaction. Pyra makes it possible to operate these devices 24/7 autonomously.
Pyra has enabled the Technical University of Munich to collect continuous data from 5 stations around the city of Munich since 2019 using MUCCnet. Versions 1 to 3 of Pyra have been experimental tools improved internally since 2016.

The goal of Pyra version 4 is to make it even more stable, easy to understand and extend, and usable by the broad EM27/SUN community.
The software is licensed under GPLv3 and is open-sourced on GitHub. Whenever using Pyra, please make sure to cite the codebase.
About This Documentation
This documentation page serves as a guide for both users and developers. By user, we mean people operating Pyra on their EM27/SUN stations. By developers, we target people working on the Pyra 4 codebase itself.
For users:
- Overview of what Pyra 4 does
- How to set it up
- Overview of how to use it
- How starting and stopping measurements via CLI or UI works
- How the upload works
- What the TUM PLC and Helios
- Answers to frequently asked euestions
For developers:
- High level view of the architecture
- Interfaces between program parts
- Interfaces to external programs
- How to manually run the parts of Pyra
- How the repository is organized
- How testing and continuous integration is set up
The contact section contains author and contact information and ways to report bugs and suggest new features.
Pyra 4 is not built to be imported as a library but rather to be run as a standalone program. The desired way to interact with Pyra 4 programmatically is via the CLI.
If you want to extend Pyra 4 itself, the developer guide serves as a high-level introduction to the codebase structure. All code is statically typed, and all functions contain doc strings.