Se connecter
Se connecter

ou
Créer un compte

ou
FR
EN

fabriquer velocity converter midi

  • 43 réponses
  • 3 participants
  • 3 959 vues
  • 3 followers
Sujet de la discussion fabriquer velocity converter midi
Bonjour,

peut-on facilement fabriquer un circuit qui permettrait de régler la courbe de vélocité midi d'un clavier maitre?

Merci
2
Bonjour,
Si le clavier maître sort par une prise MIDI, cela devrait pouvoir se faire assez facilement avec un Arduino (j'ai déjà réalisé de cette façon un bricolage permettant de modifier la courbe de variation d'une pédale de volume).

Passer pour un idiot aux yeux d'un imbécile est une volupté de fin gourmet. (G. Courteline)

3
Bonjour,
ma réponse va dans le sens de celle de Danguit : oui, c'est possible.
Deux façons de voir les choses :
- conversion via des tables de correspondance (courbes fixes). C'est ce qui est fait dans les claviers qui permettent de choisir une courbe parmi plusieurs;
- conversion avec des potentiomètres qui permettent de définir la pente de plusieurs segments de courbes (par exemple avec 10 potentiomètres, on peut définir 10 points de flexion pour 11 segments). Même principe que pour les potentiomètres log qui sont constitués de plusieurs segments linéaires.

Formateur en techniques sonores ; électronicien ; auteur @ sonelec-musique.com

4
Oh merci beaucoup, même si çà reste un peu mystérieux pour moi.
Concrètement comment fabriquer ce montage?
Citation :
Si le clavier maître sort par une prise MIDI

oui
et on peut faire une courbe en S?
5
Citation :
et on peut faire une courbe en S?
En programmation on peut faire ce que l'on veut (ou presque) !
Il suffit d'avoir la forme désirée et l'on peut trouver l'équation et ses paramètres, et même d'avoir plusieurs formes à choisir par commutateur ou potentiomètre (moins cher).

Passer pour un idiot aux yeux d'un imbécile est une volupté de fin gourmet. (G. Courteline)

