Switch doesn't send 0

Bonjour, j'ai essayé durement, mais je n'arrive pas à utiliser le switch pour qu'il les valeurs se réinitialises lorsque l'on change d'interupteur.
J'ai essayé ça mais la valeur reste toujours à 127 et ne repasse jamais par 0.

Hi,

So what do you want to do ?
Cheers ou cordialement :wink:

Salut, je suis effectivement français mais j'étais un peu fartigué en postant ce message.
Je cherche à ce que chacun des boutons d'un switch en grille, envois des notes on/off différentes . J'ai configuré comme sur l'image ci dessus mais le problème est que les valeurs passent bien à 127 mais ne reviennent pas à 0.

salut,

Je ne crois pas que tu puisses envoyer un tableau de valeurs avec ton switch. Je te propose d'utiliser des boutons pour faire ce que tu souhaites.

Ok je te propose le fichier suivant :
notesOnOff.json (6.1 KB)

Boutons configurés en mode push : tu appuies ça envoie 127 en tant que velocity tu relâches ça envoie 0 donc plus de son. Si tu veux que la note tienne une fois le bouton appuyé, tu passes le bouton en mode toggle et rappuie pour arrête la diffusion, c'est pas commun comme utilisation :-).

https://openstagecontrol.ammd.net/docs/midi/midi-messages/
Regarde la doc à envoyer un message midi note

Par curiosité je t'ai mis un exemple de switch qui envoie des messages control change.

Bon courage

Il est possible d'envoyer plusieurs valeurs avec un switch comme le fait @Ezrabox, en revanche il n'y a pas de message envoyé pour indiquer qu'un bouton du switch est éteint lorsque qu'on en sélectionne un autre, c'est le fonctionnement normal d'un switch. Avec l'aide de la propriété switch ça pourrait marcher comme demandé:

if (locals.previous) {
  // on envoie la dernière valeur enregistrée en replaçant le dernier argument par 0 
 var v = locals.previous
 send('/address', 1, v[0], 0)
}
// on enregsitre la valeur
locals.previous = value
1 Like