Skip to content

Latest commit

 

History

26 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tippy Toes mascot with the Tippy tattoo

Tippy

Turn USB and USB MIDI foot controls into fast, low-latency Windows, DAW, macro, and gamepad controls.

Windows CI Latest release Support Tippy with PayPal Windows 11 x64 .NET 8

Tippy is a Windows 11 utility for people who want useful work, creative, and gameplay controls under their feet. It supports transcription pedals and USB MIDI guitar/DAW controllers simultaneously, gives every digital foot control its own three macro banks, and makes assignments visible at a glance.

The compatibility and reliability direction documents Tippy's support tiers, safety guarantees, hardware limits, and roadmap for bringing additional USB pedals back into useful service.

Verified input support includes Infinity IN-USB-2 Version 14, AltoEdge IN-AE-S Version 14, and the original Kinesis Savant Elite FS30A in Program mode with WinUSB. FS30A press/release, simultaneous switches, and reconnect cleanup have been tested on physical hardware; extended soak and output/performance certification remain separate. The built-in learners support additional raw-HID controls with 1–32 digital switches and USB MIDI controllers that send notes, CCs, program changes, or expression CC data.

See Tippy in action

Tippy dashboard with Infinity and AltoEdge pedals connected

Each pedal has independent banks, realistic switch placement, live press illumination, reusable bank files, and drag-and-drop placement that can match the pedals on your floor.

Use the dedicated compact tabbed mode

Tippy compact tabbed pedal view

Tabbed mode shows one full-size pedal at a time and deliberately contracts the surrounding interface to a smaller footprint than normal one-pedal mode. Every tab retains its banks, bank tools, live illumination, and assignment buttons. Tabs and pedal handles remain draggable.

Browse application-specific shortcuts

Tippy Applications shortcut browser

The searchable catalog currently includes 557 commands across 32 Windows applications, including Microsoft Office, Adobe creative tools, Blender, GIMP, Maya, Ableton Live, Reason, REAPER, Audacity, OBS Studio, Streamlabs Desktop, vMix, XSplit Broadcaster, Wirecast, VS Code, VLC, and more. Live-production entries use clearly labeled paired bindings: assign the same shortcut inside the streaming application, then let Tippy send it from a pedal.

Highlights

  • Use two or more compatible USB pedals simultaneously with separate assignments.
  • Learn multiple USB MIDI guitar or DAW foot controllers without a device-specific driver inside Tippy; a traditional DIN pedal can participate through a separate USB MIDI interface.
  • Route expression pedals continuously to MIDI CC, OSC, or virtual Xbox axes with configurable ranges, curves, inversion, and endpoint dead zones.
  • Keep three independent banks on every pedal, or switch all pedals together.
  • Save, load, and copy portable .tippy-bank.json banks to any pedal with enough switches—including loading the same bank on several pedals.
  • Assign Windows actions, individual keys, key combinations, text strings, timed recordings, delays, mouse actions, program launches, and optional Xbox 360 buttons, thumb sticks, and analog triggers.
  • Give every switch independent press and release actions, or hold keyboard/gamepad output until physical release.
  • Hold a pedal as a momentary shift layer so the other switches temporarily use another bank.
  • Assign separate double-tap and long-press actions, repeat a command while held, or turn a held action into a safe toggle.
  • Build cross-device foot combinations and ordered foot sequences manually or record them by pressing the real pedals.
  • Load complete three-bank Application Scenes automatically for the foreground executable or a matching window title, resolved only when a pedal is pressed.
  • With permission, scan installed-program entries, Start Menu shortcuts, and visible running apps locally, review the matches, and create ready-to-customize scenes for software already on the PC.
  • Send MIDI notes/CC/program changes and OSC messages to DAWs, streaming tools, lighting software, and other creative applications; OSC includes reusable endpoint presets and a live packet tester.
  • Hold continuous cursor movement, vertical/horizontal scrolling, and mouse-button drags underfoot.
  • Arrange pedal cards automatically, stacked, side by side, or in a tile grid with automatic or 1–6-column placement.
  • Click the always-visible Compact view button (or press F11) for a distinct pedal-only view that hides the full menus, preserves full-size pedal artwork, and shows one pedal at a time with tabs when several are connected. Full view, Esc, or F11 restores the complete interface.
  • Enter ¼ view for Sub-compact mode: a 210×180 minimalist window containing one unlabeled 190×121 pedal image, press illumination, clickable pedal-selection dots, and only one return-to-full-view button. Pressing a background pedal automatically brings it forward so its illumination is visible.
  • Drag pedal cards or compact tabs to match their physical order.
  • Reopen on the same monitor at the previous position and size; layout changes stay anchored to that monitor instead of recentering.
  • See the pressed switch illuminate in real time.
  • Switch between dark and light themes.
  • Send Tippy to the system tray while its pedal assignments continue running.
  • Learn unknown USB HID pedals without a driver or code change.
  • Certify real hardware with automated Tippy Hardware Passport grading, then run the HIL station for physical soak, hot-plug, unplug-while-held cleanup, and press-to-output dispatch evidence.
  • Export or import one learned pedal as a portable .tippy-device.json definition without moving an entire profile.
  • Use the bundled registry-driven artwork library, choose a picture manually for any device, and preserve unknown VID/PID details for future compatibility updates.
  • Learn keyboard-emulating pedals through device-specific Windows Raw Input without remapping the user's main keyboard.
  • Preview assignments without producing output in Rehearsal Mode.
  • Show an optional click-through active-bank/action overlay and inspect raw events, simultaneous switches, and routing latency in Live Diagnostics.
  • Keep automatic profile backups, restore earlier setups, run portably from a USB drive, and browse authenticated, checksum-pinned pedal support packs with update delivery.
  • Start automatically with Windows, recover from an unclean exit before pedal input starts, and optionally check GitHub for new releases.
  • Find every advanced capability from the searchable Features center.
  • Run Tippy Doctor for one privacy-safe readiness report covering profile storage and backups, HID listening, connected pedals, hotkeys, output backends, startup state, and application scenes.
  • Hot-plug devices without restarting Tippy.

