TrackPad CAD turns Precision Touchpad gestures into SpaceMouse-style six-axis input for CAD programs that work with 3DxWare. It uses HIDMaestro to present a SpaceMouse Pro-compatible virtual HID device.
Run TrackPad CAD Setup.exe. It installs TrackPad CAD for the current Windows user, adds desktop and Start menu shortcuts.
Download and install 3DxWare 10 for Windows from 3Dconnexion's driver page. Complete the installer and restart Windows if it asks you to. TrackPad CAD uses 3DxWare to route the virtual SpaceMouse input to your CAD application.
Open TrackPad CAD from either shortcut and accept the elevation prompt. Start 3DxWare if it is not already running.
Focus the CAD program you want to control, then press F8. The tray icon is gray when disabled, yellow while enabled and waiting for a supported CAD target, and green while it is controlling that target. Press the configured toggle key again, use the tray menu, or exit the tray app to stop it.
Pin the tray icon if needed.
| Gesture | Result |
|---|---|
| Two-finger move | Orbit |
| Shift + two-finger move | Pan |
| Pinch | Zoom |
| Twist | Roll |
| Three-finger tap | Button 1 pulse for frame selection |
| One-finger double tap | Pivot request at the cursor |
Movement stops when your fingers stop. Assign Button 1 to frame selection in the CAD application's 3DxWare profile if you want the three-finger tap to frame the current selection. Pivot requests are recognized, but changing the actual orbit pivot needs CAD-specific support.
After the first launch, the settings file is here:
%LOCALAPPDATA%\TrackPad CAD\runtime\TrackPad CAD.json
{
"Sensitivity": 30.0,
"StartEnabled": false,
"ToggleKey": "F8",
"NativeExecutables": ["blender.exe", "FreeCAD.exe", "Fusion360.exe", "SLDWORKS.exe"],
"BrowserUrlPrefixes": ["https://cad.onshape.com/"]
}Set Sensitivity higher for faster movement. ToggleKey accepts a letter, F1 through F24, or Space, Tab, Escape, Pause, CapsLock, Insert, Delete, Home, End, PageUp, or PageDown. TrackPad CAD only sends input to native applications listed in NativeExecutables while that application is focused. The physical Fn key cannot be used directly: it normally does not send a Windows key code. If your keyboard software maps Fn to a standard key, put that mapped key here.
- Open
chrome://extensionsoredge://extensions. - Turn on Developer mode, choose Load unpacked, and select
%LOCALAPPDATA%\TrackPad CAD\runtime\browser-extension. - Reload Onshape, open a document at
https://cad.onshape.com/, and click in the graphics area. - Enable TrackPad CAD with the configured toggle key and use the gestures above.
TrackPad CAD sends motion only when the focused Onshape tab has an active 3DconnexionJS connection. If it does not respond, make sure the tray icon is green, reload the tab, and check that BrowserUrlPrefixes still includes https://cad.onshape.com/.
Use Uninstall from Windows Installed apps. After confirmation, it removes the installed executable, saved settings, browser-extension runtime files, shortcuts, and Installed Apps registration.
include/gesture.hppmaps touchpad contacts to six-axis frames.src/main.cppprovides replay and live capture entry points.src/windows.cppreads Precision Touchpad data through Windows Raw Input.src/HidMaestroBridge.csowns the tray icon, configurable toggle hotkey, target checks, temporary gesture suppression, and HIDMaestro output.run-trackpad.ps1compiles and starts the bridge.src/launcher.cpppackages the application and installs or uninstalls it.browser-extension/detects 3DconnexionJS activity in browser CAD.tools/make-icon.ps1generates the embedded diagonal green/gray icon.
The packaged EXE embeds the bridge, HIDMaestro assembly, HID descriptor, default configuration, and extension files. On first launch it extracts them to %LOCALAPPDATA%\TrackPad CAD\runtime. The existing JSON file is kept when the application updates.
The browser extension only reports whether a focused tab has an active 3DconnexionJS WebSocket. It sends that heartbeat to the local bridge at 127.0.0.1:17831; HID reports are produced only by the desktop process.
Install CMake 3.20+, MinGW GCC, and PowerShell 7. From the repository root:
cmake -S . -B build -G "MinGW Makefiles" `
-DCMAKE_MAKE_PROGRAM=C:/Strawberry/c/bin/mingw32-make.exe `
-DCMAKE_CXX_COMPILER=C:/Strawberry/c/bin/g++.exe
cmake --build build --target trackpad-cad-launcherThe build creates these files in the repository root:
TrackPad CAD.exe
TrackPad CAD Setup.exe
TrackPad CAD.exe is the single-file application. TrackPad CAD Setup.exe is the same binary with installer behavior selected by its filename.
Run the gesture tests:
ctest --test-dir build --output-on-failureUse replay before testing live input:
.\TrackPad CAD.exe --capture replay .\examples\gestures.txtReplay prints the output frames without sending data to the virtual HID device. Exit the tray application before starting another live instance so F8 is free. For live tests, verify motion in the 3Dconnexion Viewer before testing a CAD program.
Windows touchpad settings are changed only through the dynamic touchpad API while TrackPad CAD is active for a supported target. The bridge restores the previous gesture state when input is turned off, focus leaves the target, or the bridge exits. It does not change touchpad registry settings.
The driver/ folder contains the earlier KMDF/VHF experiment. It is not the current shipping path. See driver/README.md for its build and test notes.
- HIDMaestro's signed UMDF driver is installed.
- A Precision Touchpad collection was detected: VID
0488, PID104B. - 3DxWare recognized the virtual SpaceMouse Pro.
- Rotation was confirmed in the 3Dconnexion Viewer.