Skip to content

Instantly share code, notes, and snippets.

@ylmrx
Last active March 7, 2026 10:51
Show Gist options
  • Select an option

  • Save ylmrx/d860d24088b2f03f57ecb55cc3503f68 to your computer and use it in GitHub Desktop.

Select an option

Save ylmrx/d860d24088b2f03f57ecb55cc3503f68 to your computer and use it in GitHub Desktop.
Puredata -> Drumlogue

Puredata → Drumlogue

Prerequisite

  • Python
  • Docker (the docker image carries all the compiler deps)
  • Git

Pure data/hvcc important informations

https://github.com/boochow/hvcc_drumlogue

Environment setup

Create DRUMLOGUE-PUREDATA folder within MyDocuments.

Set-Location -Path  ([System.IO.Path]::Combine([Environment]::GetFolderPath('MyDocuments'),
  "DRUMLOGUE-PUREDATA"))
  
# python virtual environment
python -m venv hvcc-venv
hvcc-venv\Scripts\Activate.ps1
pip install hvcc

# dependencies
git clone https://github.com/Wasted-Audio/heavylib.git
git clone https://github.com/boochow/hvcc_drumlogue.git
git clone https://github.com/korginc/logue-sdk.git

# also copy your patch.pd in this folder

After this step, it looks like:

image

Build

First translate puredata to C, and write the result in logue-sdk working dir:

# set the PYTHONPATH (this can be done globally with the "Edit environment variable for your account"
# utility)
$env:PYTHONPATH = '.\hvcc_drumlogue\'

# kind = masterfx, revfx, delfx, synth, cf. https://github.com/boochow/hvcc_drumlogue
hvcc patch.pd -G drumlogue_[kind] -n PatchName -o logue-sdk\platform\drumlogue -p heavylib

Start docker-engine (usually : Run Docker-desktop)

# only the first time:
docker pull xiashj/logue-sdk

# then
docker run --rm -v .\logue-sdk\platform:/workspace -it xiashj/logue-sdk:latest `
  /app/commands/build drumlogue/logue_unit

You'll get plenty of error messages about attempts to change ownership of file, you can safely disregard these.

The last messages should say Deploying to ....PatchName.dmrlgunit, then it worked.

Deploy

The PatchName.drmlgunit file lands in logue-sdk\platform\drumlogue\logue_unit, move it to current folder:

Move-Item -Path .\logue-sdk\platform\drumlogue\logue_unit\PatchName.drmlgunit -Destination .

Plug your Drumlogue with USB, turn it on while holding the record key [ o ], it appears as a thumbdrive.

Copy the .drmlgubunit file to H:\Units\[kind], and hit play.

Next time

After you built the environment, not all the steps above are necessary, this describes the workflow when you come back to it.

In a powershell terminal:

# Come back to your "project" folder. 
Set-Location -Path  ([System.IO.Path]::Combine([Environment]::GetFolderPath('MyDocuments'),
  "DRUMLOGUE-PUREDATA"))
  
# activate the python virtual environment
hvcc-venv\Scripts\Activate.ps1
$env:PYTHONPATH = '.\hvcc_drumlogue\'

# translate
hvcc patch.pd -G drumlogue_[kind] -n PatchName -o logue-sdk\platform\drumlogue -p heavylib

# build
docker run --rm -v .\logue-sdk\platform:/workspace -it xiashj/logue-sdk:latest `
  /app/commands/build drumlogue/logue_unit

# move
Move-Item -Path .\logue-sdk\platform\drumlogue\logue_unit\PatchName.drmlgunit -Destination .
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment