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

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
generated by LDoc 1.4.2