6
C'est super mais je ne vois pas comment on peut influencer des signaux digitaux directement avec des potentiomètres. C'est pas numérique?
Comment trouver un schéma à réaliser?
7
Citation :
Comment trouver un schéma à réaliser?
Dans ce cas quasiment tout se passe en logiciel et pour la partie matériel c'est très simple (cf. exemples de montages de base sur le site Arduino : http://arduino.cc/en/Tutorial/Midi , http://arduino.cc/en/Tutorial/ReadAnalogVoltage).
Ce µ-contrôleur possède des entrées CAN sur 10 bits (0-#5V => 0-1023). Il suffit de tester la valeur obtenue pour diriger de façon logicielle vers un réglage.
On pourrait avoir un algo du type (à vérifier) :
Acquisition :
Recevoir un octet sur le port d'entrée MIDI
Le renvoyer immédiatement sur le port de sortie MIDI (ou via USB avec montage adapté).
S'il est égal à NOTE ON
---Recevoir l'octet suivant
---Transformer sa valeur en fonction du réglage de courbe (position du potentiomètre)
---Le renvoyer sur le port de sortie MIDI
Fin si
Aller à Acquisition

Passer pour un idiot aux yeux d'un imbécile est une volupté de fin gourmet. (G. Courteline)

[ Dernière édition du message le 20/05/2013 à 13:48:03 ]

8
Prido,
je viens de terminer un circuit qui fait exactement ce que tu cherches, avec choix entre 7 courbes différentes.
Il me manque juste les valeurs de courbes à implémenter (127 valeurs pour chaque courbes). Tu peux t'inspirer du soft dispo sur la page suivante :
http://www.trombettworks.com/velocity.php
Je te laisse faire joujou pour trouver tes valeurs préférées et je clos le projet.

Formateur en techniques sonores ; électronicien ; auteur @ sonelec-musique.com

9
Pour la courbe en S, a priori c'est une sigmoïde : y=1/(1+exp(-lambda*x)).
En jouant sur la valeur de lambda, on peut avoir une droite jusqu'à des S très raides.

Passer pour un idiot aux yeux d'un imbécile est une volupté de fin gourmet. (G. Courteline)

10
Merci Danguit pour l'info.
Je n'ai jamais été très fort en math / formules ;-)

Formateur en techniques sonores ; électronicien ; auteur @ sonelec-musique.com

11
Merci beaucoup à vous deux.
C'est très intéressant mais çà dépasse un peu mes compétences (aussi en Anglais)
Ce domaine du numérique m'est complètement étranger. Si je comprends bien on achète l'Arduino et on le programme comme on veut? avec un soft fourni?
Est ce que le petit soft Trombettworks va fonctionner sous windowsXP? il me parait bien, j'aimerais mieux visualiser avec une courbe. Ou alors j'attends que Chimimic décrive sa réalisation sur Sonelec.

Le problème de mon clavier est particulier, sa dynamique est insuffisante (la plage n'est que de 50 points sur 128 disponibles) Aujourd'hui il est démonté et je vais prendre le circuit imprimé en photo dans l'espoir de trouver une modification possible?
12
Bonjour Prido,

Ce que j'ai déjà fait correspond à toute la mécanique de contrôle des données MIDI reçues et à transmettre. Je fais le gros du boulot mais tu dois mettre un peu la main à la patte et tu verras que ta "tâche" reste fort simple et pas tellement technique.

Citation :
C'est très intéressant mais çà dépasse un peu mes compétences (aussi en Anglais). Ce domaine du numérique m'est complètement étranger.

Soit rassuré, rien de technique ne t'est demandé ;-)

Citation :
Si je comprends bien on achète l'Arduino et on le programme comme on veut?

Le circuit que j'ai réalisé (schéma interface MIDI 014) est à base de PIC car je ne maîtrise que ce type de composant, mais n'importe quel microcontrôleur assez "avancé" peut faire l'affaire. Comme c'est toi qui cherche, c'est toi qui devra choisir. Je propose une solution mais il en existe plein d'autres déjà faite. Si je l'ai fait, c'est parce que ce n'est pas très compliqué et que ça ne m'a pas demandé plus d'une journée.

Citation :
Est ce que le petit soft Trombettworks va fonctionner sous windowsXP ?

Pas testé sous XP (seulement sous Seven) mais à mon avis oui.

Citation :
il me parait bien, j'aimerais mieux visualiser avec une courbe.

Bah s'il te paraît bien, c'est que tu y as jeté un oeil. Il te permet justement de dessiner la courbe de vélocité que tu veux.

Citation :
Ou alors j'attends que Chimimic décrive sa réalisation sur Sonelec.

Je ne le ferai que lorsque j'aurais de quoi remplir mes tableaux de correspondance MIDI In > MIDI Out. Et c'est là que tu entres en scène. Tu dessines la courbe que tu veux et tu me fournis les valeurs correspondantes (qui sont mises à jour dans le soft à chaque modification de la courbe). Pour ma part, je choisirai 3 ou 4 courbes que je juges intéressantes d'avoir.

Citation :
Le problème de mon clavier est particulier, sa dynamique est insuffisante (la plage n'est que de 50 points sur 128 disponibles)

Certains clavier ont du mal à sortir une vélocité supérieure à 110, à moins de taper comme un malade. C'est là que la modification de la courbe est intéressante. Mais pour ne pas pouvoir dépasser la vélocité de 50, il doit y avoir un pépin, en effet.

Citation :
Aujourd'hui il est démonté et je vais prendre le circuit imprimé en photo dans l'espoir de trouver une modification possible?

Ce ne sera peut-être pas plus simple de chercher une modif à faire sur place, mais tu as raison d'essayer. Après tout, un réglage est peut-être dispo quelque part. Mais sans schéma...

Formateur en techniques sonores ; électronicien ; auteur @ sonelec-musique.com

13
Après réflexion et pour ton cas unique, sans doute qu'une courbe de type "saturée à 64" conviendrait.

In  -> Out
000 -> 000
001 -> 002
002 -> 004
003 -> 008
...
063 -> 126
064 -> 127
065 -> 127
...
126 -> 127
127 -> 127

Formateur en techniques sonores ; électronicien ; auteur @ sonelec-musique.com

14
Citation :
Je ne le ferai que lorsque j'aurais de quoi remplir mes tableaux de correspondance MIDI In > MIDI Out. Et c'est là que tu entres en scène. Tu dessines la courbe que tu veux et tu me fournis les valeurs correspondantes

Cher Chimimic, mon clavier déconne, je vais ouvrir un autre sujet concernant sa réparation interne (tu comprendras pourquoi). Je pense que pourta réalisation d'interface midi 014, il vaudrait mieux qu'elle soit adaptée à des claviers qui au départ sont normaux, afin de correspondre au plus grand nombre d'utilisateurs.
La courbe que tu proposes n'est pas exactement celle que je définirais moi-même, mais là ou le problème se corse, c'est que je peux obtenir deux courbes différentes avec mon clavier qui à l'origine ne devrait en proposer qu'une seule fixe, car son fonctionnement est erratique.

Ton montage est extrêmement intéressant, j'y reviendrai quand j'aurai stabilisé mon clavier.
15
OK, aucun soucis !
Bon courage pour la suite.

Formateur en techniques sonores ; électronicien ; auteur @ sonelec-musique.com

16
Un bon clavier polyvalent doit pouvoir moduler en main posée jeu normal articulé de 20 à 115.
Pour ton montage que pourrais tu proposer?
- Par exemple une courbe qui ne dépasserait pas les 100 points pour contrôler les vieux DX7 (sinon ils saturent).
- Pour un jeu pianistique moins inégal, tu peux t'inspirer du Fatar SL990pro qui fournit une modulation d'environ 60 points mais dans des plages de réponse différentes plus ou moins hautes.
- Une courbe en S pour les gros tapeurs.
- une autre en S légèrement inversé.
17
Citation :
Pour ton montage que pourrais tu proposer?

Bah n'importe quoi puisqu'on fait sur mesure. Tout est possible !

Formateur en techniques sonores ; électronicien ; auteur @ sonelec-musique.com

18
Alors il faut que l'utilisateur puisse le programmer lui-même par rapport a son matériel et son idée.
C'est compliqué? Il faut un équipement spécial?
19
Dans la version "de base", je ne comptais que sur des courbes pré-établies. Mais même si cela complique un peu les choses, on peut aussi prévoir une courbe "utilisateur", programmable via notes MIDI ou SysEx.

Formateur en techniques sonores ; électronicien ; auteur @ sonelec-musique.com

20
Bonjour Chimimic,
je ne comprends pas, ton PIC doit être programmé par tes soins, mais alors comment le montage est il reproductible par l'amateur? Si je ne peux pas programmer le PIC moi-même, tu le fournis?
21
22
Je ne fais pas de pub pour Arduino,mais le principal intérêt que j'ai trouvé à cette solution (je lorgnais sur les PICs sans arriver à me décider) est qu'avec un module et l'environnement de développement (gratuit) on peut réaliser son application, la tester, et surtout modifier à loisir.

Passer pour un idiot aux yeux d'un imbécile est une volupté de fin gourmet. (G. Courteline)

23
Citation :
Je ne fais pas de pub pour Arduino

Tu peux, c'est un super produit ! ;-)

Formateur en techniques sonores ; électronicien ; auteur @ sonelec-musique.com

24
Merci à vous deux,;)
j'ai du mal à répondre. J'ai acheté ce clavier pour rejouer du piano (que j'avais arrêté pour faire de l'informatique) et au lieu de cela, je dois m'embarquer dans un investissement considérable de temps d'apprentissage pour m'adapter à la programmation de PIC ou d'Arduino.
Chimimic > ta proposition est très intéressante mais cette programmation ne serait adaptée qu'à mon clavier défaillant et donc utile qu'à moi-même. Et par delà, je suis scandalisé que son fabricant professionnel ne soit même pas capable de fournir un produit correct qui répond normalement de 0 à 127 puisque les SL990 pro et XP ne peuvent moduler que sur 60 points maxi. C'est une abbération sidérante.

Danguit> Je suis séduit par la grande souplesse de l'Arduino mais n'est ce pas trop compliqué à mettre en oeuvre? J'ai peur de ne pas arriver à apprendre tout seul. Et il y a plusieurs modèles d'Arduino, lequel prendre? Combien çà me coûtera environ pour me faire des courbes midi?
25
Citation :
Je suis séduit par la grande souplesse de l'Arduino mais n'est ce pas trop compliqué à mettre en oeuvre? J'ai peur de ne pas arriver à apprendre tout seul. Et il y a plusieurs modèles d'Arduino, lequel prendre? Combien çà me coûtera environ pour me faire des courbes midi?
Il y a tellement d'exemples sur le site Arduino et Internet que l'on peut apprendre facilement et réutiliser des bouts de code à la façon Meccano.
Pour le modèle, j'ai utilisé le UNO3 (moins de 20€), et le kit standalone (9€ chez Snootlab), sachant que ce dernier requiert un adaptateur USB série pour charger le programme et tester (12€, mais réutilisable) et un régulateur 5V.
En ce qui concerne le midi, il faut quelques composants (cf. schémas de Chimimic), mais on peut ruser. Par exemple j'avais un adaptateur Gravis pour manettes de jeux et ports midi. Il se branche avec 4 fils sur l'arduino et c'est terminé. UIne autre solution, acheter un adaptateur USB-midi chinois (j'en ai pris un à 7.62€ via Amazon). Il permet en plus la liaison en USB sur le PC. Etc...
Le coût dépend de ce que l'on veut et que l'on accepte de faire (investissement, plaque à essai, circuit imprimé, câblage, boîtier, etc.), donc difficile de donner un ordre de grandeur. Cela pourrait aller d'une dizaine à une cinquantaine d'€.

Passer pour un idiot aux yeux d'un imbécile est une volupté de fin gourmet. (G. Courteline)

[ Dernière édition du message le 28/05/2013 à 13:39:51 ]