KQ MIDI Modulate Reference Manual

日本語はこちら。

Disclaimer: This page was translated by ChatGPT.

This manual is based on app version 1.2.

Notes

  • Knowledge of MIDI signals is required to use this app. If you are not familiar with MIDI, please ask someone knowledgeable to help with the settings.
  • The MIDI channels specified in Options take priority. Be careful when specifying MIDI channels for Trigger and Pad.

Convert

This function converts the values of control signals. It cannot be set per channel. The same CC content will not be retransmitted until it is reset.

  • Press the button at the top left to switch to the reduced display.
  • The “⚠” button at the top right is the panic button. Pressing it sends All Notes Off and All Sound Off.

Note Control (First Block)

  • Note Ctrl, Threshold: Only transfers a note-on signal if the value of Note Ctrl is above the threshold.
  • H: Key Hold Function: When the key hold function is active, the indicator turns red. Tapping it opens the settings screen.

Key Hold Function

When enabled, the Key Hold function sustains the first note played until all notes are released. In the options screen, you can specify the MIDI channel used during the hold. This channel affects all notes except those that are held.

  • Hold Trigger: Specifies the control used to activate the key hold function.
  • Momentary/Latch: Choose whether the control specified in Hold Trigger will turn the function on when the value is 64 or higher and off when below 64 (Momentary) or toggle between on and off (Latch).

Conversion Control (From the Second Block Onwards)

This function converts and outputs the received signals. If the same output appears in multiple blocks, the values are summed.

  • Tap the graph to switch between line graph, history, and bar graph.
  • Long press the graph and select “Edit Curve” to edit the curve.
  • “- 0 +” is the offset. This value is added to the input value.
  • HR: High resolution, handles 14-bit signals when enabled.
  • E: Envelope, tap to open the settings screen.
  • F: Filter, tap to open the settings screen.

Envelope

  • Trigger Point 1: Specifies the endpoint for Trigger 1.
  • Repeat Point 1: Returns to this point after reaching the endpoint of Trigger 1.
  • Trigger Point 2: Specifies the endpoint for Trigger 2. Setting it to 0 disables the envelope generator.
  • Repeat Point 2: Returns to this point after reaching the endpoint of Trigger 2.
  • X: The time (milliseconds) it takes to reach value Y.
  • Y: The value changes linearly until it reaches this point.
  • Trigger 1 Threshold: The condition for Trigger 1 to activate. Trigger 1 will fire when the value is above this threshold.
  • Trigger 2 Threshold: The condition for Trigger 2 to activate. Trigger 2 will fire when the value is below this threshold.

By setting Trigger 1 Threshold to 0, Trigger 2 Threshold to 128, and setting Trigger Point 2 to be the same as Trigger Point 1, the envelope will always activate when a signal is received.

To achieve an LFO-like effect, set the input source of Convert to “N/A,” Trigger 1 Threshold to 0, Repeat Point 1 to 0, and set Trigger Point 2 to be the same as Trigger Point 1.

Filter

  • LPF: Low-pass filter, smooths the change in values. The higher the Strength value, the slower the change.
  • HPF: High-pass filter, applies only to sudden changes in value. Automatically approaches the Return Base value. The higher the Strength value, the faster the change.
  • HPF Delay: Delays the input of the high-pass filter. This option was created to avoid the problem of unintentional pitch increases during note on when achieving EWI-style vibrato, as described below.

For example, setting the pitch bend filter to LPF Strength 34, HPF Strength 43, Return Base 64, and HPF Delay 20 will make it behave like a certain EWI vibrato that only responds when the pitch bend is moved.

Example of EWI-style vibrato setting with Yamaha WX5: Download
In this setting example, the lip is set to Tight and Adding CC18 (LIP+) with the WX5 dip switches.

Signal Types

  • N/A: Invalid
  • Key: Note signal key
  • Vel1: Note On velocity
  • Vel0: Note Off velocity
  • Note: Flag if any notes are on
  • CC: Control change
  • AT: Channel aftertouch
  • PB: Pitch bend
  • PC: Program change
  • A1 – A8, B1 – B8: Variables
  • C1 – C8: Cn = An × Bn / 128, a simple multiplication of An and Bn.
  • D1 – D8: Dn = (An – 64) × (Bn- 64) / 64 + 64, a multiplication where An and Bn are centered around 64.
  • E1 – E8: En = (An – 64) × Bn / 128 + 64, a multiplication where An is centered around 64 and Bn is centered around 0.

