Midi 2 Encoders

I just got an Alesis V25 and wonder if it is possible to use the 4 encoders as Zynthian rotary encoders.

@jofemodo, the midi mapping doesn’t cover midi to zynthian-ui rotary action mapping yet, right?

Not yet, sorry. Anyway … how do you intend to do the “switch actions”?

Regards,

The V25 knobs don’t rotate endless. So I thought that your new relative midi messages could help.
If the rotary is centered, it doesn’t send a signal (master midi channel), when I turn it to the left the zynthian encoder is turning left, even if I stop the turning of the V25 knob. I have to center it again to stop the zynthian-ui rotary action.

It seems to be a different “relative protocol” that the used by Arturia & others.
Could you find some information about the details?

no, it’s not a “protocol”. I just send any message between 0 and 127.
But I can imagine, that we can make the zynthian react like described.
We could make the midi mapping translate it to one of the relative protocols.
And the zynthian-ui knobs listen to that relative protocol.

Not so easy if i can’t test with an Alesis VXX :wink:

Yours doesn’t have a normal knob that sends a CC message from 0 to 127?

Yes, of course. But V25 encoders send messages when you don’t move it? Is it? Or i didn’t understand?

@mheidt that kind of interface may prove uncomfortable, like playing an original game of Pong, i.e. having to position the rotary knob in an up, down or neutral position to trigger movement. It would require Zynthian to send continuous, periodic up / down messages to itself whenever the CC was outside a deadband, e.g. 0…55 = down, 75…127 = up. Also, would you expect more rapid movement if the control was further away from centre (64)?

and the knobs don’t have a click. forget about it…

It all works as a mental image until . . . .

I suspect we’ve all been there. . . :smiley:

I tried to tell you in my first comment:

:grin:

2 Likes

but what we could do is defining 6 CC Actions for UP/DOWN, the 3 kind of clicks and BACK?
In that case I could use the pads to navigate through the menu.

From a post a long time ago . . . .

Be good for testing as well… as long as we could get some MIDI status out to tell us which page and selected item(s) the page is displaying, possibly in a test mode …

as long as it’s configurable. I want to have back and select started from f and c. :slight_smile:

Did someone say Alesis Vxx?

2 Likes

Hi @zynthianers!

I’ve mapped Master Channel note-on events to CUIA (Callable UI Actions). That allows to fully control the UI using only MIDI events:

Currently the map is hardcoded like that:

note2cuia = {
	"0": "POWER_OFF",
	"1": "REBOOT",
	"2": "RESTART_UI",
	"3": "RELOAD_MIDI_CONFIG",

	"10": "ALL_NOTES_OFF",
	"11": "ALL_SOUNDS_OFF",
	"12": "ALL_OFF",

	"51": "SELECT",
	"52": "SELECT_DOWN", 
	"53": "SELECT_UP",

	"64": "SWITCH_BACK_SHORT",
	"63": "SWITCH_BACK_BOLD",
	"62": "SWITCH_BACK_LONG",
	"65": "SWITCH_SELECT_SHORT",
	"66": "SWITCH_SELECT_BOLD",
	"67": "SWITCH_SELECT_LONG",
	"60": "SWITCH_LAYER_SHORT",
	"61": "SWITCH_LAYER_BOLD",
	"59": "SWITCH_LAYER_LONG",
	"71": "SWITCH_SNAPSHOT_SHORT",
	"72": "SWITCH_SNAPSHOT_BOLD",
	"73": "SWITCH_SNAPSHOT_LONG"
  }

Although filter rules can be used for re-mapping, it should be directly configurable for better UX.

Enjoy!

5 Likes

Could we add?

Audio start Recording
Audio Stop
MIDI Start Recording
MIDI Stop
Play Audio
Play Midi

These could then appear in the UI Actions in the Encoders …

It means that you can use the zynth as a VERY basic looper from the i/O pins. . .

and also allows collection of evidence material for tests. :smiley:

Play commands should have a parameter (the file to play). I suppose we want “stadard” MIDI messages, so it should be a “file index”. If no parameter is passed, it could play the last one.

Anyway if you want a looper, i think the SooperLooper plugin, although a little bit outdated, will perform a lot better and can be easily mapped to MIDI using the MIDI-learning stuff.

Regards,

Now how big so we make the file index …? It could be a lot of files to choose between isn’t this how MIDI ended up with Progam Select MSB LSB hell . . ?.
Perhaps just one currently selected file in context is the way forward rather than the complexities of populating a list with legitimate file indexes?

I’ll play around a bit . . . .