Module Duplex.Applications.XYPad
Control any XYPad device in any Renoise DSP Chain.
Inheritance: Duplex.Application > Duplex.RoamingDSP > Duplex.Application.XYPad
Features
* Built-in automation recording * Supports knobs, a MIDI keyboard's touchpad or an OSC device's accelerometer * Free roaming - jump between different XYPad devices in the song * Device Lock - remember focused device between sessions
Usage
For basic operation, you can map either xy_pad
or xy_grid
to your controller. Without any of these mappings, the application will refuse to start.
To map an OSC device, add a Param
node to the control-map which look like this:
<Param name="MyDevicePad" type="xypad" minimum="0" maximum="127"/>
To map a MIDI device, add a Param
node to the control-map which look like this:
<Param name="XYPad_X" type="xypad" size="4" skip_echo="true">
<SubParam value="CC#56" orientation="vertical" minimum="0" maximum="127" />
<SubParam value="CC#57" orientation="horizontal" minimum="0" maximum="127" />
</Param>
Note: to enter the correct minimum and maximum values, it's important you know a bit about your device as the application will base it's min/max/axis values directly on the information specified here.
Discuss
Tool discussion is located on the Renoise forum
Changes
0.99.12
- Supports <SubParam> nodes (proper support for MIDI devices)
- Broadcasting of MIDI values
0.98.19
- Simplified setup: use unique, automatically-generated names to identify
“managed” XYPads (no more need for manually specified id’s)
0.98.15
- Fixed: No longer looses focus when navigating to a new track
0.98
- First release
Functions
__init (VarArg) | Constructor method |
on_idle () | inherited from Application |
update_renoise () | apply the value to the targeted DSP device |
update_controller () | update display state of the various controls |
get_xy_params () | return the X/Y axis parameter of the target device |
_build_app () | inherited from Application |
select_grid_cell (x, y) | set the quantized value based on input from xy_grid, but add a tiny amount of noise afterwards, forcing the xypad device to send a signal |
attach_to_device (track_idx, device_idx, device) | attach notifier to the device called when we use previous/next device, set the initial device or are freely roaming the tracks |
send_midi (msg) | send MIDI message using the internal OSC server |
Tables
default_options | The XYPad application has no default options |
self.value | current value |
self._controls | controls Note: RoamingDSP has some controls too |
Fields
self._instance_name | the name of the device we are controlling |
self.update_requested | update display |
self.suppress_value_observable | (bool) set to temporarily skip value notifier |
self.min_value | minimum/maximum value |
self.grid_width | the detected grid width/height |
Functions
- __init (VarArg)
-
Constructor method
Parameters:
- VarArg )
See also:
- on_idle ()
-
inherited from Application
See also:
- update_renoise ()
- apply the value to the targeted DSP device
- update_controller ()
- update display state of the various controls
- get_xy_params ()
-
return the X/Y axis parameter of the target device
Returns:
-
DeviceParameter
- _build_app ()
-
inherited from Application
Returns:
-
bool
See also:
- select_grid_cell (x, y)
-
set the quantized value based on input from xy_grid, but add a tiny
amount of noise afterwards, forcing the xypad device to send a signal
Parameters:
- x
- y
- attach_to_device (track_idx, device_idx, device)
-
attach notifier to the device
called when we use previous/next device, set the initial device
or are freely roaming the tracks
Parameters:
- track_idx
- device_idx
- device
- send_midi (msg)
-
send MIDI message using the internal OSC server
Parameters:
- msg (table) MIDI message with three bytes
Tables
- default_options
-
The XYPad application has no default options
Fields:
- broadcast_x
- description
- items
See also:
- self.value
-
current value
Fields:
- nil
- nil
- self._controls
- controls Note: RoamingDSP has some controls too