Edit Curve

Long press the graph to edit the curve. Enter the coordinates (x, y) to convert the values into a curve connecting the coordinates with straight lines. X is the input value, and Y is the output value.

Trigger

When a specified MIDI signal is received, it sends a signal according to the rule. This process is prior to Convert. Each Trigger can be named and turned on/off individually.

Harmony

Shifts the pitch and outputs the note signal.

  • Name: Name of the trigger.
  • MIDI Channel: The target MIDI channel. Triggers with the note signal of this channel.
  • Suppress Original: If enabled, the original note signal will not be sent.
  • Shift: Shifts the settings from C to B. “▲7” shifts up a fifth, “▼7” shifts down a fifth.
  • Reset: Loads the settings created by the developer.

Settings for Each Note (C to B)

  • Number of Additional Notes: Adds notes by this number.
  • Key Offset #N: Amount of offset from the original note in semitones.
  • Velocity Offset #N: Amount of change in velocity from the original note.

Channel Rewrite

Rewrites the MIDI channel and outputs it. Can output to multiple channels simultaneously.

  • Name: Name of the trigger.
  • Type: Type of the target signal.
  • Channel: The target MIDI channel. Triggers when it receives a signal from this channel.
  • Predicate: Triggers when this condition value is received.
  • Output Channel N: Selects the output channel.

Signal Trigger

Converts the received MIDI signal into any MIDI signal.

  • Name: Name of the trigger.
  • Type: Type of the target signal.
  • Channel: The target MIDI channel. Triggers when it receives a signal from this channel.
  • Suppress Original: If enabled, the original signal will not be sent.
  • Number of Predicates: Specifies the number of conditions.
  • Predicate: Triggers when this condition value is received.
  • Needs Reset, Reset Minimum/Maximum: Retransmission occurs only when the data value is within the range of Reset Minimum – Maximum when Needs Reset is enabled. If Needs Reset is D1, it judges the second byte of the MIDI signal, if D2, the third byte. For example, if the CC value predicate is 64 or higher, with Needs Reset set to D2, Reset Minimum/Maximum to 0/63, when receiving the CC values “30”, “65”, “70”, “80”, “50”, “74”, “85” in sequence, it triggers at “65” and “74”.
  • Signals to Send: The signal to send. Commands can also be described. For more details, refer to the “Edit Signals” section.

Value Offset

Shifts and converts the values of the received MIDI signals.

  • Name: Name of the trigger.
  • Type: Type of the target signal.
  • Channel: The target MIDI channel. Triggers when it receives a signal from this channel.
  • Predicate: Triggers when this condition value is received.
  • Data Offset: Specifies the amount to shift the value.

Filter

Blocks the transmission of MIDI signals.

  • Name: Name of the trigger.
  • Type: Type of the target signal.
  • Channel: The target MIDI channel. Triggers when it receives a signal from this channel.
  • Predicate: Triggers when this condition value is received.

Pad

A set of 8×16 pads. Users can assign sounds, controls, SysEx, and more. To edit, press “Edit” at the top right.

  • There are 8 scenes.
  • The “⚠” button at the top right is the panic button. Pressing it sends All Notes Off and All Sound Off.

Edit

Pressing “Edit” changes the pad color to gray, entering edit mode.

Pad Menu

  • Edit: Edits the content of the pad.
  • Copy: Copies the content of the pad to the clipboard.
  • Paste: Pastes the content copied to the clipboard.
  • Swap: Swaps the content with the copied pad.
  • Clear: Initializes the content.

Scene Menu

Long press a scene to display the menu.

  • Copy: Copies the content of the scene to the clipboard.
  • Paste: Pastes the content copied to the clipboard.
  • Swap: Swaps the content with the copied scene.
  • Clear: Initializes the scene.

Pad Editing

Common Items
  • Name: Name of the pad.
  • Type: Type of the pad.
  • Latch Mode:
    • Momentary: The pad is on only while being touched.
    • Latch: The pad toggles on and off.
    • Group: Similar to Latch, but when the pad is pressed, other pads in the same group turn off.
