Skip to content

yuzutech/WireViz

 
 

Repository files navigation

Fork of WireViz

Summary

WireViz is a tool for easily documenting cables, wiring harnesses and connector pinouts. It takes plain text, YAML-formatted files as input and produces beautiful graphical output (SVG, PNG, ...) thanks to GraphViz. It handles automatic BOM (Bill of Materials) creation and has a lot of extra features.

Features

  • WireViz input files are fully text based
    • No special editor required
    • Human readable
    • Easy version control
    • YAML syntax
    • UTF-8 input and output files for special character support
  • Understands and uses color abbreviations as per IEC 60757 (black=BK, red=RD, ...)
  • Auto-generates standard wire color schemes and allows custom ones if needed
  • Understands wire gauge in mm² or AWG
    • Optionally auto-calculates equivalent gauge between mm² and AWG
  • Is suitable for both very simple cables, and more complex harnesses.
  • Allows for easy-autorouting for 1-to-1 wiring
  • Generates BOM (Bill of Materials)

Note: WireViz is not designed to represent the complete wiring of a system. Its main aim is to document the construction of individual wires and harnesses.

Usage

Installation

WireViz is available as a native binary on Linux AMD64 and ARM64 architecture: https://github.com/yuzutech/WireViz/releases.

How to run

$ echo 'yaml definition' | wireviz -f svg - -o -

Command line options

  • --prepend-file <FILE> to prepend an additional YAML file. Useful for part libraries and templates shared among multiple cables/harnesses.
  • -o <OUTPUT> or --output_file <OUTPUT> to generate output files with a name different from the input file.
  • -V or --version to display the WireViz version.
  • -h or --help to see a summary of the usage help text.
  • -f or --format to set the output format (supported formats: svg, png)

Syntax description

A description of the WireViz YAML input syntax can be found here.

Changelog

See CHANGELOG.md

License

GPL-3.0