This forum is read-only. Please post new topics in our Q&A forum.

Novation SL SysEx to SysEx (Roland) ?

General discussion about MIDI Translator

Moderators: florian, DvlsAdvct

Post Reply
Wasp
New User
Posts: 4
Joined: Sat Dec 02, 2006 2:29 am

Novation SL SysEx to SysEx (Roland) ?

Post by Wasp » Sat Dec 02, 2006 2:45 am

hey i just got my self a novation sl and i got realy happy that i found out it got Roland Checksum soo i finaly can control my roland V-synth XT but length of the string is not long enouth there is missing one Hex too make it able too control well that part was fixed fast i just made a code and then let it transfer the variable code as oo and the checksum as pp and that part worked super but now i got the problem where some of the parameters got the variable split into 2 soo it goes from 00 00 to 07 0F , soo it counts from 00 to 0F on first then it reset it and set next variable too 01 all the way too 06 how can i convert a 00-7F to 00 00 - 06 0F

i hope this is possiable soo i can finaly unlock true tweaking power of my V-synth XT

Peace Wasp

User avatar
florian
Bome Software: Founder
Posts: 2435
Joined: Thu Apr 28, 2005 10:09 pm
Location: Munich, Germany
Contact:

Post by florian » Sat Dec 02, 2006 3:31 pm

Hi, are you sure that it counts like this:

be the 2 MIDI numbers pp and qq, then you say it goes:

pp qq
00 00
.
.
0F 00
00 01
.
.
0F 01
00 02
.
.

etc.? Then this looks to me very much as if the second variable is only the high nibble, and the first value is the low nibble of a number from 00...7F.

Use this Translator (you need Midi Translator Pro for Rules). I made up the incoming and outgoing messages for illustration:

Code: Select all

Translator: Convert Controller message to double sysex
INCOMING: MIDI B0 07 oo
RULES:
  pp = oo & 0x0F
  qq = oo & 0xF0
  qq = qq / 16
OUTGOING: MIDI F0 01 02 03 pp qq F7
The & sign is a bitwise AND operation. How does that work? Remember, for testing you can show the log window, which will tell you exactly the result of rules, etc.

Regards,
Florian

Wasp
New User
Posts: 4
Joined: Sat Dec 02, 2006 2:29 am

Post by Wasp » Sat Dec 02, 2006 4:59 pm

shit i think i wrote it abit wrong i want a normal sysex that has one val that goes from 00 to 7F transformed it a 2 Hex that count like from 00 00 - 07 0F and it counts like this
pp qq
00 00
00 01
00 02
00 03
-----
00 0F
01 00
01 01
01 02
------
01 0F
02 00

all the way too 06 0F

i was abit tired when i wrote the last post hehe

Wasp
New User
Posts: 4
Joined: Sat Dec 02, 2006 2:29 am

Post by Wasp » Sat Dec 02, 2006 5:09 pm

yo i tried what u said but i just let pp qq shift place and it good damn works YOUR my Hero as soon the trial of the mt pro runs out i will buy it (abit poor this month) final i can mad tweak my Roland V-synth XT with my Novation SL Zero MUHAAHAHAHA

Wasp
New User
Posts: 4
Joined: Sat Dec 02, 2006 2:29 am

Post by Wasp » Sat Dec 02, 2006 6:05 pm

now for my next question how do it make it go the other way again where i transform a 07 0F into 7F soo i can send the changes on v-synth back too novation sl again

admin
Site Admin
Posts: 25
Joined: Thu Apr 28, 2005 9:46 pm

Post by admin » Mon Dec 04, 2006 10:22 am

Hi,

I'm very happy to hear that it works! Now, is it really running from 00 00 to 07 0F or from 00 00 to 06 0F ? If the latter, then we'd need to change the Rules to use "real" scaling. Anyway, the way back is straight forward, just the inversion:

Code: Select all

Translator: Convert double byte sysex to Controller 
INCOMING: MIDI F0 01 02 03 pp qq F7
RULES:
  pp = pp * 16
  oo = pp | qq
OUTGOING: MIDI B0 07 oo
The | operation is a bit-wise OR operation, it combines the 2 values to one.

Let me know how it works!
Florian

Post Reply