SmithTool is an interactive Smith Chart desktop application for RF impedance matching and matching-network design, built with C++17 + Qt 6 Widgets.
Features
- Interactive Smith chart visualization
- Source/load impedance editing (rectangular and polar)
- Matching element design (series/shunt R/L/C)
- Matching wizard (L/Pi/T and additional topologies)
- Touchstone file import (.s1p, .s2p)
- SPICE netlist export
- UI language selection: English / Simplified Chinese
Requirements
- CMake >= 3.16
- C++17 compiler
- Qt 6 (Core, Gui, Widgets)
Windows (recommended: MSYS2 MinGW64)
Install toolchain and Qt6 in MSYS2:
pacman -S --needed mingw-w64-x86_64-gcc mingw-w64-x86_64-cmake mingw-w64-x86_64-ninja mingw-w64-x86_64-qt6-base mingw-w64-x86_64-qt6-tools
Debian / Ubuntu
sudo apt-get update sudo apt-get install -y build-essential cmake ninja-build qt6-base-dev qt6-base-dev-tools qt6-tools-dev-tools
Build
Windows
cmake -S SmithTool -B SmithTool/build-msys -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=E:/msys2/mingw64 cmake --build SmithTool/build-msys -j4
Debian / Linux
cmake -S SmithTool -B SmithTool/build-linux -G Ninja -DCMAKE_BUILD_TYPE=Release cmake --build SmithTool/build-linux -j$(nproc)
End-User Runtime (Windows)
- End users do not need to install Qt separately.
- Use one of the packaged deliverables:
- Windows installer (Setup.exe)
- Windows portable bundle (windows-portable.zip)
- These packages include required Qt runtime and MinGW runtime DLLs.
- Do not distribute/use a standalone bare SmithTool.exe without its bundled DLLs.
Link
https://github.com/DeconBear/SmithTool