Skip to content

Autoware Launch GUI is a Tauri / NextJS application designed to simplify the process of launching Autoware processes. Instead of relying on command prompts, users can now utilize a user-friendly graphical interface.

License

Notifications You must be signed in to change notification settings

autowarefoundation/autoware-launch-gui

Repository files navigation

Autoware Launch GUI

Autoware Launch GUI is a Tauri / NextJS application designed to simplify the process of Launching Autoware Processes. Instead of relying on command prompts, users can now utilize a user-friendly graphical interface.

Table of Contents

Features

Autoware Launch GUI offers a range of features to enhance your experience with Autoware:

  • Launch Autoware with Custom Parameters: Easily launch Autoware processes with parameters tailored to your needs.
  • Real-Time Monitoring: View current CPU/Memory usage and Autoware logs in real-time, with search and highlighting capabilities (INFO, WARN, DEBUG, ERROR, by component).
  • Profile Management: Save and load your most-used Autoware launch profiles for quick access.
  • Configurations and Calibration: Edit config params YAML files and launch calibration tools with custom parameters.
  • Bag File Management: Play, record, and view information of bag files (.db3, .mcap) with custom parameters.
  • Topic Management: View topic list, topic types, and topic echo output.
  • Remote Operation: Use SSH to launch Autoware on a remote machine with custom parameters.

Dependencies

To run the .deb file directly you will need to first check if these dependencies are installed.

sudo apt install libwebkit2gtk-4.1-0 libjavascriptcoregtk-4.1-0 libsoup-3.0-0 libsoup-3.0-common

To develop the Autoware Launch GUI, you'll need to have both Rust and Node.js installed on your system.

Installing Rust

  1. To install Rust, run the following command:

    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs/ | sh
  2. Follow the on-screen instructions to complete the installation.

  3. Once installed, you can verify your Rust installation with:

    rustc --version

    rustc 1.72.0 (5680fa18f 2023-08-23) is the one i'm currently on while developping this.

Installing Node.js

  1. You can download and install Node.js (LTS Version) from the official website.

  2. Alternatively, if you're using a package manager like apt for Ubuntu/Debian, you can install Node.js with:

    • For Ubuntu/Debian:

      sudo apt-get update
      sudo apt-get install npm
      sudo npm install -g n
      sudo n stable
  3. Verify your Node.js installation with:

    node --version

    v16.20.0 is the one i'm currently on while developping this.

  4. It's also recommended to install pnpm as it's not included:

    npm install -g pnpm

Once Rust and Node.js are set up, you can proceed with the Installation steps mentioned above.

Installation

Using the .deb File

For most users, the easiest way to get started is by downloading and installing the provided .deb file. It can be found on the releases for this repo at this link Releases

  • After downloading the .deb file, navigate to the file in your terminal and run:

    sudo apt install ./autoware-launch-gui_{version}_amd64.deb

    Replace {version} with the version of the .deb file you downloaded.

  • Once installed, you can launch the Autoware Launch GUI from your applications menu or by running in your terminal(this is preferred as it will show you the logs in case of any errors):

    autoware-launch-gui

For Developers

If you're interested in developing additional features or want to run the project from source:

  1. Clone the repository:

    git clone https://github.com/leo-drive/autoware-launch-gui.git
  2. Navigate to the project directory:

    cd autoware-launch-gui
  3. Install the required packages:

    pnpm i
  4. Run the development version of the app:

    pnpm tauri dev

Usage

For a comprehensive guide on how to use the Autoware Launch GUI, please refer to our demo video. In essence, the process involves:

Demo Video

Autoware Launch GUI Demo

  1. Launching the app.

  2. Setting the path to the Autoware folder.

  3. Selecting the desired launch file located in the src/launcher/autoware_launch/autoware_launch/launch folder.

  4. Adding the necessary parameters, and any extra parameters you'd like to include in your launch command.

  5. Launch Autoware

  6. Separately, you can also edit config param yaml files located in the src/launcher/autoware_launch/autoware_launch/config folder.

Work in Progress (WIP)

  • Launch Autoware with Custom Parameters depending on the selected launch file
  • Kill Autoware Processes
  • Edit Config Params YAML Files
  • View Current CPU/Memory Usage
  • Save and Load Most used Autoware Launch Profiles
  • View Autoware Logs in Real Time with ability to search with highliting (INFO, WARN, DEBUG, ERROR, by component)
  • Launch Calibration Tools with Custom Parameters
  • Play bag files (.db3, .mcap) with custom parameters(flags)
  • See bag file info
  • Record bag files (.db3, .mcap) with custom parameters(flags)
  • View Topic List and Topic Types
  • View Topic Echo Output
  • Save and Load most used Profiles with your autoware directories and launch files...
  • use SSH to launch autoware on a remote machine with custom parameters
  • Topic Publishing with custom flags
  • Service Call with rate flag
  • Autostart GUI on boot (through settings page)
  • Add more workspaces to source for functionalities in the app (through settings page)
  • Change the theme of the app (through settings page)
  • Tray Icon to minimize the app to the tray, launch/kill autoware and kill the app
  • CLI command to launch autoware faster on app launch (autoware-launch-gui -s or --start-autoware)
  • CLI command to open the app in hidden mode (autoware-launch-gui --hidden)
  • CLI command to see description or version of the app (autoware-launch-gui -v --version or -h --help)

Contributing

We welcome contributions from the community! If you're interested in enhancing the Autoware Launch GUI, please follow the installation instructions for developers and feel free to submit pull requests.

Author

Khalil Selyan - Creator and maintainer of Autoware Launch GUI.

License

This project is licensed under the MIT License. See the LICENSE file for details.

FAQs and Troubleshooting

For common questions and troubleshooting tips, please open an issue on the Issues page.

About

Autoware Launch GUI is a Tauri / NextJS application designed to simplify the process of launching Autoware processes. Instead of relying on command prompts, users can now utilize a user-friendly graphical interface.

Resources

License

Stars

Watchers

Forks

Packages

No packages published