Midi CV Gate multi fonctions sur la base d'un Arduino

Clonages d'ancètres, conceptions originales, circuit bending, le coin des grenouilles bricoleuses.

Modérateur : darcmorcel

Avatar de l’utilisateur
baloran
Messages : 2179
Inscription : 29 févr. 2012, 13:46
Localisation : Pas de Calais
Contact :

Midi CV Gate multi fonctions sur la base d'un Arduino

Message par baloran »

Bonsoir,

Pendant la construction de mon modulaire, j'ai vite ressenti le besoin de développer un module de commande. Je me suis tourné vers la solution Arduino car le produit est vraiment sympa, ouvert, économique, facile à mettre en oeuvre sans PCB. Avec un simple port USB, on le reprogramme le plus simplement du monde. L'environnement de développement est libre, convivial , fiable et performant même si il n'y a pas à proprement parler d'outil de deboggage et d'optimisation.
Je mets bien sûr le logiciel à la disposition de tous.

http://www.youtube.com/watch?v=khuEQgUx ... el&list=UL[/video]

En gros il faut un Arduino Uno avec sa plaquette d'expérimentation (celle qui se greffe au dessus...), un MCP4922, un optocoupleur 6N138, trois potentiomètres, trois boutons poussoir, 4 jack chassis femelle 6,35, une DIN chassis femelle 5 broches 45°, quelques résistances, un afficheur LCD compatible hd44780 (2x16 mini, en diminuant les libellés, ce devrait passer, le programme est prévu pour, un 4x20 serait pas mal sur une façade 2U). Mon afficheur m'a couté moins de 4 euros, c'est un vieux machin non rétroéclairé, pas pratique, mais 2x32 caractères, le luxe éco quoi ;)

Voilà, à votre disposition pour plus d'infos.
Quand l'été est si pluvieux ou l'hiver si froid...
Avatar de l’utilisateur
Courtman
Messages : 886
Inscription : 07 juin 2011, 02:34
Localisation : Vendée

Re: Midi CV Gate multi fonctions sur la base d'un Arduino

Message par Courtman »

Trés belle réalisation !!! :bravo:

2 petites questions :

1) Le convertisseur est en V/Oct ou en V/Hz ?
Ou une possibilité d'améliorer le code pour le rendre universel !! :hum:
2) Possibilité de + de sorties soit 3,4 CV Gate ?

Il restera plus qu'à le mettre en format Eurorack :palm: et là c'est le rêve !!!!
:bang: "La carte Arduino Uno peut fonctionner à l'aide d'une tension extérieure de 7 à 12 volts"
:sante:
Moog Clone a dream ?
chok

Re: Midi CV Gate multi fonctions sur la base d'un Arduino

Message par chok »

Voilà un post très intéressant, à l'heure où je compulse actuellement un livre sur les Arduino et où on m'a fortement soufflé à l'oreille de développer sur ce type de carte pour la gestion du Midi..J'étais parti dans la quête d'un séquenceur Midi et CV/Gate adapté à mes besoins, l'Arduino est un bon candidat, surtout pas cher comme tu le précises...

A suivre donc... :bave: :sante:
Avatar de l’utilisateur
OSICA
Messages : 535
Inscription : 22 août 2011, 17:32
Localisation : Liège - Belgique
Contact :

Re: Midi CV Gate multi fonctions sur la base d'un Arduino

Message par OSICA »

Super bien, ça m'intéresse, surtout que souvent les midi>cv sont pas donné.

Rien à voir mais j'ai déjà monté des une interface midi avec un arduino, mais bon c'est pour faire Gameboy >Midi out... :palm:
Et ça reste bien efficace !!!
Soundcloud 1: https://soundcloud.com/osicamusic" onclick="window.open(this.href);return false;
Soundcloud 2: https://soundcloud.com/osicabending" onclick="window.open(this.href);return false;
chok

Re: Midi CV Gate multi fonctions sur la base d'un Arduino

Message par chok »

Ce que je trouve sympa, c'est l'afficheur, utile surtout quand on commence à avoir plus d'une dizaine de fonctions...Le monde de l'Arduino est très vaste, il y a plein d'applications dans de multiples domaines.... :roll:
Avatar de l’utilisateur
baloran
Messages : 2179
Inscription : 29 févr. 2012, 13:46
Localisation : Pas de Calais
Contact :

Re: Midi CV Gate multi fonctions sur la base d'un Arduino

Message par baloran »

C'est clair que l'ergonomie est un ingrédient indispensable et l'écran apporte de ce point de vue un gros plus. Le logiciel est conçu pour s'adapter à différents afficheurs, je définis des zones (coordonnées, longueur) et je ne fais plus référence qu'aux zones dans le programme. On commence à trouver des écrans rétroéclairés 4x20 pour moins de 20 euros et ça devrait passer dans une 2U.

Quant à l'Arduino, je réfléchis quand même au passage directement sur l'Arduino Mega pour ces capacités mémoires (code et Ram plus grande) et l'oxygène supplémentaire quant aux E/S. L'Uno est ici bien plein. Avec le Mega, je pourrais gérer plusieurs ports midi, x canaux DAC, avoir une ou plusieurs entrées Gate (mode interrupt) et CV etc...Mais c'est une vingtaine d'euros en plus. Peut être deux versions alors...

Je réfléchis aussi à l'option 'buffer analogique' afin d'étendre le CV à 10 octaves, des modulations symétriques, bufferiser et protéger les entrées, régler l'offset. Mais cela nécessite alors un petit PCB, une alim symétrique, c'est moins facile à mettre en oeuvre sauf si cela s'intègre dans un modulaire qui dispose déjà d'un bus d'alim etc...Encore une autre option :mdr:

Pour répondre à ta question Courtman le v/Hz est simple à gérer, bonne idée, je vais mettre en place l'option. Mais de par sa définition, avec une tension limitée à 0...4,5V sur l'Arduino, sauf erreur de ma part on couvre un peu plus de 3 octaves en v/Hz. C'est short. Avec l'extension buffer on passerait à 5 octaves, c'est mieux !

@+
Quand l'été est si pluvieux ou l'hiver si froid...
chok

Re: Midi CV Gate multi fonctions sur la base d'un Arduino

Message par chok »

C'est clair que tu vas vite passer aux cartes plus musclées, j’envisage de réfléchir à un convertisseur Midi to 6 ou 8 CV/Gate + contrôleurs (notamment l'aftertouch polyphonique), en partant sur la base d'un clavier de contrôle disposant de cette rare fonctionnalité... :roll:
Avatar de l’utilisateur
Courtman
Messages : 886
Inscription : 07 juin 2011, 02:34
Localisation : Vendée

Re: Midi CV Gate multi fonctions sur la base d'un Arduino

Message par Courtman »

Bonjour,

Merci à Baloran, ce post m'a permis de faire une nuit blanche.
L'arduino est vraiment un très bel outil !
Je pense partir sur un Mega 2560 avec sa carte Proto , soit 53.70€ pour la base !
Avec le partage de ton code source et de ton schéma, cela permettrait d'avoir un Midi/CV Gate avec des fonctions en + !

J'ai pu trouver différents schémas et codes avec des entrées ,sorties Midi et plusieurs CV Gate mais juste de la conversion. :confused:
Avec une participation des membres d'Anafrog pour améliorer le code (sans dénigrer) et proposer des mises à jour avec ses différentes options.
Et il pourrait avoir 2 versions du code pour Uno et pour Mega.

Merci d'avance pour ce partage et très beau boulot. :smoke:
Moog Clone a dream ?
chok

Re: Midi CV Gate multi fonctions sur la base d'un Arduino

Message par chok »

Hummm, les nuits blanches de ce type, c'est cool aussi, ça permet d’envisager des possibilités que l'on ne soupçonnait pas pour nos configs.....

Je pense que les boîtiers de contrôle Midi type Kiwi peuvent aussi être réalisés avec ce type de carte..... :hum: :nesaispo: :fou:


et pour les drums :bave:
http://wn.com/arduino_sequencer
Avatar de l’utilisateur
Courtman
Messages : 886
Inscription : 07 juin 2011, 02:34
Localisation : Vendée

Re: Midi CV Gate multi fonctions sur la base d'un Arduino

Message par Courtman »

Normalement possible ! après il faut voir le modèle utilisé avec le nombre d'entrée sortie !
L'afficheur prends aussi des sorties donc à adapter aux besoins ! :nesaispo:

Sinon pour avoir plus de parametres affichés :
Image
http://www.eio.com/p-942-orient-display ... odule.aspx

