A free and open-source alternative to the VPC Shift Tool bundled with the VirPil control software package.
OpenVPC Shift Tool is a utility designed for VirPil flight simulation controllers. It allows you to combine button inputs from multiple VirPil devices using logical operations (OR, AND, XOR), creating a "shift state" that can be sent to receiver devices. This enables more complex control schemes and button combinations for flight simulators.
- Connect to multiple VirPil devices simultaneously
- Configure source devices that provide button inputs
- Set up receiver devices that receive the combined shift state
- Choose between different logical operations (OR, AND, XOR) for each bit
- Automatic device detection for VirPil hardware
- Configuration saving and loading
- Cross-platform support (Windows and Linux)
Pre-built binaries for Windows and Linux are available in the GitHub Actions artifacts for each commit. You can find them by:
- Going to the Actions tab
- Selecting the most recent successful workflow run
- Downloading the appropriate artifact for your platform (Linux-x86_64_build or Windows-x86_64_build)
- Rust toolchain (install from rustup.rs)
- For Linux: libudev-dev package
# Clone the repository
git clone https://github.com/RavenX8/vpc-shift-tool.git
cd vpc-shift-tool
# Build the release version
cargo build --releaseThe compiled binary will be available in target/release/.
On Linux, you need to install udev rules to access VirPil devices without root privileges:
# Using the Makefile
sudo make install
# Or manually
sudo cp udev/rules.d/70-vpc.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules
sudo udevadm trigger-
Launch the application
-
The main interface shows three sections:
- Sources: Devices that provide button inputs
- Rules: Logical operations to apply to each bit
- Receivers: Devices that receive the combined shift state
-
Add source devices by selecting them from the dropdown menu
-
Configure which bits are active for each source
-
Set the logical operation (OR, AND, XOR) for each bit in the Rules section
-
Add receiver devices that will receive the combined shift state
-
Click "Start" to begin the shift operation
The application automatically saves your configuration to:
- Windows:
%APPDATA%\shift_tool.json - Linux:
~/.config/shift_tool.json
- Ensure your VirPil devices are properly connected
- On Linux, verify udev rules are installed correctly
- Try refreshing the device list with the "Refresh Devices" button
If you encounter permission issues accessing the devices on Linux:
- Ensure the udev rules are installed correctly
- Log out and log back in, or reboot your system
- Verify your user is in the "input" group:
groups $USER
GNU General Public License v3.0
RavenX8