0007728: MIDI Feedback is not sending Note Off with control toggle. It is only adjusting velocity.

Description

I am using a MidiPlus SmartPAD as a controller for channel volume, channel mutes, etc. I have created my own config file and have the controller setup through Control Surfaces Generic MIDI and have my bindings selected. I have both Incoming and Outgoing MIDI on. Within the configuration, I have momentary="no" on each of the pads that send midi notes to Ardour. Ardour does as expected and toggles the mute on and off.

My issue is that the feedback sent back to the controller is always a Note On even when the channel is unmuted. Ardour is changing the note velocity between 127 (on) and 0 (off), but never sending Note Off. What effect this has is the pad on my controller lights and never turns off.

It seems as though Ardour should be sending a Note Off Velocity 0 when a controller is off rather than just adjusting the velocity full on or none.

Steps To Reproduce

The following is coming from my controller as seen by MIDI Tracer in Ardour
Mute On
13:05:28.270122 NoteOn chn 1 0 127
13:05:28.398662 NoteOff chn 1 0 0

Activities

After reading my report a day later I thought it would be better to add a possible solution to this.

Essentially what's needed is the ability to configure midi feedback. If the current feedback design is intentional, it would be better to allow configuring that feedback. If a user needs specific feedback, why not add this feedback in the midi config mapping file. For example,
<Binding channel="1" note="0" uri="/route/mute VCV-1" momentary="no"/> <Feedback channel="1" note="0" OnOff="off" velocity="0" />

There may be issues with this because of the toggle. Maybe it would be better to have a separate line that states what should be sent based on specific Ardour states. Something like: