This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
trigger:MIDI [2017/11/06 01:26] peternlewis [Controller Change] |
trigger:MIDI [2017/11/06 01:31] peternlewis |
||
---|---|---|---|
Line 11: | Line 11: | ||
You can configure the trigger to execute the macro when the note is received from a particular device, from a particular channel or from any device or channel. | You can configure the trigger to execute the macro when the note is received from a particular device, from a particular channel or from any device or channel. | ||
- | The [[token:TriggerValue|%TriggerValue%]] token will hold `channel,note,velocity,device` for press and release (just the velocity was included prior to version 8.0). | + | The [[token:TriggerValue|%TriggerValue%]] token will hold `channel,note,velocity,device` for press and release (just the velocity was included prior to version 8.0). You can easily access the individual parts using the token array notation, eg `%TriggerValue[2]%` will be the controller (8.0.4+). |
====== Controller Change ======= | ====== Controller Change ======= | ||
Line 29: | Line 29: | ||
* changed >= — every time it changes and is greater than or equal to the specified value and was not previously. | * changed >= — every time it changes and is greater than or equal to the specified value and was not previously. | ||
* changed > — every time it changes and is greater than the specified value and was not previously. | * changed > — every time it changes and is greater than the specified value and was not previously. | ||
- | * decreases — every time it changes and is less than the previous value. | + | * decreases — every time it changes and is less than the previous value. (v8.0.4+) |
- | * increases — every time it changes and is greater than the previous value. | + | * increases — every time it changes and is greater than the previous value. (v8.0.4+) |
For the *changed* variants, the first controller change Keyboard Maestro sees is assumed to have changed if it matches the conditions. After that, only changes from the previous state are considered. | For the *changed* variants, the first controller change Keyboard Maestro sees is assumed to have changed if it matches the conditions. After that, only changes from the previous state are considered. | ||
Line 36: | Line 36: | ||
You can configure the trigger to execute the macro when the controller change is received from a particular device, from a particular channel or from any device or channel. | You can configure the trigger to execute the macro when the controller change is received from a particular device, from a particular channel or from any device or channel. | ||
- | The [[token:TriggerValue|%TriggerValue%]] token will hold `channel,controller,value,device`. | + | The [[token:TriggerValue|%TriggerValue%]] token will hold `channel,controller,value,device`. You can easily access the individual parts using the token array notation, eg `%TriggerValue[2]%` will be the controller (8.0.4+). |
====== Raw Packet ======= | ====== Raw Packet ======= | ||
Line 44: | Line 44: | ||
This should allow you to capture things like SysEx and HUI protocol packets and the like. | This should allow you to capture things like SysEx and HUI protocol packets and the like. | ||
- | The [[token:TriggerValue|%TriggerValue%]] token will the space-separated hex values representing the packet. | + | The [[token:TriggerValue|%TriggerValue%]] token will the space-separated hex values representing the packet. You can easily access the individual parts using the token array notation, eg `%TriggerValue[3] %` will be the third value (8.0.4+) — note the `[space]` in `][space]%`, the space is the separator for the array, instead of the default comma. |