Connecting the Electra One MK2 to Tanzmaus(MIDI1) and Op-Z(MIDI2)

Dear electra one mk2 owners(and ofc mk1),

I am quite new to midi mapping and I have quite some difficulties trying to map these two devices.

Basically I want to create a layout where I can send different program changes mapped under the same button aswell as for the Tanzmaus.(for the tanzmaus this is pattern + one of the steps) and the Op-Z(this is P + number + trackchannel).

I want to have a trackmute function screen for the Tanzmaus
A trackmute function screen for the Op-Z(accessed via the mixer button on top and then selecting each track respectively for on/off)

A tape machine push section for the Op-Z(track 12)
A push in fx section for the Op-Z(track 14)
visual encoders & knobs for the Op-Z visuals(track16)
light encoders & knobs for the Op-Z lightning track(track15)

For the tanzmaus the manual doesn;t make any sense as how to program this, could anybody shine some light on this?

page 35 is the midi information. I can see this in the manual:

MIDI Implementation
MIDI Controller assignment
MIDI_CC_BD_ATT 2
MIDI_CC_BD_DECAY 64
MIDI_CC_BD_PITCH 65
MIDI_CC_BD_TUNE 3
MIDI_CC_BD_NOISE 4
MIDI_CC_BD_NOISE_DEC 5
MIDI_CC_BD_DIST 6
MIDI_CC_BD_TRIGGER 66
MIDI_CC_SD_TUNE 11
MIDI_CC_SD_NOISE 13
MIDI_CC_SD_NOISE_DEC 67
MIDI_CC_SD_TRIGGER 70
MIDI_CC_SD_DECAY_TONE 71
MIDI_CC_CP_DECAY 75
MIDI_CC_CP_FILTER 18
MIDI_CC_CP_ATTACK 76
MIDI_CC_CP_TRIGGER 77
MIDI_CC_TT_TUNE 19
MIDI_CC_TT_DECAY 20
MIDI_CC_TT_TRIGGER 78
MIDI_CC_TT_ATTACK 79
MIDI_CC_TT_PITCH 82
MIDI_CC_TT_PAN 73
MIDI_CC_SAMPLE1_TUNE 84
MIDI_CC_SAMPLE1_DECAY 85
MIDI_CC_SAMPLE1_SAMPLE_SELECT1 86
MIDI_CC_SAMPLE1_SAMPLE_SELECT2 87
MIDI_CC_SAMPLE1_ATTACK 88
MIDI_CC_SAMPLE2_TUNE 89
MIDI_CC_SAMPLE2_DECAY 90
MIDI_CC_SAMPLE2_SAMPLE_SELECT1 91
MIDI_CC_SAMPLE2_SAMPLE_SELECT2 92
MIDI_CC_SAMPLE2_ATTACK 93
The MIDI channel for controller data transfer is
always the same as the channel of the corresponding instrument. It is selected with the MIDI
Learn function.
Tanzmaus responds to the following MIDI data:
MIDI_CLOCK
MIDI_START
MIDI_CONTINUE
MIDI_STOP
MIDI_NOTE_OFF
MIDI_NOTE_ON
MIDI_CONTROLLER
MIDI_PROG_CHANGE: 0…63
MIDI_SYSEX
MIDI_SONG_POSITION_POINTER

( https://media.djmania.net/manuales/pdf/Manual_MFB_Tanzmaus.pdf )

but which midi channel is this?

And with the Op-Z I can find this in the manual:

https://teenage.engineering/guides/op-z/midi

I am just totally confused and am afraid that I have to program stuff in to Lua, but my liveshow is in 15 juni, and I am so scared it is not going to work out :frowning:

I hope somebody can put me in the right direction.

PS: So far it seems that when you put the Tanzmaus in manual mode instead of step mode it will react to incoming midi but when I put the tanzmaus in manual mode all preprogrammed knobs of the decay et all of the different analog drums will go to the value they are at in realtime on the machine, which isn;'t exactly what I want.) the only thing I really would want to control of the tanzmaus is the mute section of the tracks and the program changes.

Thanks so much

Hi @boombipbass, I read your message a few times, but I’m still finding it a bit difficult to determine where to start. Could you share your preset? You can start by just making the layout. Once you have the essential structure, we can look at individual controls, such as the program changes.

Based on what you’ve mentioned (two program change messages at the same time plus each control change number being a custom calculation), I think you’ll need to use Lua. Don’t be intimidated; it’s actually easier than it looks, and it allows you to do things that wouldn’t be possible otherwise.

Cheers

1 Like

Thanks for your reply :slight_smile:
https://app.electra.one/preset/L8xmJCSSy0YnpC1iYEpR
Here is the preset file so far.

I have just made the buttons for the track mutes, the program changes need to be done yet. But for example I’d like combine a program change of the Op-Z to Prog + Kick + 1 and Tanzmaus Shift + Pattern and then Pattern + Step 3

The mutes are channel mutes accessable via the Op-Z by pressing the menu button on top. And via the tanzmaus via making sure the rec recording light is not lit and then pressing step 1 to 14.

The push in effects for the Op-Z are in noral idi settings on midi channel 15 and are received when pressing the CC notes of the keys of the Op-Z, so C-1 to C-3 so to say.

1 Like

hey there, did you manage to see it?
my main concern is that I’d like to map the first view to two midi sends.
the tanzmaus is on midi 2 out and the op-z is on midi 1 out.
the tanzmaus midi is supposed to be this midi command according to the manual:

MIDI_PROG_CHANGE: 0…63

and for the Op-Z it is

How could I map two program changes to 1 button in the Electra One App?
Do you happen to know how I could do this or could you do one example maybe in Lua and add it to the template?

I could copy the rest :))

Also the Op-Z mentions this in pre-configurable settings:

I can choose:
-enable program change: in/out
*does this mean that when I choose “ïn” it will receive program changes?

It also has a midi.json I can choose true or false:

alt_program_change:
-true: use bank 1–16 / program 1–16 to set active pattern.
-false: pattern 1–160 is activated with bank 1 / program 1–128 and bank 2 / program 1–32
*I thought true would be the best, since it has 16 banks with each 16 patterns.

But since the tanzmaus says:
MIDI_PROG_CHANGE: 0…63
How would you send a midi command to the Op-Z?
MIDI_BANK_CHANGE: 0…16 and MIDI_PROG_CHANGE: 0…16?

Would this mean you need 3 commands on 1 knob? I am really confused and the liveshow is the 14th of june :frowning:

This is one of the most important things to tackle for me.

Please take a look at Send Multiple messages preset.

It is the simplest way to send two messages using a Pad or a Fader.

I guess it does. I’d suggest to give it a try.

Bank changes are done using CC #0 and CC #32.

so, say bank 3, program 10 could be done as:

midi.sendControlChange(PORT_1, 1, 0, 3)
midi.sendProgramChange(PORT_1, 1, 10)

A few remarks, the bank and program numbers can be shifted by 1. It means that value 0 might represent bank 1.

Also the above Lua code assumes that CC #0 is used for the bank change. If it does not work, you may want to try to use CC #32. More info on this: Bank select.