Skip to content

Vaishnav-Sabari-Girish/ComChan

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

79 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Banner


ComChan (Communication Channel)

ComChan is a Blazingly Fast Serial monitor for Embedded Systems and Serial Communication.

Latest Version: 0.2.4

Installation

From crates.io

Note

cargo install NOW AVAILABLE

cargo install comchan

#Install the binary directly
cargo binstall comchan

After installing, check if it has been installed with

comchan --version

From AUR

Thanks to orhun, ComChan now has an AUR package

# Using yay 

yay -S comchan

# Using paru 

paru -S comchan

Using Homebrew

ComChan can also be installed by using Homebrew taps

brew install Vaishnav-Sabari-Girish/taps/comchan

From source

# Clone from GitHub
git clone [email protected]:Vaishnav-Sabari-Girish/ComChan.git

# Clone from Codeberg
git clone ssh://[email protected]/Vaishnav-Sabari-Girish/ComChan.git
cd ComChan

cargo build --release

cargo run

Documentation Link

Documentation Link : https://vaishnav.world/ComChan

Common Commands

Basic Serial Monitor

comchan -p <port> -r <baud_rate>

# OR

comchan --port <port> --baud <baud_rate>

Verbose Mode

comchan -p <port> -r <baud_rate> -v

# OR

comchan --port <port> --baud <baud_rate> --verbose

Log Mode

comchan -p <port> -r <baud_rate> -l <log_file_name>

# OR 

comchan --port <port> --baud <baud_rate> --log <log_file_name>

For an example log file , get it here

Serial Plotter

comchan --port <port> --baud <baud_rate> --plot

# OR 

comchan -p <port> -r <baud_rate> --plot

Automatically detect serial ports

comchan --auto    ##Defaults baud rate to 9600

#OR 

comchan --auto --baud <baud_rate>  # For non-default baud rates like 115200

# OR 

comchan --auto -r <baud_rate>

Use a Configuration file

As of version 0.1.9, you can now create your own configuration file to use ComChan, which means that you won't have to type all the flags.

# Generate default configuration file 

comchan --generate-config   # Generates the default config file at ~/.config/comchan/comchan.toml

Here is an example configuration file

# ComChan Configuration File
#
# This file contains default settings for comchan serial monitor.
# Command line arguments will override these settings.
#
# To use auto-detection, set port = "auto"
# Available parity options: "none", "odd", "even"
# Available flow control options: "none", "software", "hardware"

port = "auto"
baud = 9600
data_bits = 8
stop_bits = 1
parity = "none"
flow_control = "none"
timeout_ms = 500
reset_delay_ms = 1000
verbose = false
plot = false
plot_points = 100

Note

Note that the default baud rate is 9600, you can change it later on in the config file

The above default config file values can be overridden by using the flags (--auto, --port or -p, --baud or -r, --plot).

Features

  • Read incoming Serial data from Serial ports
  • Write to Serial port i.e Send data to Serial device.
  • Basic logging.
  • Auto detect Serial Ports
  • Use a .toml file for config instead of flags
  • Write serial data to a file for later use (can be .txt , .csv and more)
  • Terminal based Serial Plotter (to be implemented with the --plot command)
  • Plot multiple sensor values in the Serial Plotter with legends

Legends

  • Implemented Features
  • Yet to me implemented

Examples

"Hello World" Program

GIF

code file hw

User Input

User IP

Code file

Serial Plotter

Serial Plotter

code file 2

Auto Serial Port Detector

auto

Using the Configuration file

Serial Monitor (plot = false)

plotfalse

Serial Plotter (plot = true)

plottrue

Serial Plotter Multiple sensor values

multiple_plot

code file multiple vals

ComChan in Windows

As of Version 0.2.2, ComChan can be used in Windows with no drawbacks

IMAGE ALT TEXT HERE

To use ComChan in Windows, you can download the .exe file from the releases and use it as follows.

Let's say you have downloaded the .exe file to Downloads/, you have to first open cmd or Powershell and cd to Downloads/ and then

comchan.exe --help

Feedback Form

The Feedback form was created using Bashforms (Forms in the terminal itself).

To give you feedback, please type this on your terminal

ssh -t bashform.me f comchan

Stargazers over time

Stargazers over time