OpenPipes Pipe Organ Sound for the Masses

I2C Preset Button Modules

Overview

Pistons are the quick-access controls every organist relies on to recall preset registrations mid-performance. PIPE 2C’s preset button modules follow the same architectural principles as the rocker tab controllers—8 positions per module with full chainability—but in a compact momentary-button form factor designed for mounting below the manuals or as toe pistons beneath the pedalboard.

Video Tour

PCB 3D Render

Preset Button Module — PCB 3D Render

Key Features

  • 8 lighted buttons per module — Momentary-action buttons with satisfying tactile feedback
  • LED indicators — Per-button illumination shows the currently active preset
  • I2C chainable — Standard 4-wire connectors; add as many modules as your console requires
  • Dual mounting — Suitable for both thumb pistons (below manuals) and toe pistons (above pedalboard)
  • Solderless assembly — Plug-in connectors throughout

How It Works

The module is built around a single PCA9555 16-bit I2C I/O expander. Its sixteen pins split neatly into two jobs: eight scan the buttons and eight drive the LEDs. Because everything the module needs is handled by that one chip, there is no microcontroller and no firmware on board—the host simply reads the button register and writes the LED register directly over I2C.

The rugged momentary switches use the same heavy-duty mechanism you find on a desktop PC power button, chosen for a positive, tactile click that survives a lifetime of performance. Each switch sits beneath its own indicator LED, so the currently active preset lights up right under your finger. A small on-board trimmer sets the LED brightness, letting you match the glow to the ambient light of your console.

Addressing — up to 8 modules per bus

Every device on an I2C bus needs a unique address. A 3-way DIP switch sets the PCA9555’s three address pins (A0–A2), giving each module its own identity. Flip the switches once during assembly and up to eight modules share a single bus—64 pistons—with the host able to talk to each independently. Need more? Add a second bus.

Solderless chaining

Two JST-SH 4-wire connectors (compatible with SparkFun Qwiic and Adafruit STEMMA QT) carry power, clock and data in and out. Plug one cable from module to module; on-board pull-up resistors keep the bus signals crisp. There is nothing to solder anywhere in the signal path.

Role in Your Organ

Pistons recall combinations of stops in an instant—essential for changing registration mid-piece without lifting your hands from the keys. Multiple modules can serve different divisions:

  • Module 1 — Great division pistons
  • Module 2 — Swell division pistons
  • Module 3 — Pedal division pistons
  • Module 4 — General pistons and sequencer controls

Typical Configurations

PositionFunction
1–6Divisional combination presets
7General Cancel
8Full Organ / Tutti

Bill of Materials

ComponentDesignatorQtyDescription
PCA9555PW,118U2116-bit I2C I/O expander (TSSOP-24)
K6-6140S05SW1–SW88Momentary tactile switch (lighted key)
EU-03KSU413-position DIP switch (I2C address select)
SM04B-SRSS-TBCN1, CN22JST 4-pin I2C connector (in / out)
G32AT-B102R311 kΩ trimmer (LED brightness)
150 ΩR2, R5, R10–R158LED current-limit resistors (0805)
4.7 kΩR1, R42I2C pull-up resistors (0805)
10 kΩR6, R16–R184Pull-up resistors (0805)
PZ254R-11-04PH314-pin male header (optional serial)

Customizer Software

The companion application (in development) will provide design tools for button-face customization, enabling builders to achieve console appearance standards matching traditional organ specifications. Options will include:

  • Numbered presets (1–8, Roman numerals)
  • Labeled function buttons (GC, Tutti, Seq+, Seq−)
  • Custom engravings for specialized functions

Connection

Piston Module — I2C Daisy Chain

3D Printed Parts

Preset Piston Module — 3D Render

Each piston module includes 3D-printable button caps, mounting rails, and bezel frames for clean integration beneath the manuals or as toe pistons. STL files accommodate both thumb and toe piston mounting configurations.

Open Source

Schematics, PCB layouts, firmware notes and 3D print files are available on the OpenPipes GitHub.

← Back to Pipe2C Overview