Download and run

  1. Download the Windows x64 installer or portable ZIP from the latest release.
  2. Run the installer, or extract the entire portable ZIP to a folder you control.
  3. Run Tippy.exe if the installer did not launch it automatically.
  4. Plug in a supported pedal and choose Edit assignment on a switch.

The release is self-contained, so a separate .NET installation is not required. Tippy currently ships unsigned; Windows SmartScreen may ask you to confirm the first launch.

Support Tippy

Tippy is free to use, with no paid feature restrictions or donation reminders. If Tippy saved you time or brought an old foot control back to life, you can optionally support its continued development through PayPal. The same link is available from Help → About Tippy inside the application.

Supported pedals

Device Status USB identity
VEC Infinity IN-USB-2 Version 14 Verified VID_05F3, PID_00FF
AltoEdge IN-AE-S Version 14 Verified VID_05F3, PID_00FF
Other standard USB HID pedals Learnable Use Learn new pedal
USB MIDI foot controllers Learnable Use USB MIDI or Tools → USB MIDI foot controls
Original Kinesis Savant Elite FS30A Verified input support (Program mode + WinUSB) 05F3:0232 in Program mode; opt in under Tools → Original Savant Elite FS30A. Setup guide

Infinity and AltoEdge use the same three-button HID protocol; the original FS30A uses a separate, input-only Program-mode adapter. Tippy distinguishes simultaneous physical devices so each can keep its own layout, banks, and assignments.

The Savant Elite and Savant Elite2 are heavy, substantially built pedals with a robust feel underfoot. That physical build quality is separate from Tippy compatibility: verified FS30A input support does not imply verified Elite2 support.

Assignments and banks

Choose Edit assignment to search Windows or application shortcuts, type a string, capture a key combination, or record a timed sequence. Select Bank 1, 2, or 3 inside a pedal card to change only that pedal. The All pedals bank buttons and default Ctrl+Alt+B shortcut switch every connected pedal together.

Every switch can have both a press action and a separate release action. Press actions can tap once or hold keyboard/gamepad output until physical release. Held outputs are reference-counted across simultaneous pedals and are released automatically if a pedal disconnects; Release all held inputs is also available from Tippy's tray menu.

Assign Switch to next bank for hands-free cycling, or Hold for temporary bank for a true momentary shift layer. Use App scenes to give an executable—or an optional matching window title—its own complete three-bank set for every pedal. Use Save bank, Load bank, or Copy to… to reuse a setup on any compatible connected pedal.

Choose Tools → Find compatible applications to let Tippy compare local installed-program names, Start Menu shortcuts, and visible running applications with its built-in shortcut catalog. The scan requires confirmation, never reads documents, browser history, or application data, never uploads an inventory, and shows a review list before creating any scene.

The advanced behavior panel on every assignment can add a double-tap or long-press action, repeat the press action, or toggle a held action. Timing is adjustable per switch, and Tippy rejects ambiguous combinations such as toggle-plus-double-tap instead of guessing. Under Tools, foot patterns can combine switches across multiple pedals or recognize an ordered sequence. Capture with feet records the pattern from the connected hardware.

The macro editor also supports continuous mouse movement and scrolling, full Xbox analog stick/trigger positions, MIDI note-on/note-off, CC, and program-change messages, OSC output, and multiline PowerShell commands through either Windows PowerShell 5.1 or PowerShell 7. Tools → MIDI output setup selects and tests a Windows MIDI endpoint; Tools → OSC endpoints & test manages reusable destinations and sends a real packet. Text, program, and PowerShell fields can use {date}, {time}, {clipboard}, {app}, {profile}, {device}, {pedal}, {bank}, and custom named values managed through a live-preview variable editor.

PowerShell steps run non-interactively under the current Windows account. Tippy never requests elevation, bypasses PowerShell execution policy, or weakens AppLocker, WDAC, Constrained Language Mode, or other organizational controls. Only use commands you understand; do not place passwords, API keys, patient information, or other secrets in a profile that may be shared.

Tippy autosaves its live profile here:

%LOCALAPPDATA%\Tippy\default.tippy.json

Portable profiles use .tippy.json; portable banks use .tippy-bank.json.

Learn another pedal

  1. Select Learn new pedal beside Scan USB.
  2. Pick the device from the HID list. Likely pedal devices are marked with a star.
  3. Choose the number of digital switches, from 1 through 32.
  4. Keep each switch released while Tippy arms it, then complete three press/release samples when prompted.
  5. For a multi-switch pedal, press and release any two switches together to validate simultaneous input.
  6. Save the mapping and begin assigning actions immediately. Use Features to export it as a portable learned-device file.

The learned definition stores USB identity, a report-descriptor fingerprint, and switch rules. It does not record normal keyboard typing.

Pedals that enumerate as keyboards can be learned separately under Tools → Learn keyboard-style pedal. Tippy registers for Windows Raw Input and stores only the selected physical device path plus the virtual key emitted by each foot switch. Choose the device carefully: selecting a normal keyboard would intentionally map keys from that keyboard.

USB MIDI controllers are configured under USB MIDI or Tools → USB MIDI foot controls. Add the Windows input endpoint exposed by the controller, arm MIDI Learn, and press each footswitch. Note and CC switches can produce physical press/release edges; program changes and latching controls can be treated as one pulse per received message. Expression CCs remain continuous rather than being reduced to buttons. Tippy includes a PACER D2/D3/D4 factory template for switches 1–6, external FS 1–4, and EXP 1–2; its A–D switches can be learned after assigning ordinary MIDI messages on PACER. Direct 5-pin DIN MIDI is outside Tippy's hardware boundary, but it works when a USB MIDI interface exposes it as a Windows endpoint.

Tippy also ships a data-driven pedal picture registry. The shared VID_05F3/PID_00FF identity cannot distinguish every Infinity/VEC/AltoEdge rebadge, so Tippy asks for the matching picture once and remembers the answer for that physical USB device. The Picture button permits a manual override at any time. When a newly seen pedal has no confident library match, Tippy offers to prepare a privacy-safe support report. The report stays under %LOCALAPPDATA%\Tippy\SupportReports until the user reviews it and deliberately opens and submits a prefilled GitHub issue; it contains USB identity, one-way device fingerprints, bounded pedal reports, and environment details, but no raw device paths, profiles, macros, typed text, user name, or computer name. Unknown or not-yet-verified hardware is also recorded locally in unknown_pedals.log beside the development library, or under %LOCALAPPDATA%\Tippy in an installed copy.

