Scope
DIY SynthesizersInterfaces and sub-systemsDIY Audio Efects
Go to the HomepageWhat's up Doc ?Go to the Linkpagem.bareille @free.fr
 

OPAZ Controleur MIDI 15 voies

 

 

Conception, programmation et réalisation par
Guénael JOUCHET

Introduction

Il y a quelques années, les PC ont commencé à être suffisamment puissants pour réaliserde la synthèse logicielle. Pour ma part, j'ai découvert la synthèse logicielle temps réel avec ReBirth sur mon Pentium 166MHz MMX. Bien sûr, des logiciels de synthèse existaient sur PC, comme par exemple Virtual Waves, mais l'arrivé du temps réel a crée un tournant, pour moi en tout cas. Mais en même temps, il créa un nouveau besoin.

Un nouveau besoin

Manipuler des paramètres en 'live' n'est pas chose facile à la souris. La solutions étaient donc d'utiliser d'autres instruments compatibles midi pour piloter les logiciels de synthèse. Mais si vous avez expérimenté cette voie, vous vous êtes certainement rendu compte des problèmes que cela posait... Les contrôles ne sont bien souvent pas adaptés pour l'usage que l'on veut en faire, sans compter que les potentiomètres affectés sont quasiment toujours utilisés si l'on veut faire une utilisation parallèle des ces machines.

Le début d'un projet

Partant de ces constatations, je me suis lancé dans la construction d'un contrôleur midi autonome appelé OPAZ, sans attendre quelques années que les constructeurs ressentent le besoin et n'y dédient quelques produits. Bien sûr c'est ce qui c'est passé et on trouve actuellement (28/10/2003) ce genre de produits dans le commerce.

Pour l'époque, le projet était original, maintenant il l'est moins, mais c'est un projet facilement adaptable qui pourra vous intéresser si vous vous penchez sur la réalisation d'un pupitre de commande MIDI dédié/spécifique.

Par ailleurs, cela m'amuse toujours de voir à quel prix les constructeurs de ce type de matériel affichent leurs produits alors qu'il n'y a quasiment rien en électronique... et que la conception est relativement simple. Le coût de mon petit prototype n'excède dans aucun cas les 800 francs (hé oui, les sous de l'époque ;) soit approximativement 120 euros pour être moderne :) Bien sûr, l'étude et la conception du prototype m'ont coûté bien plus, mais si vous reprenez le prototype tel quel, 120 euros est une bonne estimation pour l'ensemble (composants, coffret, connectique, plaque, offset, etc...).

Au sujet du nom du prototype, je n'ai pas été chercher bien loin, et il n'y a pas de signification pour OPAZ. J'ai appelé le CI micrOpaz en prévision d'un système futur plus imposant.


Objectif du projet OPAZ

Je vais décomposer les objectifs en deux parties:

- Pour rester général, l'objectif principal est de fournir des signaux MIDI en fonction de 15 boutons rotatifs. Plus précisément, les 15 potentiomètres des boutons rotatifs vont être balayés par un multiplexeur, lui même commandé par un microcontrôleur Microchip PIC16C77 qui va dans le même temps se charger de faire la conversion AN. Dès qu'il a fini la conversion en numérique, il compare la valeur obtenue avec l'ancienne valeur qu'il a gardé en mémoire, et si celle-ci a changé (donc si le potentiomètre a été tourné) il va transmettre la nouvelle valeur en respectant le protocole MIDI. Trois octets sont alors transférés (numéro de canal & type 'Control Change' - numéro de contrôleur - valeur du contrôleur). Voila pour les grandes lignes. En fait, le programme est un peu plus complexe, par exemple, j'utilise une petite routine anti-oscillation à base de soustraction (et passage de 8 bits à 7 bits) ce qui évite d'avoir une saturation du canal midi dû à une transmission intempestive d'une valeur ou le dernier bit est tantôt lu à 1 tantôt à lu 0 par le convertisseur. Dans le même ordre d'idées, j'utilise aussi une routine de réaffectation des numéros des contrôleurs, ce qui simplifie la conception du CI. Mais je vous conseille de regarder les sources pour plus d'informations.

- Le second objectif vise à utiliser les 5 switchs/leds en bas du pupitre, afin d'envoyer des commandes midi (note, contrôle...) d'une part et de positionner la led en fonction d'une donnée midi d'autre part. Pour réaliser ces opérations, deux chips sont utilisés, un multiplexeur et une mémoire d'états - 74HC4051 & 74HC259. Malheureusement, je n'ai jamais terminé l'implémentation logicielle de ces fonctionnalités... Avis aux amateurs !

 

 

 
 

 
 

Réalisation

Pour commencer, je rappelle que vous avez là un prototype, et qu'il reste un prototype bien qu'il soit fonctionnel et donne de bons résultats en terme de stabilité et de rafraîchissement.

 

La totalité des fonctionnalités n'as pas été implémentée et je ne respecte pas certaines convention en électronique qui le rendrait plus conforme (ex: connex. midi à l'arrache, vive les condo..., nécessite une bonne alim).

Il y a aussi quelques fonctionnalités un peu limitatives, comme le fait de devoir reprogrammer le microcontrôleur pour changer de canal midi. Ceci peut paraître aberrant, mais si comme moi vous avez un petit parc de machines, il y a peut de chances pour que vous reparamétriez touts les canaux midi de vos machines.

 

Pour de ce qui est de la réalisation, en bon électronicien, vous devriez commencer par jeter un coup d'oeil au schéma, mais voila, il n'y en a pas... En fait il y en a un, mais il est dans ma tête et je crois que je n'ai pas la motivation nécessaire pour le coucher sur papier. Le routage est quant à lui fait à la main car le routeur dont je disposais n'était pas très performant en simple face. Vous êtes peut-être en train de vous demander quel affreux bidouilleur je suis, vous n'avez pas tout à fait tort, mais notez que le projet est relativement simple :)
J'ai arrêté de travailler et de faire évoluer ce projet, ceci pour plusieurs raisons. La première raison et la plus bête aussi est que j'ai ralenti mon effort de développement dès que le projet avait rempli les fonctionnalités principales qui m'intéressaient. Une autre, qui a définitivement mis un terme au projet est que je me suis désintéressé (du moins pour un certain temps) de la synthèse audio.

La résurrection de OPAZ

A présent, les documents (pcb, sources, doc...) sont le sur le net, ce projet réssuscitera dès que quelqu'un de motivé décidera de reprendre le projet. Merci à Marc BAREILLE qui héberge ce projet sur son site 'Papareil Synth Labs'. Voila, je tenais à partager mon travail, si ce projet peut vous être utile dans l'une de vos réalisations, j'en serais heureux.

 

Guénael JOUCHET