Note

Sends Note On when on and Note Off when off.

  • Number of Notes: Number of notes to send.
  • Channel: MIDI channel to send.
  • Note N, Velocity: Name and velocity of the note to send.
CC/AT/PB Oneshot

Sends control signals only when turned on.

  • Subtype: The type of control to send.
  • Hires: Handles 14-bit values.
  • Value: The data value to send.
  • Channel: MIDI channel to send.
CC/AT/PB On/Off

Sends control signals with separate values for on and off states.

  • Subtype: The type of control to send.
  • Hires: Handles 14-bit values.
  • On/Off Value: The data values to send when on/off.
  • Channel: MIDI channel to send.
Program

Sends a program change when turned on. Bank can also be specified.

  • Program #: The program number.
  • Bank MSB #: The bank number specified by CC#0. If N/A, it will not be sent.
  • Bank LSB #: The bank number specified by CC#32. If N/A, it will not be sent.
  • Channel: MIDI channel to send.
Convert Offset

Changes the offset in the “Convert” screen when turned on. It will not function if the target is not there in the Convert list. If there are multiple targets, the first one is used.

  • Target: The target to change.
  • Offset Value: This value will change the Convert offset. It is an absolute value, not a relative value.
Load Preset

Loads a preset file when turned on.

  • File: Select the preset to load.
Click Pad

Press one pad.

  • Scene / Pad #: Specify the target pad.
  • Condition: Specify the condition of the target pad.
    • Always: The pad is pressed and released regardless of its state.
    • When Off: The pad is pressed and released when it is off.
    • When On: The pad is pressed and released when it is on.
Switch Pads

Switch pads within the same group.

  • Scene / Group: Specify the group of pads to switch.
  • Direction: Specify whether to switch in order (Forward) or reverse order (Reverse).
  • Cyclic: Specify whether to return to the first pad after reaching the last one.
Misc/SysEx

Specifies detailed actions. Any MIDI signal and command can be specified. All pad types can be edited.

Profiles

Settings can be saved/loaded.

Route

MIDI devices can be freely routed.

Options

  • Theme: Specifies the appearance. “System” follows the device settings.
  • Use Group Colors for Pads: Change the colors of groups within the pads.
  • Display Sub Labels for Pads: Display numbers or groups in the corners of the pads.
  • Key Delay (Convert): Delays Note On. Can suppress unintended sounds if playing is slow. Effective only in Convert.
  • Velocity Convert: When outputting Vel1 in Convert, users can choose to always convert or only when not legato.
  • MIDI Rx Channel (Convert): MIDI receive channel. Effective only in Convert/Trigger.
  • MIDI Tx Channel (Convert): MIDI transmit channel. Effective only in Convert/Trigger.
  • MIDI Tx Channel (Pad): MIDI transmit channel. Effective only in Pad.
  • Filter Other Channel (Convert): Suppresses transmission other than the receive channel. Effective only in Convert/Trigger.
  • Duplicated Notes (Convert): Specifies the processing of duplicate notes. Some synthesizers do not turn off duplicate Note Ons with Note Off, causing sound to continue. This option prevents that phenomenon. Note that specifying “Suppress Dup Note” may cause the sound not to stop.
  • MIDI Tx Speed (Convert/Pad): Limits MIDI transmission speed. Effective only in Convert/Trigger/Pad. The speed limit for Convert/Trigger and Pad are independent.
  • Envelope/Filter Interval: Specifies the maximum processing interval for the envelope and filter.
  • Run in the Background: The app continues to run in the background.
  • Auto Off Timer: Stops background running after this time has elapsed since the last MIDI signal was received. The timer is extended upon receiving any MIDI signal.
  • Prevent Sleep: Prevents the device from sleeping.

Edit Signals

Users can edit MIDI signals and commands. You can enter either hexadecimal strings or commands.

  • Press “Check” at the top right to test the current content.
  • Press the second icon from the right at the top right to load signals from a file. Supports .txt and .syx formats.
  • Press “Insert” to easily insert strings.

Insert

Users can insert Hex (hexadecimal), Note On/Off, Load Command, and Pad Command. Some items are not displayed depending on the editing state. The Note On velocity to be inserted is 100.