Aftertouch & MIDI learning

Does anyone use aftertouch with any of the Zynthian engines? If so, I’m asking for info which and how. I have an aftertouch keyboard (key preasure and channel preasure) and I do not know if this will be useful for me with Zynthian.

I tried to use the midi filter rule system but I’v found such problem: I tried to map KP to some CC, but in this function it is necessary to specify the range for KP expl: MAP CH#0:15 KP#0:126 => CC#1. Unfortunately, for the map function this does not work - it is necessary to provide individual values: MAP CH#0:15 KP#0 => CC#1 ; MAP CH#0:15 KP#1 => CC#1, MAP CH#0:15 KP#2 => CC#1; etc.
Interestingly, for the IGNORE function range of Numbers works well: IGNORE CH#0:15 KP#0:126. Regards. Adam

1 Like

Hi @ejdzi!

Mapping KP (Key Pressure) to CC is perfectly possible, but you should map every key to a different CC:

MAP KP#0:127 => CC#0:127

Or simply:


I think this is not very useful and probably you should better use CP (Channel Pressure), that you can map to a single CC:

MAP CP => CC#17

Anyway, the MIDI filter has been tested very little for this kind of events/combinations, so i will very happy of receiving your feedback.

Kind regards,

1 Like

I use aftertouch a bit, and kind of expect it. I find my self activating it for accents even when it’s not mapped to anything :grin: I’ll give this a test when I get a chance.

I have played with mapping Channel Aftertouch to CC 2. An issue I have is the limits. This is a performance enhancement tool but when a key is released it resets to the parameter CC parameter to zero which often breaks the sound. It would be good to add some maths into the mapping to allow a controller to affect a change within a certain limit, e.g. controller value 0 - 100 may map to CC value 30 - 50.
At least there is a way to map aftertouch which I expect from my master keyboard.

1 Like

Please, open a feature request with this. I think it could be interesting …

Feature request raised. I wonder if Mididings might be able to provide this functionality?

1 Like

It sounds more like you need a midi envelope generator to manage the attack and release of the aftertouch messages.

I’m not sure that is the best solution. Channel pressure is a variable value, not binary so iv wouldn’t want to use it as a trigger but as a varying control. Pressing a key harder should apply more effect and less pressure should reduce effect.

1 Like

Hi, I think this fits in and hope it’s not too old a thread but I tried mapping Channel Pressure within the advanced MIDI-Settings of the webgui:


MAP CP => CC#15

What happens is: when I use MIDI-Learn on Cutoff of, say ZynAddSubFX, Zynthian will recognise my aftertouch press and translate it to CC#15. So the little “15” is shown below the GUI-Knob.

But after learning is finished, there is no reaction to my Channel Pressure anymore. So it looks like it should work, but prevents the CC to get translated “in action”.


Hi @copes! That looks like a bug. Report it in the issue tracker.

I just tested and it worked like a charm for me …

And i used the same MIDI filter rule than you:

MAP CP => CC#15


1 Like


1 Like

I try a reboot and see what happens…


For those of you wanting to see an actual video of the behaviour, go to the issue tracker: