sub 4d0ad127b5 Add shared memory daemon architecture and systemd service
Move ES-5 encoding from the CLAP plugin to a standalone PipeWire
daemon (es5d) communicating via POSIX shared memory. The plugin now
acts as a parameter/state frontend while es5d outputs directly to
the ES-9. Includes systemd user service for autostart after reboot
and an install script for local deployment.
2026-03-27 22:01:04 +01:00
2026-03-21 00:23:48 +00:00

es5-clap

Native CLAP plugin for encoding gate and CV data for the Expert Sleepers ES-5 module via the ES-9 ADAT output. Replaces Silent Way's ES-5 Controller for DAWs with CLAP support (Bitwig, REAPER, etc.).

Supported Hardware

  • ES-5 mk3 — 6 expansion headers, encoded via stereo ADAT pair
  • ESX-8GT — 8 gate outputs per header (accent/velocity via PWM planned)
  • ESX-8CV — 8 CV outputs per header (12-bit DAC, ±10V range)

Building

cmake -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j$(nproc)

Installation

Copy the built plugin to your CLAP plugin directory:

# Linux
cp build/es5-clap.clap ~/.clap/

# macOS
cp -r build/es5-clap.clap ~/Library/Audio/Plug-Ins/CLAP/

Usage in Bitwig

  1. Add ES-5 Encoder as an audio effect on a track
  2. Route the track's audio output to the ES-9 ADAT channel pair feeding your ES-5 (default: ADAT channels 7/8, configurable via jumper on the ES-5 PCB)
  3. Set each header's type to match your connected expander (GT or CV)
  4. Automate the gate/CV parameters from Bitwig's modulation system

Parameter Layout

Parameter ID Range Description
Header N Type 16 Off / GT / CV Expander type on each header
HN Ch18 N01N08 0.01.0 Gate (>0.5 = on) or CV value

Encoder Protocol

Based on the MIT-licensed Pure Data externals by Expert Sleepers Ltd.

The ES-5 receives a stereo audio stream where each 24-bit sample packs 3 bytes (L = headers 13, R = headers 46). Each byte drives one expansion header:

  • ESX-8GT: each bit = one gate output (8 gates per byte)
  • ESX-8CV: 12-bit values serialized via a 3-state, 64-phase protocol

License

MIT — see LICENSE.

Encoder logic derived from Expert Sleepers Ltd MIT-licensed source code.

S
Description
Native CLAP plugin for Expert Sleepers ES-5/ESX-8CV/ESX-8GT encoder — Bitwig-friendly replacement for Silent Way
Readme MIT 52 KiB
Languages
C++ 90.8%
CMake 9.2%