Zebra 2.3.1 on Receptor unable to keep learned MIDI assignem

Official support for: u-he.com
RELATED
PRODUCTS

Post

...pfffh...

...quite a shock: i have 6 instances of Zebra2 - latest version - running on a Receptor, and after assignement of MIDI-commands to different controls (i used the X-Y-controls) they work fine, until one shuts down the Receptor and launches it again...

...everything is gone...every little assignement!

...the file 'com.u-he.Zebra2.midimap' is empty and stays empty during and after assignement...

...is this a bug?

...btw., to initialize i had to enter the registration data for every single instance of Zebra2 - but this information survived the restart...

...i'd be grateful for either a confirmation that the MIDI-assignement-loss is not as it should be, of for hints, how i can solve the problem...

..also: how does the content of the 'com.u-he.Zebra2.midimap'-file look - what is the structure/format?

TIA.

Post

Weird :-o

How about doing the assignments on a PC/Mac and manually copying the file over to Receptor?

Once you have a file, it's very easy to see... I'll happily create one for you with any assignment for XYs you'd need.

Hmmm... difficult to understand as to why the reg codes are saved when the midimap isn't... anybody else having this problem?

;) Urs

Post

Urs wrote:How about doing the assignments on a PC/Mac and manually copying the file over to Receptor?
...did this from a Mac and no change...

Post

Here's an example from the map file:

Code: Select all

16=PCore:X_1
17=PCore:Y_1
2=VCC:Trsp
The number is the CC number for all midi channels (Zebra doesn't filter on channels yet). The names on the right hand side are the internal Z2 destination name. There's no formal list, the only way I know to generate these is to set the controller and view the file.

Last thing I learned is Zebra doesn't like the same CC # assigned twice in the file. If you're going to edit by hand be sure to keep this in mind. Hope that helps...

Post

Urs wrote:Once you have a file, it's very easy to see... I'll happily create one for you with any assignment for XYs you'd need.
...thank you for the late night support - unfortunately i am not able to decode the entries of the file:
com.u-he.Zebra2.midimap.txt wrote:0=PCore:X_1 //Core:X1
1=PCore:X_2 //Core:X2
2=PCore:X_3 //Core:X3
3=PCore:X_4 //Core:X4
16=PCore:Y_1 //Core:Y1
17=PCore:Y_2 //Core:Y2
18=PCore:Y_3 //Core:Y3
19=PCore:Y_4 //Core:Y4
...at the moment i am using a Doepfer-Drehbank in its default config (dont know what is sent i mean :wink: ) - but will move to a Lemur as soon as i have the interface on it ready (lots of X-Y-controls)...

Post

bmrzycki wrote:Here's an example from the map file:
...ah, great...thank you!

...i have restarted the Receptor with the above mentioned file-contents...now it works (except for the first controls x-axis) - but only in the first instance of Zebra2...

...it does not work in any of the others...as i route the information via Live to the different channels the different Zebra-instances are listening to, they should get the information...(well, they play what i tell them to play on the same way)...

..but i am already a little relieved...there is hope :)

Post

o8o8 wrote:...i have restarted the Receptor with the above mentioned file-contents...now it works (except for the first controls x-axis) - but only in the first instance of Zebra2...
...shot too quick - had a routing error in Live, now i can change the values of the X-Y-control in all the instances of Zebra2...but only on all of them at the same time! :? - hmmm...what do i have the other 56 knobs for now...

...may i put in a feature-request for the support of different MIDI-assignments to different instances of Zebra2 wihtin one environment (DAW/Receptor)? 8)
Last edited by o8o8 on Fri Feb 20, 2009 10:22 pm, edited 1 time in total.

Post

com.u-he.Zebra2.midimap.txt wrote:0=PCore:X_1 //Core:X1
I forgot to mention, the file has the option of C++ styled comments, that's what the stuff to the right of the assignment is. If you don't know what that means it's basically just optional text to give you context. you could use it for your own handy notes:
com.u-he.Zebra2.midimap.txt wrote:0=PCore:X_1 //Lemur XY #1, X-Axis

Post

bmrzycki wrote:I forgot to mention, the file has the option of C++ styled comments
...great, thank you!...

