We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
MIDI PADs to Controll Tracks
by
zrgcz
🎹 Zorgan: MIDI PADs to Controll Tracks
Author: Roman Prucha (zorgan)
Platform: Renoise 3.x
Version: 4.14 (Native Project Scan, Smart Instrument Detection & Zero FOUC GUI)
This tool is designed for MIDI controllers with dynamic pads (e.g., Novation Impulse) as well as standard MIDI button controllers. It allows for lightning-fast project navigation, simultaneous track and instrument switching, and full mix management (Mute / Solo / Power Off) absolutely without using a mouse.
The 4.1x version introduces a revolutionary Native Project Scan Engine that automatically detects your real routing, dropping the need for rigid mathematical offset configurations.
🚀 Key Features & Button Ecosystem
The tool’s GUI is not just a visual mirror of your controller; it is a fully-featured control panel. Each hardware block (e.g., up to 10 pads per set) has its corresponding interactive layers in the GUI:
🎛️ Hardware MIDI Trigger Logic
The primary hardware mapping (Ctrl+M) utilizes an intelligent multi-action logic on a single pad/button:
-
Soft Press (Low Velocity <= Threshold) OR Standard Button (CC value 127): Instantly selects the target Track and automatically selects the corresponding assigned Instrument.
Note: You don’t exclusively need dynamic pads! Standard ON/OFF MIDI buttons sending a CC value of 127 are natively recognized as a “Select” command.
- Hard Press (High Velocity > Threshold & < 127): Acts as a MUTE / ACTIVE toggle for the track.
- Hold Pad (Long Press): Holding the pad (e.g., for 1 second) activates SOLO mode for that track.
🖱️ GUI Button Layers
- PAD Button: Clicking the numbered PAD button in the GUI acts as a direct MUTE / ACTIVE toggle. It turns red if the track is muted or powered off.
- TRACK Button: Displays the Track Number. Clicking it instantly jumps to that track in Renoise. It glows Orange when selected. It features a smart Parent-Child visual feedback (dimmed orange) to instantly show relations between Groups and their internal tracks.
-
SEND 1 & 2 Buttons: Dynamically scans the Renoise project for real Send routings (e.g.,
S01,S02). Clicking moves you to the Send track. If the source track is muted, they intelligently turn red. -
INSTR Button (NEW): Displays the natively assigned Instrument index. Clicking it instantly selects both the Track and the Instrument.
Smart Detection: The tool scans real project data. The Instrument number appears automatically as soon as you write at least one note into the track’s pattern (or explicitly assign it via Renoise “MIDI Input -> Assigned Track” properties).
- MIDI CH Button (NEW): Displays the exact MIDI Channel of the assigned instrument (scans VST Plugin Properties, MIDI Input, and MIDI Output). Clicking it also selects the Track and Instrument.
🎧 Solo & Group Architecture
- Split Solo Engine: If you select a regular Track + press SOLO, the native Renoise solo engine is used. If you select a Group Track + press SOLO, the engine uses a “Custom Mute-Based Solo” mode (muting other channels but keeping the group and its sends active).
-
Double-Click Group: Double-clicking a
Grpbutton in the GUI hard-disables the entire group (Power OFF).
đź§ Native Project Scan Engine
Previous versions relied on manual preferences (Tracks per Group, First Instrument Index) to guess which instrument belongs to which pad. Version 4.1x completely removes this. The tool now acts as a smart observer:
- It scans your physical sequencer tracks in blocks of 10.
- It looks inside your patterns to find which Instrument is actually playing on that track.
- It reads the VST Plugin or Hardware MIDI channel of that specific Instrument.
- It caches this data and binds it to the GUI and your MIDI controller flawlessly.
📜 Changelog (Recent Major Updates)
v4.14 (Anti-Freeze Architecture & Optimization):
[OPTIMIZED] Anti-Freeze Architecture: Completely eliminated Renoise GUI freezing, lagging, and CPU spikes. Implemented a smart “Dirty Flag” throttling system (debouncing) that groups multiple rapid API changes into a single, efficient UI update.
[REMOVED] Heavy Idle Loop Rescan: Removed the continuous, heavy full-project rescan that ran every 0.35 seconds, freeing up massive amounts of Renoise CPU resources. The tool now calculates data only when genuinely needed.
[FIXED] Group Detection Logic: Fixed a critical background bug in get_group_bounds() where the script was scanning tracks backwards. It now correctly scans forwards to accurately detect all child tracks nested inside a Group.
[IMPROVED] Event Handling: Track notifiers no longer force immediate, heavy GUI redraws. They now safely flag the engine to update only during the next idle tick, preventing “refresh storms” when multiple tracks change state at once.
- v4.13 (Zero FOUC GUI): Implemented a pre-render core engine. The GUI now calculates all visibilities, assignments, and colors before drawing the window, completely eliminating the “Flash of Unstyled Content” when opening the tool.
- v4.12 (Standard MIDI Button Support): Upgraded the trigger logic. Mappings now natively support standard non-dynamic MIDI buttons (reading CC value 127 as a strict Select Track/Instrument command) alongside velocity-sensitive pads.
- v4.11 (GUI Width Optimization): Re-engineered the button layout and Status Bar limits to ensure the GUI perfectly hugs the 10-pad column width without stretching.
-
v4.09 - v4.10 (Smart Instrument & MIDI CH Detection): Replaced rigid mathematical offset calculations with the new Native Project Scan Engine. The tool now dynamically reads assigned instruments from pattern data and precisely detects VST Plugin Channels. Added the new
InstrandMIDI CHrows to the GUI. Removed obsolete project structure settings. - v4.06 - v4.08: Unified the Visibility Engine and introduced foolproof Notifier management to prevent memory leaks during rapid GUI toggling. Restored safe GUI Pad mute functionality.
- v4.05: Cleaned GUI, moved mappings to Root, added Smart Encoders (Endless/Absolute Pattern Scrolling), and introduced Parent-Child UX dimming highlights.
- v3.9x: Introduced Split Solo Architecture and Mathematical Backward Scan for perfect Group track handling without API crashing.