E-MU E6400 Ultra
+
E-MU E6400 Ultra

E6400 Ultra, Sampleur de la marque E-MU appartenant à la série Ultra.

  • J'aime
  • Tweet
  • Partager
  • Mail

question sur les SYSEX

 
AuteursMessages

tremble

offline
tremble
394 posts au compteur
Posteur AFfamé

Score contributif : 240

1 Posté le 14/06/2020 à 14:00:30
Je suis en train de me fabriquer une interface sur LEMUR i-pad. Pas de soucis pour faire des contrôles sur les control change. Mais à un moment je cherche à atteindre des paramètres un peu plus fins et inaccessibles. D'où la volonté d'utiliser les sysex, mai j'avoue que ça me fait un peu mal au cerveau.
Bien sûr je me suis taper les forum etc... mais rien n'est très clairement expliqué pour notre machine préférée. Et même pas là : http://www.deepsonic.ch/deep/docs_manuals/e-mu_eos_remote_sysex.pdf
exemple, ici on me conseille de commencer le message par F0h,7Eh, 7Eh serait le numéro du constructeur, or icihttps://www.midi.org/specifications/item/manufacturer-id-numbers on me dit que c'est 18h... bref, ça me fout des doutes et c'est pas très rassurant pour se lancer.
Est-ce qu'on aurait un génie du code sur ce forum pour me donner un coup de main et surtout me donner au moins un exemple d'une ligne de sysex pour EMU6400 ULTRA pour m'éclaircir ?
Merci.

mk.ultra

offline
mk.ultra
38 posts au compteur
Nouvel AFfilié

Score contributif : 143Cet utilisateur possède un compte compos

2 Posté le 14/06/2020 à 15:40:18
Bonjour,
je ne suis pas un grand spécialiste des sysex mais sur l'exemple ci dessous il semble bien que "18h"
soit id pour E-MU.

