Skip to content

About

Save multiple foot-pedal setups and switch between them with one click. Adds profile support to NCH Pedable - built for driving the Elgato Prompter hands-free.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

4 Commits

Folders and files

Repository files navigation

PPW — Pedable Profile Wrapper

Save several foot-pedal setups and switch between them with one click.

A USB foot pedal can send any keystroke you want, which makes it useful for more than one job. Mine handle lean-left and lean-right in games, and drive my teleprompter when I record video. Push-to-talk, mute, screenshots, a macro you fire constantly — anything you can put on a key, you can put on a pedal.

Pedable (NCH Software) is a free utility that maps a pedal to keystrokes, and it does that well. It only remembers one configuration at a time, though, so using your pedals for two different things means re-mapping them by hand every time you switch.

PPW saves each setup as a profile and swaps them for you.

It also writes key combinations that Pedable's own setup screen won't record — including Ctrl+Alt+Page Up / Page Down, which is what the Elgato Prompter uses for moving through a script. That was the case that started this: the Prompter scrolls at a fixed speed, which doesn't work well if you ad-lib, and its hotkeys let you move a paragraph at a time instead.

PPW doesn't modify Pedable. It reads and writes Pedable's own settings, so Pedable stays exactly as its authors shipped it.

Version 1.3 · Windows · free to use, no resale — see Licence.


Install

  1. Download PPW-GUI.exe from the latest release.
  2. Drop it next to pedable.exe — usually C:\Program Files (x86)\NCH Swift Sound\Pedable\ (Windows will ask for admin to copy into Program Files).
  3. Run it.

That's the whole install. PPW-GUI.exe is fully self-contained — one ~77 KB file, no runtime to install, no setup program, nothing else needed. It works from any folder; next to pedable.exe just keeps things tidy.

Requires Windows 8 or newer and Pedable already installed and configured for your pedal hardware.

PPW uses .NET Framework 4.x and Windows PowerShell 5.1 — both are built into Windows from Windows 8 / Server 2012 onward, so there is normally nothing to install. PPW checks for them at startup and, if one is missing or blocked by policy, explains what's needed and offers the Microsoft download link rather than just failing. The System check button shows exactly what it detects.

Verify your download

Every release publishes a SHA-256 checksum in SHA256SUMS.txt, so you can confirm you have the genuine, current build:

Get-FileHash PPW-GUI.exe -Algorithm SHA256

Compare it to the hash in SHA256SUMS.txt for that release. They should match exactly.

SmartScreen: the .exe isn't code-signed (certificates cost real money for a free tool), so Windows may warn you the first time. That's expected — verify the checksum above, then choose More info → Run anyway. If you'd rather not run someone else's binary at all, build it yourself: see Building from source below. It's a single PowerShell script and you can read every line of it first.

Use it

  1. Pick a profile in the list.
  2. Click Apply to pedals.

The profile matching your current pedals is shown in green and marked ACTIVE. Press F1 or click Help in the app for the full guide.

Command line, for scripting or a shortcut key:

PPW-GUI.exe            # normal window
.\PPW-GUI.ps1 -Profile "Elgato Prompter"   # apply and exit, no window

Using it with the Elgato Prompter

Action Hotkey
Play / Pause Ctrl + Alt + P
Next chapter Ctrl + Alt + Page Down
Previous chapter Ctrl + Alt + Page Up

Two things that trip people up:

  • The hotkeys are OFF by default. Turn them on in Elgato Camera Hub → Preferences → "Control Prompter script with Hotkeys" (needs Camera Hub 1.11+). Without this the pedals send the right keys and nothing listens.
  • A "chapter" is just a paragraph. Camera Hub splits your script at every blank line, so how far one tap moves you is entirely up to how you paragraph it. Put a blank line wherever you might wander off script. Two to four spoken lines per chapter works well.

What it changes on your PC

PPW only edits Pedable's own registry values under HKEY_CURRENT_USER — your user account only. It needs no administrator rights to run and touches nothing else.

Before every change it exports a .reg backup of Pedable's settings to %LOCALAPPDATA%\PedalProfiles\backups (the 30 most recent are kept). To undo a change by hand, close Pedable and double-click one of those files.

Your data:

%LOCALAPPDATA%\PedalProfiles\profiles.json   saved profiles
%LOCALAPPDATA%\PedalProfiles\settings.json   where pedable.exe was found
%LOCALAPPDATA%\PedalProfiles\backups\        automatic .reg backups

Why Pedable restarts when you apply

Pedable keeps its settings in memory and only writes them to the registry when it closes — so anything written while it runs is overwritten the moment it exits. PPW closes Pedable, writes, and restarts it. You'll see its icon blink; that's expected.

It shuts Pedable down with WM_QUIT rather than killing it, so Pedable exits cleanly and doesn't report a crash on next launch.


Licence

Free to use and share. No resale, no bundling. Provided AS IS.

You may use it for anything (personal or commercial) free of charge, copy it, share it unmodified, and modify it for your own use. You may not sell, rent, license or charge for it — alone or as part of a bundle, package, subscription or paid service — or include it in another product without written permission.

It comes with no warranty of any kind and you use it entirely at your own risk. Full text in LICENSE.txt, also shown in the app under About.

Copyright © 2026 SiggySoft LLC.

Not affiliated with NCH Software

Pedable is a product of NCH Software. PPW is an independent, unofficial utility — not endorsed by, affiliated with or supported by NCH Software. It does not modify, patch or redistribute any part of Pedable. Elgato Prompter and Camera Hub are products of Corsair/Elgato; PPW just sends ordinary keyboard shortcuts. All trademarks belong to their respective owners.


Troubleshooting

A pedal does the wrong thing / next and previous are backwards. Pedal numbering doesn't always match physical position — it varies by device. Swap those two values in Edit. Nothing is broken.

Pedable shows "Action is not defined". You're on an old build. Update to the latest release.

Something isn't working and I want to see what PPW sees. Click System check in the app. It reports your .NET and Windows PowerShell versions, where Pedable was found and how, where your settings live, and how many backups exist.

PPW can't find Pedable. Click Locate Pedable... and point it at pedable.exe. PPW normally finds it via the running process, the registry, then the usual Program Files locations.

Windows won't let me pin it to the taskbar. Windows refuses to pin an executable that runs from a network drive. Copy it to a local disk (which is what the install step above does).


For developers

Pedable's registry format, reverse-engineered

Bindings live at HKCU\Software\NCH Swift Sound\Pedable\PedalSettings\Pedal1|Pedal2|Pedal3. There is no config file.

Every value is REG_SZ (a quoted string), including the numeric ones. Writing them as DWORDs makes Pedable unable to read them, and its Action column shows "Action is not defined."

Pedable stores a key sequence, not a packed modifier mask:

  • MappingType = number of keys (1 = single key, 3 = Ctrl+Alt+X)
  • Key_1..Key_3 = one entry per key, pressed in order and held together

Each entry is:

(scan_flags << 24) | (scan_code << 16) | virtual_key_code
  • scan_code — the set-1 hardware scan code
  • scan_flags — 0x00 on the first key, 0x20 on each following key ("still held"), plus 0x01 for extended keys (PageUp/PageDown/arrows/Home/End/Insert/Delete)

Ground truth captured from Pedable's own UI for Ctrl+Alt+Z:

Value Contents
Key_1 = 1900561 = 0x001D0011 Ctrl — scan 0x1D, vk 0x11, flags 0x00
Key_2 = 540540946 = 0x20380012 Alt — scan 0x38, vk 0x12, flags 0x20
Key_3 = 539754586 = 0x202C005A Z — scan 0x2C, vk 0x5A, flags 0x20

PhysicalPedalId ("0") is required — a pedal entry missing it will not fire. Other values: Status (1 = active, 0 = unassigned), Virtual (0), MappedCommand (-1), MappedString / FilePath (empty).

Worth knowing if you go looking yourself: an earlier reading of this format — (modifiers << 16) | vk — looked convincing and was wrong. Q (0x00100051) and E (0x00120045) both decode plausibly under it, and E even looks like "Ctrl+E" because 0x12 resembles a Ctrl bit when it is really E's scan code. Two samples agreeing was not enough to confirm it. What settled the format was setting a combination in Pedable's own UI and reading back exactly what it wrote.

Also worth noting: NCH's documentation describes single-key mapping only, but multi-key sequences are how modifiers actually work here.

Building from source
.\Build-Exe.ps1      # compiles PPW-GUI.exe (embeds PPW-GUI.ps1 + icon)
.\Install-Local.ps1  # installs it beside pedable.exe, elevating if needed

PPW-GUI.exe hosts PowerShell in-process via System.Management.Automation rather than spawning powershell.exe — otherwise the window belongs to PowerShell, the taskbar shows its icon, and pinning misbehaves. PPW-GUI.ps1 is embedded with csc /resource:<path>,<name>; a PPW-GUI.ps1 sitting beside the .exe takes priority, which keeps development easy.

File Purpose
PPW-GUI.ps1 The whole application (WinForms UI + registry engine)
PPW-GUI.exe Self-contained host — embeds the script and the icon
ppw.ico App icon
Build-Exe.ps1 Builds the .exe
Install-Local.ps1 Installs beside pedable.exe
LICENSE.txt Full licence text

About

Save multiple foot-pedal setups and switch between them with one click. Adds profile support to NCH Pedable - built for driving the Elgato Prompter hands-free.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages