Modules oZoe.fr
Archive
Modifications Modules
Synthétiseurs
Outillage
945838 visiteurs
38 visiteurs en ligne
Le module MASTER CLOCK est un module pour synthétiseur modulaire permettant de cadencer des actions par l'envoi de pulsations à intervalles réguliers. Il joue le rôle d'un métronome.
Ce module peux être utilisé en autonome et permet également de piloter ou d'être piloté par tout appareil/logiciel utilisant le standard MIDI.
Schéma | |
La nomenclature | |
Les circuits imprimés (PCB) | |
L'implantation | |
La face avant 2U (positif) | |
La face avant 2U (négatif) | |
Dernière mise à jour documentaire : 22 décembre 2017 |
SYNCH24 | CLOCK A | CLOCKs B, C et D | |
Minimum | |||
BMP | 24 | 1 | 0.041666 |
Hertz | 0.4 | 0.01666 | 0.000694 |
Période(s) | 2.5 | 60 | 1440 |
Période(mn) | 1 | 24 | |
Maximum | |||
BMP | 7200 | 300 | 7200 |
Hertz | 120 | 5 | 120 |
Période(s) | 0.008333 | 0.2 | 0.008333 |
Période(mn) | 0.000139 | 0.00333 | 0.000139 |
- Les poussoirs Edit B, Edit C et Edit D permettent de modifier le rapport de fréquence des horloges B, C ou D par rapport à l'horloge maitre (A). Un appui pour entrer dans l'édition, et un autre appui pour en sortir une fois le réglage réalisé.
- Le bouton de fonction permet d'entrer dans le choix des fonctions (voir plus loin). Lorsque qu'on édite une fonction, ce bouton permet de sortir sans validation du choix.
- Le bouton et l'entrée SYNCHRO permettent de synchroniser, ou faire une remise à zéro, des horloges entres elles. La synchronisation consiste à caler les fronts montant des CLOCK A, B, C et D sur le premier front montant de l'horloge Synch24 qui reste toujours sur sa cadence. Depuis la version 4.2 du logiciel, un appui prolongé d'environ 2 secondes permet d'arrêter le module et le mettre en veille. Un nouvel appui relancera le module.
- L'encodeur rotatif permet, selon les informations du LCD, de régler la fréquence d'horloge, de changer les ratios, etc. (Voir plus bas pour plus de détail)
- Le poussoir intégré à l'encodeur permet d'augmenter l'incrément de réglage pour aller plus rapidement à la fréquence voulu. Dans ce cas, un rond noir est affiché en haut à droite. Ce poussoir permet également de valider les choix réalisés dans les fonctions.
- Le potentiomètre "Level" permet de limiter l'effet de l'entrée CVin.
- L'entrée CVin peut recevoir des signaux de commande symétrique (0-10 volts) ou asymétrique(+/-5 volts).
- Les 5 sorties Synch24, Clock A...D, délivrent un signal carré 0-5 volts.
- La sortie MIDI Run/Stop délivre une impulsion ou un signal continu (voir le tableau plus bas) entre 0-5 volts. La longueur de l'impulsion est de 50ms et est modifiable dans le logiciel.
- L'Entrée MIDI-IN reçoit les impulsions Midi Clock d'une horloge externe.
- La sortie MIDI-OUT envoi les impulsions des 4 horloges A à D sous formes de NOTE_ON / NOTE_OFF et envoie l'horloge interne du Midi_Clock (ou synch24) sur le bus MIDI.
Le Midi Clock interne ou externe est un signal 'Real_Time' qui permet à deux machines de fonctionner en synchronisation. L’horloge midi divise la noire en 24 impulsions.
Ce module utilise les bits
Dans le cas ou une horloge externe MIDI est raccordée au module MASTER CLOCK, la trame realTime de l'horloge interne raccordée sur le MIDI-OUT est dé-activée.
Ecran d'accueil. Affichage en pulsation par minute. Dans cet exemple :
La rotation de l'encodeur fera augmenter ou diminuer le fréquence de l'horloge A avec un pas de 1 BPM. L'appui sur un bouton Edit x, permettra de modifier le rapport de fréquence. L'appui sur le poussoir de l'encodeur multipliera par 10 l'incrément de réglage. L'appui sur Functions permettra de modifier les fonctions. (voir tableau plus bas). |
|
Ecran d'accueil en MIDI. L'appui sur un bouton Edit x, permettra de modifier le rapport de fréquence avec l'encodeur. L'appui sur Functions permettra de modifier les fonctions. (voir tableau plus bas). |
|
Ecran d'édition de l'horloge C. La rotation de l'encodeur fera augmenter ou diminuer le fréquence de l'horloge C avec un pas des ratios déterminés. Le réglage terminé, un appui sur un bouton, fait revenir à l'écran d'accueil. Les Ratios préprogrammés sont : /24, /16, /12, /9, /8, /7, /6, /5, /4, /3, /2, x1, x2, x3, x4, x6, x8, x12, x24. |
|
|
Ecrans identiques aux précédents. L'affichage est ici en Hertz. Pour les faibles fréquences, la valeur est divisée par 10. (exemple : 0.683Hz) En MIDI, il est également possible d'avoir l'affichage de la fréquence. |
En cas de détection du bit 'MIDI_STOP', les horloges seront stoppées et le statut sera affiché. |
Position | Nom | ECRAN | |
---|---|---|---|
1 | Led virtuelles |
But : Afficher l'état des sorties. Rond noir = sortie active (+5V), Rond blanc = Sortie non active (0 Volt) Entrée : Functions>encodeur. Sortie : Functions |
|
2 | Réglage PWM |
But : réglage du PWM pour les horloges A à D entre 20% et 85%. Le réglage est le même pour les horloges. Entrée : Appui sur OK pour sélectionner, puis rotation de l'encodeur pour réglage voulu. Sortie : Appui sur OK |
|
3 | Choix de l'unité d'affichage |
|
But : Choisir l'unité de l'affichage principal. Sortie :Appui sur OK pour valider ou sur Functions pour annuler. |
4 | Choix de la plage de l'entrée CVIN |
|
But : Choisir la plage de fonctionnement du CV externe. Sortie :Appui sur OK pour valider ou sur Functions pour annuler. |
5 | MIDI_IN |
But : Autoriser ou pas l'utilisation de l'entrée MIDI_IN.. Sortie : :Appui sur OK pour valider ou sur Functions pour annuler. |
|
6 | Gestion de la sortie 'MIDI_Run/Stop" |
But: Choisir le comportement de la sortie "MIDI_Run/Stop" Si vous validez une des trois option 'Pulse on Stop' ou bien de "Pulse on RUN" ou encore de " Pulse on Run&Stop", vous aurez une impulsion de 0 à +5V lors de la détection d'un signal MIDI_START ou MIDI_STOP. Si vous validez l'option "Continous", vous aurez un signal continu à 0 volt si la l'horloge midi est à l'arrêt et à 5 volts si l'horloge midi est en fonctionnement. Sortie :Appui sur OK pour valider ou sur Functions pour annuler. |
|
7 | MIDI-OUT |
But : Choisir le canal midi pour le MIDI-OUT Entrée : Appui sur OK pour sélectionner, puis rotation de l'encodeur pour choisir le numéro du canal désiré entre 1 et 16. Sortie :Appui sur OK pour valider ou sur Functions pour annuler. |
|
8 | Sauvegarde |
|
But : Sauvegarder les données utilisateur dans un mémoire allant de 1 à 5. Entrée : Appui sur OK pour sélectionner, puis rotation de l'encodeur pour choisir la mémoire voulu. Sortie :Appui sur OK pour valider ou sur Functions pour annuler. |
9 | Lecture Mémoire |
|
But :Recharger en mémoire les données utilisateur dans un mémoire allant de 1 à 5. Entrée :Appui sur OK pour sélectionner, puis rotation de l'encodeur pour choisir la mémoire voulu. Sortie :Appui sur OK pour valider ou sur Functions pour annuler. |
10 | Rappel des réglage d'origine |
But : Retrouver les réglage initiaux. Les sauvegardes utilisateurs ne sont pas affectées. Entrée : Appui sur OK pour charger les paramètres initiaux.. |
|
11 | A propos |
|
But : Afficher la version logicielle. Entrée : Appui sur OK pour afficher. Sortie : Appui sur OK pour sortir. |
Le module est articulé autour d'un micro-contrôleur ATmega328p avec bootloader Arduino.
Toutes les entrées et sorties tout ou rien (Synchro_in, clock(s), leds ) sont réalisées par des transistors en commutation. L'inversion de logique est laissée au logiciel.
L'entrée 'Synchro' est réalisée par un transistor en commutation. L'inversion de logique est laissée au logiciel. Les sorties LEDs connectées directement sur le micro-contrôleur. Toutes les sorties Horloges sont protégées par un buffer en tampon.
L'entrée CV_IN est réalisée au travers d'un quadruple AOP. Les deux premiers AOP sont montés en inverseur et avec un gain de 0,5 pour réduire la différence de tension de 10V en entrée, au 5 volts nécessaire en entrée du micro-contrôleur. La commutation 0-10V -> -5/+5V est réalisée par l'addition de +5V sur le premier AOP. Cette tension est directement envoyée par une sortie TOR du micro-contrôleur. Les deux derniers AOP sont là pour contenir la tension à l'entrée du micro-contrôleur strictement entre 0 et 5 volt.
Les données MIDI-IN transitent par un opto-coupleur avant analyse par le micro-contrôleur.
Le LCD est libre de choix quant aux couleurs, blacklight etc. Selon le modèle choisi, il sera éventuellement nécessaire d'inverser l'alimentation du blacklight. Le PCB prévoit cette inversion.
Ce module est conçu pour être alimenté en +/-15 volts. Sans changement ou adaptation de composant, il est possible d'alimenter ce module avec une alimentation symétrique de +/-12 volts.
Le PCB principal permet de recevoir trois types de connecteur d'alimentation : Format Yusynth, format Dotcomm et format MOTM. A vous de choisir.
De trop nombreux strap sont encore présent sur les PCB afin de les conserver en simple face et donc réalisable par tous. Faite attention à bien tous les installer. Pour le strap raccordant l'entrée MIDI_IN, il sera préférable de mettre un fil de câblage isolé.
Le micro-contrôleur est un ATmega328p obligatoirement avec bootloader arduino.
L'encodeur choisi est un ALPS EC11K1524801, il est assez courant, tout autre modèle similaire fera l'affaire.
Les deux PCB nécessaires au module sont reliés par un câble en nappe de 10 conducteurs et de quelques centimètres de long. Le câble doit être croisé.
Le PCB "IHB" comprend les poussoir et d'encodeur. Il est fixé au PCB "BASE" par 4 entretoises de 10 mm.
Le PCB "BASE" comprend toute l'électronique, connecteurs de raccordement aux sorties exterieures fixées sur sa face avant. Sur la face arrière du PCB, coté cuivre, l'afficheur LCD est raccordé et fixé. Une barrette femelle doit être soudée sur l'afficheur LCD, et une barrette mâle de 16 points doit être soudée coté cuivre sur le PCB "BASE".
LCD + barrette femelle | Barrette femelle soudée | |
Barrette mâle en cours de préparation. | Barrette mâle prête à être soudée. | Barrette soudée sur le PCB "BASE" (version prototype) |
Attention : Il est obligatoire de mettre un connecteur avec un strap amovible. Ce strap sera ouvert lors de la programmation du micro-contrôleur, puis fermé lors de l'utilisation du module. Sans ce strap, aucun signal MIDI sera envoyé à l'opto-coupleur et donc le module "ne fonctionnera pas".
Jumper ou Strap Ouvert = Programmation | Jumper ou Strap Fermé = Utilisation |
Module monté et PCB empillés. |
Le reste ne présente pas de difficulté particulière.
Le lociciel du MASTER CLOCK appelle une bibliothèque MIDI. Celle-ci doit être installée dans le répertoire "arduino/library" sur le votre disque dur de votre système informatique.
Cette bibliothèque (library) obligatoire est la "Arduino MIDI Library" accessible ici sur le site Arduino ou bien sur le site GitHub. Une copie est également disponible sur oZoe.fr.
Une fois le module fini et vérifié, téléchargez le logiciel MASTER_CLOCK dans la section téléchargement du site, puis installez le dans le module. Un résumé de ce qui est nécessaire est fait sur cette page.
Après le chargement du logiciel et pour la première utilisation du module, le message : doit apparaitre durant le temps de l'initialisation de la mémoire du module, soit environ 4 à 5 secondes, puis les leds doivent commencer à clignoter. Ajuster le contraste du LCD par réglage de la résistance ajustable de 10K. Mettre en place le Jumper pour l'utilisation du MIDI.
Au redémarrage, le LCD doit s'illuminer avec cet écran : durant deux secondes, puis bascule sur l'écran d'accueil. Les leds et les sorties CLOCKs sont alors activées.
La sauvegarde des paramètres courants (Rate, Ratio BCD, Unité d'affichage, pwm, midi, plage CV, ) est réalisée toutes les 10 secondes jusqu’à 300 bpm. Au-delà, la sauvegarde est effectuée que lorsque une action sur un des boutons de façade est faite. Cette sauvegarde automatique est lue à la mise sous tension du module est permet de retrouver les derniers paramètres utilisés.
Une fois le mode midi activé, le module devient esclave de cette liaison. A chaque impulsion midi_clock’ reçu, une impulsion sur la sortie Synch24’ sera faite, entrainant ainsi les autres horloges.
Lors de la reprise du flux midi après un Midi_Stop’, un reset des cycles des sorties est effectué automatiquement pour rester sur la bonne trame. Lors d’un Midi_continue’, aucun reset n’est effectué.
L’affichage du BMP, ou de la fréquence, est réalisé par la mesure entre deux impulsions. L’affichage en Mode Midi est donc indicatif.
Lors de la sortie du Mode Midi, le dernier Rate midi est converti en Rate pour le module autonome. La transition entre les deux modes est faite sans impact sur le rythme.
Cette sortie est activé à partir de la version logicielle 4.0.
Le midi-out fonctionne en permanence. A chaque front montant d'une sortie A, B, C ou D, une NOTE_ON est envoyée et une NOTE_OFF est envoyée sur un front descendant. Les notes on et off sont envoyées sur le canal sélectionné.
Les notes choisies sont : DO1 (C1) pour la voie A, RE1 (D1) pour la voie B, MI1 (E1) pour la voie C et FA1 (F1) pour la voie D. Ces valeurs sont adaptables facilement dans la section 'USER' du logiciel.
Le signal d'horloge synch24 est envoyé sur la trame "real time" afin de cadencer d'autre appareil MIDI.
Lorsqu'un reset est réalisé, un 'MIDI-Stop' suivi d'un 'MIDI-Start' sont envoyés et tous les notes précédentes sont synchronisées.
Les horloges ont chacune un cycle de nombre de coup (par exemple de 1 à 6 avec le ration’x6’) et un état haut ou bas. Le reset ou synchronisation consiste à amener toutes les horloges à l’état bas et remettre chaque cycle à zéro. Cette action est réalisée sur le premier front montant de Synch24 rencontré.
Dans le cas du Stop_Midi, le reset est effectué, puis sera effectif lors du premier Midi_Clock’ reçu.
L’activation des paramètres usine permet de revenir avec A=120, Bx2, Cx2, D/2, PWM=25%, Midi_OFF, CV_in +/-5 volts, Unité=BMP. Cette activation n’affecte pas les sauvegardes effectuées.
Version 2.0 : Octobre 2014 : Version Initiale
Version 3.01 : Octobre 2014 (Hardware non compatible avec la V2.0)
Version 3.02 et 3.03 : Novembre 2014
Version 4.00 : Juillet 2016
Version 4.20 (Hard) : Décembre 2017
Version 4.20 (Soft) : Février 2018