Parameter Value Request:
EXAMPLE:> {F0h,18h,21h,ddh,55h,02h,01h,xxh,xxh,<Checksum>,F7h}
F0h = sysex message
18h = EMU ID
21h = E4 ID
ddh = Device ID
55h = Special Editor designator byte
02h = Command::Parameter Value Request
01h = Byte count(number of Byte pairs)
{xxh,xxh} = Parameter ID (LSB first)
<Checksum> = 1 Byte = XOR(1's compliment) of sum of {xxh,xxh}
F7h = EOX
This message contains only 1 request packet.
The response a complete Parameter Value Edit SYSEX message for each parameter.

Après je crois comprendre que "ddh" correspond à 'ID" de la machine en question.
Donc si tu as un E6400Ultra il faut attribuer le code tout en bas.
00h,05h = E4
01h,05h = E64
02h,05h = E4k
03h,05h = E64FX
04h,05h = E4XT
05h,05h = E4X
06h,05h = E6400
07h,05h = E4XT ULTRA
08h,05h = E6400 ULTRA

Ensuite les "xxh" correspondent aux paramètres ID comme par exemple les numéros de bank et preset.

pour cet exemple on ne voit pas de "yyh" qui eux sont les "Parameter data".

J'espère ne pas m'être trompé et avoir pu t'aider.

tremble

offline
tremble
394 posts au compteur
Posteur AFfamé

Score contributif : 240

3 Posté le 14/06/2020 à 17:36:48
merci pour le début de réponse mk.ultra
j'en suis à peu prêt là :
240=F0(ok)
emu id = 18h donc 24 ?
dans la doc j'ai 08h,05h = E6400 ULTRA
08h= 8 et 05h=5
dois-je mettre 240,24,8,5 ?
je veux contrôler le type de filtre : j'ai
E4_VOICE_FTYPE, id = 82 (52h,00h) min = 0; max = variable donc :
240,24,08,05,82,0,x,247 ?
247 pour le message de fin (ok)
https://scontent-cdt1-1.xx.fbcdn.net/v/t1.0-9/104254090_10158390844796192_2621261297048696445_o.jpg?_nc_cat=103&_nc_sid=825194&_nc_ohc=ZHCeooFdhV8AX92MPv_&_nc_ht=scontent-cdt1-1.xx&oh=001faa08a64ca1bf8b209df14dd9c0c9&oe=5F0A986D
on voit en bas de l'image la ligne de code pour un juno 60

[ Dernière édition du message le 14/06/2020 à 18:03:46 ]

tremble

offline
tremble
394 posts au compteur
Posteur AFfamé

Score contributif : 240

4 Posté le 14/06/2020 à 17:51:33
Avec tes info et sachant que je veux contrôler le type de filtre, ça ferait (E4_VOICE_FTYPE, id = 82 (52h,00h) min = 0; max = variable) :
247,18,(21h=)33,(08h,05h=)8,5,82,0(?),0,x(ma variable),247
?
donc ;roundcx,247 midiout(target,{240,18,33,8,5,82,0,0,round(x*(127/6)),247}) ?
(x*(127/6) étant l'expression pour sélectionner l'un des 21 filtres.
J'ai bon ?
Je me rend compte que je n'ai pas le canal qui serait 5 et j'avoue que je ne serais pas trop où le mettre ...
L'idéal ça serait de pouvoir enregistrer le message sysex directement de l'EMU, j'ai essayé avec une MPC4000 et un bcr2000 qui ont tendance à tout bouffer niveau message, mais là j'ai que dal. Et je n'arrive pas à trouver un soft efficace pour me donner ce genre d'info...

[ Dernière édition du message le 14/06/2020 à 17:57:39 ]

tremble

offline
tremble
394 posts au compteur
Posteur AFfamé

Score contributif : 240

5 Posté le 14/06/2020 à 18:01:54
Citation :
Ensuite les "xxh" correspondent aux paramètres ID comme par exemple les numéros de bank et preset.

c'est aussi ça qui m'intéresserait d'atteindre. Je le fais déjà en programme change. C'est mortel mais il n'y a que 127 programmes atteignables (frustration!). En plus, j'atteind mes patch/programmes avec un menu déroulant avec mes noms de preset, le luxe !

mk.ultra

offline
mk.ultra
38 posts au compteur
Nouvel AFfilié

Score contributif : 143Cet utilisateur possède un compte compos

6 Posté le 14/06/2020 à 20:14:27
Je t'ai aidé avec mes maigres connaissances mais je n'ai eu à utiliser les "Sysex" que pour quelques bidouilles pour d'autres machines.
Peut-être auras tu plus de chance avec les utilisateurs du "Lemur".
Les commandes Sysex de l'Ultra ne doivent pas être en temps réel donc il faut s'attendre à avoir une grosse latence mais en revanche les CC sont assez nombreux.

[ Dernière édition du message le 14/06/2020 à 20:31:58 ]

x_X_x_av

offline
x_X_x_av
1390 posts au compteur
AFicionado

Score contributif : 554

7 Posté le 14/06/2020 à 20:44:44
Le Device ID n'est pas le modèle de la machine, mais un identificateur sur le bus Midi. Ça permet d'avoir plusieurs E4 sur le même bus (in/thru/in) et de pouvoir les différencier. Il faut alors configurer chaque E4 avec un ID différent, de 0 à 126, la valeur 127 (7fh) étant un code de broadcast.
Le code du modèle sur 2 mots n'est utilisé qu'en réponse à la demande d'identification (premier message décrit dans la doc).

Le reste n'est pas correct non plus… :(
En particulier, il maque le bloc <COMMAND>, qui prend une des valeurs indiquées en page 29 et suivantes.

Par exemple pour modifier E4_VOICE_FTYPE:

<Header>
  F0h = sysex message
  18h = EMU ID
  21h = E4 ID
  xxh = Device ID
  55h = Special Editor designator byte
<Command>
  01h = Parameter Edit
<Count>
  02h = nombre de double mots qui suivent
<Packet> = <2 Byte ID>,<2 Byte Data>.
  52h = LSB / E4_VOICE_FTYPE (id = 82)
  00h = MSB      "      "
  xxh = LSB / numéro du type de filtre (??)
  yyh = MSB /    "     "         "
<Checksum>
  xxh = à calculer
<EOX>
  F7h


Il y a d'autres exemples à partir de la page 31.
Bon courage!

x_X_x_av

offline
x_X_x_av
1390 posts au compteur
AFicionado

Score contributif : 554

8 Posté le 14/06/2020 à 20:50:47
Le petit programme Midi Tools permet d'envoyer et recevoir des messages sysex écrit à la main. Pratique pour vérifier que le dialogue entre l'ordi et l'E4 fonctionne.

tremble

offline
tremble
394 posts au compteur
Posteur AFfamé

Score contributif : 240

9 Posté le 16/06/2020 à 08:39:45
merci pour toutes ces réponses :bravo:, je n'ai pas encore bien compris comment mettre tout ça dans mon interface lemur, mais ça va se faire.
Revenir en haut de la page