Modules oZoe.fr
Archive
Modifications Modules
Synthétiseurs
Outillage
964537 visiteurs
14 visiteurs en ligne
Il s'agit de pouvoir raccorder un clavier matriciel nu à un convertisseur permettant de réaliser un clavier midi ayant les caractéristiques principales suivantes:
Schéma | |
La nomenclature | |
Le PCB | |
L'implantation | |
La face avant | |
Dernière mise à jour documentaire : 13 mars 2019 |
Le clavier est l'élément essentiel, il est difficile de s'en procurer neuf. Je mets ici quelques liens :
Exemple de schéma de clavier matriciel |
Un clavier matriciel avec vélocité possède 2 contacts par touche.
Les colonnes ‘Make’ et ‘Break’ regroupent des blocs de 8 touches maxi. Un clavier 5 octaves de 61 touches sera raccordé par 3 fois huit points : TO à T7, MK0 à MK7 et BR0 à BR7. Il y a toujours 8 lignes ‘RAW’. Ces lignes regroupent le point commun de la première, puis de la seconde, etc. jusqu'à la huitième touche de chaque bloc de colonne.
Le micro-contrôleur et son logiciel permettent de déterminer en faisant un scanner de toutes les colonnes, ligne par ligne, de voir si le courant passe (=contact)
Chacun des 7 potentiomètres est directement connecté à une entrée ADC 12 bits du teensy.
Deux points sont à prendre en considération : Les zéros et maximum mécanique de chaque potentiomètre ne correspondent pas à leurs butées mécaniques nottament pour des molettes pitch bend et modulation. De plus le point central du pitch bend n'est pas forcement au centre électrique du potentiomètre.
Pour contrer ces points, j'ai opté pour un calibrage par une solution logicielle. Lors de la première mise sous tension, puis si nécessaire, une procédure (voir plus bas) est défini pour scruter le minimum et le maximum de chaque potentiomètre. Ces valeurs sont stockées en EEprom, puis lues à chaque mise sous tension. Puis lors de la mise sous tension du clavier, une analyse et faite de la position centrale du pitch bend. Cette mesure servira pour toute la session de jeu.
La gestion des 6 leds, des 4 boutons et de la pédale Hold sont confiés à un 23017 sur le bus I2C. 4 I/O Sont réservées pour l'extension.
La sortie MIDI-USB est simplement réalisée par le raccordement du connecteur USB du teensy sur la façade du clavier midi.
Les sorties MIDI sur fiche DIN 5 broches sont raccordées à une broche 'serial' du micro-contrôleur puis démultipliées. Toutes les sorties ont les mêmes fonctions.
Le micro-contrôleur retenu est un teensy.
Les outils et procédures de chargement nécessaires sont disponibles sur le site constructeur : https://www.pjrc.com/teensy/. Le loader pour le chargement du fichier est disponible ici : https://www.pjrc.com/teensy/loader.html
Il sera nécessaire de charger le logiciel 'midi keybord' disponible sur ce site.
Note : Une fois cette opération réalisée, vous pourrez toujours programmer le teensy par le câble USB en façade, lorsque celui-ci sera installé dans le clavier sous tension. |
Une réserve de broches et un connecteur d'extension sont disponibles pour une future évolution de type CV. Ce sujet est non documenté pour l'instant.
Sans objet. Le clavier est directement utilisable après le chargement du logiciel.
Dès la mise sous tension, il est nécessaire de faire un calibrage des potentiomètres. Une fois ce calibrage réalisé, le clavier est pleinement fonctionnel.
A chaque mise sous tension, la led "act. midi" s'allume puis toutes les autres leds clignotent rapidement avant de s'éteindre.
2 boutons poussoir gèrent l'ensemble des transpositions par octave. Le bouton "+" augmente, le bouton "-" diminue la valeur de l'octave.
L'octave utilisé est mémorisé lors de l'arrêt du clavier.
Octave | Première note clavier | Allumage led |
---|---|---|
-2 | DO (0) | -2 |
-1 | DO (1) | -1 |
0 | DO (2) | Aucune |
+1 | DO (3) | +1 |
+2 | DO (4) | +2 |
+3 | DO (5) | +1 et +2 |
L'appui sur le bouton SPLIT active ou dé-active la fonction. La led SPLIT est illuminée lorsque la fonction est active.
Lorsque la fonction est dé-activée, le clavier est totalement utilisable sur un seul canal midi (celui correspondant au SPLIT1).
Avec le SPLIT actif, le clavier est divisé en trois parties: SPLIT1, SPLIT2 et SPLIT3. Chaque zone utilise son propre canal midi et ses propres limites. A la première mise sous tension ou après un 'reset clavier' les valeurs par défaut sont chargées.
Pour n'utiliser que 2 zones, il suffit soit de définir la limite de la deuxième zone sur la touche maxi du clavier, soit définir le canal midi de la troisième zone égal à celui de la deuxième zone.
L'accès aux fonctions se fait par un appui sur le bouton poussoir [la led fonction s'allume], puis un ou plusieurs appuis sur les touches clavier voulues. Lorsque la fonction s'est correctement exécutée, les leds fonctions et split font un flash, puis s'ettiegnent , et le clavier reprend son utilisation normale. Lorsque la fonction s'est mal déroulée, les led "-2" et "-1" clignotent alternativement avec les led "+1" et "+2", la fonction n'est pas appliquée, et le clavier reprend son utilisation normale.
Dans la liste ci-dessous, les mots entre crochets sont les noms des fonctions accessibles par des touches clavier.
La saisie d'une valeur numérique se fait en appuyant sur les [touches numériques] puis [enter]. Si le nombre est supérieur à 99, la touche [enter] sera automatique.
* Fonction RESET Fonction -> [Reset] (DO (0) )
Les valeurs par défaut sont rechargées
* Fonction CANAL Fonction -> [Numero de canal entre 1 et 16] -> [SPLIT1 ou 2 ou 3 ou LAYER 1 ou 2 ou 3 ou 4]
Change le numero de canal pour la zone split ou layer sélectionnée.
* Fonction SPLIT Fonction -> [Split1 ou 2 ou 3] -> Touche clavier
La touche clavier appuyée correspond à la touche la plus aïgue de la zone Split considérée.
* Fonction LAYER Fonction -> [Layer1 ou 2 ou 3] -> Touche clavier n1 -> touche clavier n2
La touche clavier n1 appuyée correspond à la touche la plus grave du layer considéré.
La touche clavier n2 appuyée correspond à la touche la plus aïgue du layer considéré.
A noter que les layers sont non actif par défaut. Le fait de (re)définir une zone active celle-ci.
* Fonction LAYER ON Fonction -> [ON] -> [LAYER 1 ou 2 ou 3 ou 4]
Active le layer 1 ou 2 ou 3 ou 4.
* Fonction LAYER OFF Fonction -> [OFF] -> [LAYER 1 ou 2 ou 3 ou 4]
Dé-active le layer 1 ou 2 ou 3 ou 4.
* Fonction Courbe de Vélocité : Fonction -> [Vélocité] -> [Valeur numérique entre 0 et 9]
Change la courbe de réponse de vélocité
* Fonction Courbe d'Aftertouch : Fonction -> [Aftertouch] -> [Valeur numérique entre 0 et 9]
Change la courbe de réponse d'Aftertouch
* Fonction Affectation potentiomètre : Fonction -> [P1] -> [Valeur numérique entre 0 et 127] ou [valeur prédéfinie]
Change le numéro de command control utilisé par P1
* Fonction Affectation potentiomètre : Fonction -> [P2 , P3, P4, Volume, HOLD] -> [Valeur numérique entre 0 et 127] ou [valeur prédéfinie]
identique à P1 pour les potentiomètres concernés
* Fonction MSB : Fonction -> [MSB] - [Valeur numérique entre 0 et 127]
* Fonction LSB : Fonction -> [LSB] - [Valeur numérique entre 0 et 127]
Les courbes aftertouch sont représentées ci-après. Les courbes de vélocité sont les mêmes mais inversées.
Toutes ces courbes sont réalisées à l'aide du logiciel freeware 'MidiCurve' réalisé par Remy de Sonelec. Vous pouvez les mettre à jour.
0 - Linear | 1 - Semi-linear |
2 - Soft 1 | 3 - Soft 2 |
4 - Soft 3 | 5 - Hard 1 |
6 - Hard 2 | 7 Soft / Hard |
8 - Hard / Soft | 9 - Maximum |
Cette procédure doit être réalisée avant la première utilisation. Le clavier doit être complet, fini et prêt à l'emploi.
- Appuyez sur les deux boutons Octave en même temps durant 2 secondes.
- Les LEDs "-2" et "-1" vont clignoter alternativement avec les LEDs "+1" et "+2".
- Pour chacun des 6 potentiomètres : P1, P2, P3, P4, Molette Modulation, Molette Pitch Bend:
- Tourner au minimum et y rester 1 seconde
- Tourner au maximum et y rester 1 seconde
Lorsque les rotations de potentiomètre n'ont plus d'effet sur l'allumage de la led SPLIT, c'est que la mémorisation est réalisée.
- Relâcher la molette de pitch bend.
- Appuyer sur le bouton "Fonction" ou le bouton "SPLIT" pour sortir de la calibration.
Le circuit imprimé proposé ici, permet de gérer un clavier de 5 octaves et tout les potentiomètres tel que décrit.
La difficulté sera de le réaliser avec trous métallisés. Tout est fait avec des composants 'traversants' donc facilement soudable. Aucun réglage n'est nécessaire. L'alimentation devra être comprise entre 8 volts et 15 volts. La consommation est d'environ 70 mA.
Les connecteurs BTN_J, Expand et Expand I2C ne sont pas utilisés.
Avant son utilisation, Le micro-contrôleur Teensy 3.2 est à préparer en y soudant les broches en lignes comme ci-dessous. A noter que les pins centrales en CMS sont également utilisées. LEs connecteur en ligne, femelles, seront à installer sur le circuit imprimé.
Le connecteur de raccordement de la pédale de volume est un jack stéréo avec contact de coupure. Prendre soin de correctement le câbler et de raccorder la coupure au +3.3V (voir schéma).
Si des potentiomètres ne sont pas mis en place, alors il est nécessaire de raccorder le point central à la masse.
- Vous utilisez un moniteur série, vous pouvez visualiser les messages du Midi Keyboard. Il suffit pour cela de raccorder le clavier par le port USB. Je recommande le logiciel freeware PUTTY : https://www.putty.org
- Le raccordement à votre logiciel d'édition favori se fera en sélectionnant "oZoe.fr - MIDI Keyboard" dans la liste des MIDI device proposés.
Version 1.0 : Mars 2019 : Version Initiale
Version 1.1: 18 Aout 2020 - Nouvelle version logicielle pour corriger un bug sur l'émission des notes_off après un changement d'octave via l'IHM.