G

gattii

Gattii

docs badge crate badge gitlab ci badge appveyor badge travis ci badge

Gattii is a serial terminal emulator that allows one to use a serial port for transmitting and receiving data. This project grew out of my desire to learn Rust. It aims to replace RealTerm, and as such provide a very similar set of functionality. Realterm was invaluable in my robotics work with microcontrollers, but is not actively maintained, difficult to contribute to and improve, and full of bugs, both crashers and usability related.

The name Gattii refers to Cryptococcus Gattii, which is named in solidarity with Rust itself, which was named after the rust family of fungi. I forgot why I originally chose this name, but now I like it so I'm just gonna keep it.

Screenshots

resources/screenshot.png?raw=true:altScreenshotofmainwindow

Functionality

  • Enumerate ports
  • Modify settings/change ports in 1-click
  • Transmit file
  • Log to file

Software Requirements

This software is written in Rust, and as such requires the Rust toolchain to be installed to build it. Additionally there are library requirements for some of supporting libraries (gtk-rs). As gtk-rs does not support anything older than the current Rust stable release, gattii is also limited to that.

The only tier-1 platform for this is Linux x64, as that's what I develop and test on. I try to be diligent at testing all functionality on Windows, but as it's not my primary OS, some things may slip through the cracks. Windows has Tier 2 support in that compilation testing is done on it, but I don't actively test functionality. That being said, pretty much all functionality should be cross-platform as platform-specific features are under the serialport-rs library.

Building

  1. Install Rust stable using rustup

  2. Install library requirements:
  3. Clone the main repository with git clone https://gitlab.com/susurrus/gattii.git

  4. Run cargo build within the project directory

Licensing

This project is licensed under the GPL version 3 or later. See the LICENSE file for the license text.

How to Contribute

There are two ways to contribute to Gattii. The first is to file issues through the Gitlab issue tracker.

If you'd like to contribute code, you may submit a pull request through Gitlab:
  1. Fork Gattii on Gitlab (you'll need an account first)
  2. Clone your fork: git clone https://gitlab.com/YOUR_NAME/gattii.git
  3. Install build dependencies (listed above under Building)
  4. Create commits and push to Gitlab.
  5. Submit a merge request