...actually, this is something i would have known - coding for almost twenty years now :D - but i am grateful for the input anyway - and next time also!

Post

o8o8 wrote:...shot too quick - had a routing error in Live, now i can change the values of the X-Y-control in all the instances of Zebra2...but only on all of them at the same time! :? - hmmm...what do i have the other 56 knobs for now...
You can get around this by saving your midi assignments to the Live set and not to Zebra itself. Instead of right clicking on the knob and choosing midi assign, zero out the files (delete them and open Z2 again) and then hit the little (triangle) circle at the top to show all of Z2's parameters. Go back to the interface, move the widget you want to control and watch the parameters at the bottom. You'll eventually find the one that's moving. Then just do a midi assign to that particular live slider.

If that doesn't make sense I'll try to post a quick howto either later today or tomorrow with pictures. :)

Post

...another look at the problem also:

somehow it seems to be possible already to address the different instances within the Receptor environment - only the information does not get saved...if it would - that is, if every instance of the plugin would save their own preferences, it wouldnt matter on what channel the information is sent, as every assignment would to unique to one instance...

...let me explain: what i did first was to open Zebra2-A, assign control C1,C2,C3,C4 (where control is a knob on my interface) to objects in Zebra2-A, then open Zebra2-B and assign control C11,C12,C13,C14 to objects in Zebra2-B...

(...those assignments worked, because i sent the CCs from my interface to Ableton Live, and sent the information out on different channels to the instances on the Receptor, where in turn i can tell the system to pass data received on channel X to instance A on channel Y...

...actually, while i think about it, it would work also without the above...)

...now, as every instance of Zebra2 is assigned different set of controls, there is no problem of overlapping...

...the problem is, that every instance should now save their own assignements...not one for all instances (ideally, but not yet actually :wink: )...

...so, might it be possible to integrate a feature that different instances of Zebra2 load different sets of presets/preferences...automatically...please :?:

TIA.

Post

For MIDI mapping Zebra2 in Live, you can just map the X-Y controls to the 8 rack macros of an instrument rack, and save this as a preset instrument rack. This also is nice if you're using Ableton's instant mapping scripting which lets you control the 8 macro knobs of the selected (or focused) rack.

This can result in a little extra work to label the rack macros (command-R on mac, ctrl-R on PC I think, or right-click->rename), but I really like the workflow - Zebra2 UI open for patching, but not needed for performance tweaking.

It's plausible, I think, that Max4Live results in some very cool ways to integrate external software with Live in the future.

Post

bmrzycki wrote:(delete them and open Z2 again) and then hit the little (triangle) circle at the top to show all of Z2's parameters.
...jaaa-haah (sorry, german slang for: yes, but i know better :wink: ) - unfortunately i am not in Live...in Live this would work perfectly anyway...and i am not using UniWire (just in case you were referring to UniWire-integration) as it is way too slow and much too unstable...

...Zebra2 runs on an external VST-hardware device Receptor (which i bought only after i had seen it on the u-he-site for the first time mentioned and advertised as suitable environment for Zebra2), and is - in my current setup - only addressable via MIDI...
bmrzycki wrote:If that doesn't make sense I'll try to post a quick howto either later today or tomorrow with pictures. :)
...hey, that is a very nice offer, thank you! - at the moment i dont think i need further input in this direction...perhaps when i get rid of my Receptor...but i think that is something i already did before i had the hardware-extension...

Post

...a short update:

...using the freeware MIDIPipe i was able to do what i needed quickly:

- assign the controls to Zebra2 by editing the midimap-file (CC0: '0=PCore:X_1 //Core:X1' etc.)
- filter data incomming from the MIDI-interface by MIDIPipe
- have MIDIPipe change commands depending on their number, for example incoming CC48 on channel one gets converted to CC16 on channel two
- have Live receive data from virtual port on different channels and send to Zebra-on-Receptor
- all instances on Receptor may now have the same CCs assigned to their controls but receive only theirs as the Receptor takes care about the channel assignment

...to bed now, and tommorrow we'll see if that still works :wink:

Thank you!

Post

Ahhhh... interesting find...

Let us know how it works today!

Post Reply

Return to “u-he”