Creative control and safety

Rehearsal Mode runs the complete recognition and visual-feedback path but suppresses keyboard, mouse, program, MIDI, OSC, gamepad, and text output. It is useful for learning a complicated foot layout safely. The optional click-through overlay announces active application scenes, banks, gestures, and pattern actions without stealing focus from the working application or game.

Tippy enforces configurable limits on macro duration, repeat duration, and step count. The default emergency stop is Ctrl+Alt+Escape; it cancels playback and releases held keyboard, mouse, and gamepad state. Live Diagnostics keeps at most 500 recent raw pedal events in memory and can export a privacy-safe support report containing device descriptors and timing—never typed text or macro contents.

Tools → Tippy Doctor performs a quick readiness check without inspecting macro contents or typed text. It can verify profile and backup readability, the artwork registry, HID listener, connected hardware, emergency and bank hotkeys, keyboard/mouse output context, gamepad/MIDI/OSC readiness, Windows startup registration, and application scenes, then export a redacted .tippy-doctor.json support report.

Automatic profile backups are retained under the active Tippy data directory. After an unclean exit, Tippy offers the newest backup before it starts listening for pedal input, writes exception details under %LOCALAPPDATA%\Tippy\Logs, and can prepare a redacted crash report for review and optional submission to the Tippy GitHub repository. Fatal shutdowns preserve the recovery marker so a normal exit callback cannot erase the evidence. Portable mode is enabled from Features → Profile backups & portable mode and takes effect after restarting. Authenticated .tippy-pedal-pack.zip libraries can update identity data and artwork without installing executable plug-ins; catalog packs require a trusted RSA publisher signature as well as archive and per-file SHA-256 checks. See advanced interactions, hardware test station, and the pedal support-pack format.

Gamepad output and game rules

Keyboard and mouse output works through the Windows SendInput API. Genuine XInput buttons, both thumb sticks, and both analog triggers require an existing ViGEmBus 1.22 installation; Tippy can detect and exercise all three output classes under Settings but does not install a kernel driver.

Some games and anti-cheat systems reject injected input. A conservative gameplay setup maps one pedal press to one ordinary key. Timed or multi-step automation may be prohibited even in casual modes, so the game's rules always take precedence.

Build from source

Requirements: Windows 11 x64 and the .NET 8 SDK or newer.

git clone https://github.com/TerkWerX/TIPPY.git
cd TIPPY
dotnet build Tippy.slnx
dotnet test Tippy.slnx
dotnet run --project src/Tippy.App/Tippy.App.csproj

Create the self-contained release:

dotnet publish src/Tippy.App/Tippy.App.csproj `
  -c Release -r win-x64 --self-contained true `
  -o dist/Tippy-win-x64

The device probe lists HID descriptors and live reports:

dotnet run --project tools/Tippy.DeviceProbe/Tippy.DeviceProbe.csproj -- 20

See the device protocol notes for the verified Version 14 report format. Contributions are welcome—start with CONTRIBUTING.md.

Tagged releases also build a per-user Windows installer, portable ZIP, and SHA-256 checksums. Authenticode signing is activated when the repository signing secrets are configured; see the release guide.

Project layout

src/Tippy.App/          WPF interface, HID service, input playback, and catalogs
src/Tippy.Core/         Profiles, banks, macro models, and report decoders
tests/Tippy.Core.Tests/ Decoder and profile tests
tools/Tippy.DeviceProbe HID discovery and protocol diagnostic tool
pedal-packs/             Authenticated publisher trust and update catalog
assets/                 Mascot, branding, pedal art, and Windows icon suite
docs/                   Protocol notes and project screenshots

Acknowledgments

Tippy was inspired by the idea of using purpose-built macro utilities with unconventional input devices, then shaped around transcription pedals those utilities did not recognize. Product and application names are trademarks of their respective owners. Tippy is not affiliated with VEC, AltoEdge, Microsoft, Adobe, Autodesk, Ableton, or the other cataloged software vendors.

About

Low-latency Windows foot-pedal macros with independent banks, HID learning, and multi-pedal support

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages