Skip to content
Download

Download PitchControl!

Version 1.2.1, released 2026-10-09. Free and open source. No installer, no account: unpack the zip and start it.

macOS

Apple Silicon (M1 and later)
PitchControl-1.2.1-macos-arm64.zip≈ 22 MB
Download for macOS

Windows

64-bit Windows
PitchControl-1.2.1-windows-x64.zip
Download for Windows

Downloads are hosted on GitHub. The button opens the latest release; pick the zip for your system under “Assets”. Older versions are on the releases page.

Keep PitchControl! going

PitchControl! is free and made in spare time. If it runs your shows, consider buying the developer a coffee. Every donation goes into new features, fixtures and fixes.

Donate on Ko-fi

01/Install

  1. 01

    Unpack

    Unzip the download and move PitchControl wherever you like, for example to Applications on a Mac.

  2. 02

    First launch

    The app isn’t signed yet, so your system asks once.macOS: open the app; when macOS refuses, go to System Settings → Privacy & Security and click Open Anyway. Allow microphone access when asked.Windows: in the SmartScreen dialog, click More info → Run anyway.

  3. 03

    Set up and play

    On first start, PitchControl! creates Documents/PitchControl with a default rig. Pick your audio input and outputs, and you’re ready. Getting started

02/What you need

Computer
A Mac with Apple Silicon (M1 or later) or a 64-bit Windows PC.
Audio
Any audio input: an interface fed from the mixer, or the built-in microphone to start with.
Lights
An Enttec DMX USB Pro, an Art-Net node, or PitchPlease LED strips over USB serial.
Controller
Optional. A Novation Launch Control XL works out of the box.

On an Intel Mac or Linux? PitchControl! also runs from source with Python and Node. Source on GitHub

03/Release notes

1.2.1

2026-10-09
Latest

Fixed

  • First start: with no saved macro values (a new checkout or install; the saved state is not in the repo) all faders started at 0, so the lights stayed dark. The macros now start with the values of scene 1.

Changed

  • Windows build script: the window stays open at the end, the output of every step goes to build-windows.log (the window shows the step names and, on a failure, the end of the log), and missing or too old Node.js (the UI build needs 20.19+ or 22.12+) and missing Python 3.11 / 3.12 are reported up front. The UI packages are reinstalled when the Node version changed (npm skips the build tool's platform binary under an old Node), and the Python environment is made with 3.12 or 3.11 even when a newer Python is installed. On CI nothing changes (no pause, output on the console).
  • Fog page: the long label "Every … for … seconds" was cut off. The timer is one row now (switch, every _ s for _ s); universe and channel, and on / off value, have their captions next to the fields; the name field fills the row.
  • Universe dropdowns: every DMX universe field (Rig, Outputs, Fog) is a dropdown of the universes 0–3, like the Control Desk's. A value outside that range in an older file is kept and shown as "not offered". The Art-Net universe on the wire is a dropdown of 0–15.

1.2.0

2026-10-09

Changed

  • Full macro names on the General page: the abbreviated labels ("Strobo br.", "Sat. A", …) are gone; a name too long for its column gets tighter letter spacing and then a smaller font, never a second line.
  • Settings format: outputs.enttec in settings.json is a list now. Settings from 1.1.0 load as before, but a settings.json saved by 1.2.0 does not load in 1.1.0.

Added

  • Up to 4 Enttec DMX USB Pro interfaces: Outputs → Add interface / Remove; each interface has its own device and universe, and its own status dot in the header. Settings with a single interface load as before.
  • UI scale shortcuts: ⌘ (macOS) / Ctrl (Windows) with + or =, −, and 0 for 100 %, saved like the Settings slider.
  • Context footer everywhere: every control on every page now has a tip in the footer (rows, buttons, selects, text fields, status indicators, lists, meters, panels, the tabs), and Tab focus drives it like the mouse.
  • Context footer: the key-hint footer lists the keys and mouse actions of the control under the mouse or selected with the keyboard, with a short explanation (what each macro does, which fixture a Control Desk channel belongs to, …).

1.1.0

2026-10-08

First public release. A cross-platform (macOS, Windows) port of the vvvv patch with a new UI.

Added

  • Engine: 40 FPS, 32-band audio analysis with an octave-weighted strobo trigger. It ports the vvvv patch's phase, strobo / idle and colour logic, the four mask presets (Gradient, Back & Forth, Rotating Line, Noise) with symmetry and crossfades, scenes and fog timers.
  • Outputs: Enttec DMX USB Pro, Art-Net, PitchPlease v2 serial. Gamma is applied per channel, the same for every output; the PitchPlease v2 / v3 firmware decodes perceptual values itself.
  • Monochrome UI in its own window (macOS / Windows) or the browser:
    • grey, amber or phosphor ink, glow, UI brightness, UI scale with "Fit window";
    • fully keyboard-driven;
    • custom full screen that covers the MacBook camera notch.
  • Pages:
    • General, Dimmers (names, unused dimmers disabled);
    • Fixtures (fixture type editor with channel layout and channel map);
    • Rig (rig files and per-fixture values, multi-edit, overrides of type values);
    • Inputs (audio, MIDI monitor), Outputs, Fog, Settings;
    • Control Desk (manual override of any DMX channel, saved across restarts).
  • Novation Launch Control XL Mk3 mapping with General / Dimmers page switching.
  • Config as plain JSON files (fixture types, rigs, controllers, scenes, settings), edited in the app or by hand; unknown keys are logged, never fatal.
  • Version shown in Settings → About and in the log.