The chat responses are generated using Generative AI technology for intuitive search and may not be entirely accurate. They are not intended as professional advice. For full details, including our use rights, privacy practices and potential export control restrictions, please refer to our Generative AI Service Terms of Use and Generative AI Service Privacy Information. As this is a test version, please let us know if something irritating comes up. Like you get recommended a chocolate fudge ice cream instead of an energy managing application. If that occurs, please use the feedback button in our contact form!
Skip to content

Command Line Interface

Table of Contents

Required Argument

YAML Configuration File

The only required parameter is the --config or the short version -c to provide a predefined YAML configuration file to ROSie for code generation.
To run ROSie with a predefined YAML and start the whole generation process, run the following command:

rosie --config file_name.yaml

Example console output:

$ rosie -c example_config.yaml
#####################################  ROSie  #####################################
#  Version: 0.2.0                                                                 #
#  Date:    08.05.2025                                                            #
#  Time:    15:53:21                                                              #
#  Copyright © Siemens AG, 2025, and licensors. All rights reserved.              #
#  Portions include Open Source Software. See ReadMe_OSS_0.2.0.html for details.  #
#  The usage for safety-related applications is not intended.                     #
###################################################################################

Gathering ROS 2 message types information ...
Generating PLC code ...
Please import the generated PLC code into your TIA project, export the TIA project .psc file, and place into the ROSie input folder. 
Please provide the file name of the .psc in the prompt when requested, e.g., 'tia_project.psc' and press ENTER to continue the generation process or 'n' and ENTER to exit the program.

Optional Arguments

Verify YAML Config File

The --verify parameter, short version -v, can be set to check, if the provided YAML config meets the requirements.
To verify, if the provided YAML config matches the required syntax, run the following command:

rosie --verify --config file_name.yaml

Example console output:

$ rosie -v -c example_config.yaml
#####################################  ROSie  #####################################
#  Version: 0.2.0                                                                 #
#  Date:    08.05.2025                                                            #
#  Time:    15:54:30                                                              #
#  Copyright © Siemens AG, 2025, and licensors. All rights reserved.              #
#  Portions include Open Source Software. See ReadMe_OSS_0.2.0.html for details.  #
#  The usage for safety-related applications is not intended.                     #
###################################################################################

YAML verifying and parsing successful.

Disable User Input Wizard

The --non_interactive parameter, short version -y, can be used to skip all user interactions and process the whole generation process automatically.
To start the whole generation process non-interactively, additionally the --psc_file argument needs to be provided:

rosie --non_interactive --config file_name.yaml --psc_file tia_project.psc

Example console output:

$ rosie -y -c example_config.yaml -t example_tia_project.psc
#####################################  ROSie  #####################################
#  Version: 0.2.0                                                                 #
#  Date:    08.05.2025                                                            #
#  Time:    15:59:17                                                              #
#  Copyright © Siemens AG, 2025, and licensors. All rights reserved.              #
#  Portions include Open Source Software. See ReadMe_OSS_0.2.0.html for details.  #
#  The usage for safety-related applications is not intended.                     #
###################################################################################

Gathering ROS 2 message types information ...
Generating PLC code ...
Generating ROSie API library and ROS 2 package ...
Successfully generated ROS 2 package and PLC code.

PSC File

The --psc_file parameter, short version -t, can be used to process all code generation steps without user interaction.
It will provide the TIA Portal generated PC System Configuration (.psc) file for internal struct comparison against the PLC based data type definitions.
⚠️ This argument needs to be combined with the --non_interactive argument.

Example usage (creates the same command line output as in the section Disable User Input Wizard):

rosie --non_interactive --config file_name.yaml --psc_file tia_project.psc

Usage Help

Calling ROSie without any arguments or with the --help argument, short version -h, will print command line usage information:

rosie --help

Example console output:

$ rosie -h
#####################################  ROSie  #####################################
#  Version: 0.2.0                                                                 #
#  Date:    08.05.2025                                                            #
#  Time:    16:05:02                                                              #
#  Copyright © Siemens AG, 2025, and licensors. All rights reserved.              #
#  Portions include Open Source Software. See ReadMe_OSS_0.2.0.html for details.  #
#  The usage for safety-related applications is not intended.                     #
###################################################################################

Command line parameters: 
  --config [-c]           YAML configuration file name, e.g., 'config.yaml' which defines system specifications (required)
  --help [-h]             Get information about the ROSie usage and CLI parameters
  --non_interactive [-y]  Disable the wizard mode and run all stages without user interaction (optional)
  --psc_file [-t]         TIA project .psc file name, e.g., 'tia_project.psc' (optional)
  --verify [-v]           Verification of the provided YAML configuration file (optional)