J'ai vu des contrôleurs Midi assez complet donc je pense qu'avec les grenouilles intéressées, on peut arriver à réussir un développement incroyable !!! :smoke:

A méditer :
http://www.youtube.com/watch?v=Pw_e_JOo ... re=related[/video]
http://www.youtube.com/watch?v=92VIEDtQ ... re=related[/video]

:sante:
Moog Clone a dream ?
Avatar de l’utilisateur
baloran
Messages : 2179
Inscription : 29 févr. 2012, 13:46
Localisation : Pas de Calais
Contact :

Re: Midi CV Gate multi fonctions sur la base d'un Arduino

Message par baloran »

Courtman :mdr: :smoke:

Je pense démarrer aussi rapidement une version mega avec l'extension buffer (j'aimerais dépasser les 4,5 octaves) et l'afficheur 4x20, avec pour objectif de la mettre sur une façade 2U dans une extension une hauteur de mon Yusynth.
J'imagine pour le moment 4 CV Gate / 2 x 2 midi / 2 entrées gates et peut être une entrée CV ? ( même si je n'utilise pas tout au début, je préfère quand même que les trous soient percés dès le début :hum: )
Je mettrai en ligne le code ici ce soir, il n'est pas trop commenté (comme d'hab, je peux rien y faire... :nesaispo: ) mais cela peut quand même déjà donner des idées ;)

@+
Quand l'été est si pluvieux ou l'hiver si froid...
Avatar de l’utilisateur
Milooz84
Messages : 52
Inscription : 23 sept. 2011, 15:54
Localisation : Paris 18
Contact :

Re: Midi CV Gate multi fonctions sur la base d'un Arduino

Message par Milooz84 »

Salut tout le monde,

Je fait a peu près la même chose, la grosse différence c'est le DAC, j'utilise un AD5754 (4xDAC 16bits capable de sortir jusqu'à du +/-10V) et l'absence d'affichage LCD.
La spécification midi actuelle ressemble à ça.

Pour le Hz/V je me suis bien pris la tête pour trouver l'algo qui converti la note midi en octet pour le DAC.
Pour un DAC 16bits qui sort du 0-10V le calcule est:

Code : Tout sélectionner

uint16_t
PitchControl::midiNoteToHertzPerVolt (byte note)
{
    return 204.796875 * pow(2.0, note / 12.0);
}
Tout le problème a été de trouver la bonne constante: 204.796875
Pour un 12bits 0-5V je crois que ce serai: 25,59375 (mais j'en suis pas sure du tout ^^)
A vrai dire je me souviens plus trop comment j'ai fait, je crois que j'ai jeté mes notes papier :(

En tout cas bravo pour ton projet baloran, ça m'encourage à finir le miens :)
Perso j'aimerai bien m'affranchir de l'Arduino Uno et créer mon propre PCB structuré autour du microcontrolleur et du DAC.

Bonne continuation.
--
http://soundcloud.com/milooz" onclick="window.open(this.href);return false;
Avatar de l’utilisateur
ACX
Messages : 2018
Inscription : 12 nov. 2009, 20:25
Localisation : Montmorency
Contact :

Re: Midi CV Gate multi fonctions sur la base d'un Arduino

Message par ACX »

Je te trouve un peu cruel avec ton pauvre micro contrôleur de lui faire faire ce genre de calcul*.
Le plus simple est de les faire faire par Excel et ensuite de remplir un tableau de constante.

* Une spéciale pour BLT et chok : "On n'est jamais assez fort pour ce calcul" :palm: :palm:
Mon site SDIY http://www.acxsynth.com" onclick="window.open(this.href);return false;
Avatar de l’utilisateur
Milooz84
Messages : 52
Inscription : 23 sept. 2011, 15:54
Localisation : Paris 18
Contact :

Re: Midi CV Gate multi fonctions sur la base d'un Arduino

Message par Milooz84 »

ACX a écrit :Je te trouve un peu cruel avec ton pauvre micro contrôleur de lui faire faire ce genre de calcul*.
Le plus simple est de les faire faire par Excel et ensuite de remplir un tableau de constante.
En fait c'est ce qui est fait, les tableaux sont calculé au démarrage de la machine.
ça m’embête un peu de me palucher l'écriture du tableau dans le code ^^ mais je finirai sans doute par le faire pour démarrer un peu plus vite (même si c'est déjà quasiment instantané).
--
http://soundcloud.com/milooz" onclick="window.open(this.href);return false;
Avatar de l’utilisateur
ACX
Messages : 2018
Inscription : 12 nov. 2009, 20:25
Localisation : Montmorency
Contact :

Re: Midi CV Gate multi fonctions sur la base d'un Arduino

Message par ACX »

Je disais ça parce que j'utilise un petit PIC qui est un peu léger pour ces calculs. Je les fais sous Excel et je les rentre dans le code en copier coller. IL n'y a pas de règle bien sûr, chacun fait bien comme il veut ! :bravo:
Mon site SDIY http://www.acxsynth.com" onclick="window.open(this.href);return false;
Avatar de l’utilisateur
baloran
Messages : 2179
Inscription : 29 févr. 2012, 13:46
Localisation : Pas de Calais
Contact :

Re: Midi CV Gate multi fonctions sur la base d'un Arduino

Message par baloran »

Les tableaux ont tout de même des défauts dans un monde qui simule l'analogique. Si on doit par exemple ajouter le pitch-bend exprimé en "fraction signée et linéaire de demi-tons", le tableau peut montrer ses limites :hum:
Une autre option possible, tenter de travailler sur des entiers peut être aussi un allègement de la tâche pour le CPU. Pour cela, le v/octave est quand même plus simple que les racines douzièmes... :bang:
Quand l'été est si pluvieux ou l'hiver si froid...
Avatar de l’utilisateur
ACX
Messages : 2018
Inscription : 12 nov. 2009, 20:25
Localisation : Montmorency
Contact :

Re: Midi CV Gate multi fonctions sur la base d'un Arduino

Message par ACX »

Il n'existe pas UNE bonne solution, mais dans mon MIDI 2CV je suis bien obligé de passer par des tableaux lorsque j'utilise des gammes spécifiques dans lesquelles les demi-tons ne sont pas égaux.
Je rappelle d'ailleurs que sur mon site je donne le schéma ainsi que le code de ce module et chacun est libre de s'en inspirer. :bravo:
De plus, mon code est écrit en C ce qui permet de l'adapter relativement facilement à toutes sortes de micro contrôleurs.
Mon site SDIY http://www.acxsynth.com" onclick="window.open(this.href);return false;
Avatar de l’utilisateur
Emalot
Messages : 1397
Inscription : 13 mars 2011, 14:06

Re: Midi CV Gate multi fonctions sur la base d'un Arduino

Message par Emalot »

ET voilà un post qui partait bien et il a fallu que ACX et Milooz viennent nous le rendre incompréhensible!!!
C'est pas sympa les gars!!
Avatar de l’utilisateur
baloran
Messages : 2179
Inscription : 29 févr. 2012, 13:46
Localisation : Pas de Calais
Contact :

Re: Midi CV Gate multi fonctions sur la base d'un Arduino

Message par baloran »

Bonsoir,

En attendant un schéma, le code source est ici :
http://www.cjoint.com/LL412/LL412.ino
C'est du brute, y'a p'te même de la betterave dedans....

ACX, loin de moi l'idée et l'intention d'imposer une solution, un point de vue. Je suis ici pour la passion et le partage, ça me suffit largement ;)
Tu verras dans mon code source foutraque des tableaux, des horreurs + ou - motivés par la petite taille de la ram très propice aux débordements. Je disais juste que pour la conversion v/hertz, si on veut gérer le pitch bend, j'ai l'impression qu'il va falloir ruser pour s'affranchir de la virgule flottante :sante:
Quand l'été est si pluvieux ou l'hiver si froid...
Avatar de l’utilisateur
ACX
Messages : 2018
Inscription : 12 nov. 2009, 20:25
Localisation : Montmorency
Contact :

Re: Midi CV Gate multi fonctions sur la base d'un Arduino

Message par ACX »

Super baloran ! nous sommes bien tous les deux sur la même longueur d'onde. C'est pour cela que je m'intéresse beaucoup à ce projet.
Je vais regarder le code que tu as envoyé, jette un coup d'oeil au mien et on rediscutera alors de l'usage des tableaux !
Mon site SDIY http://www.acxsynth.com" onclick="window.open(this.href);return false;
Répondre
cron