CV Arpeggiator

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

Modérateur : darcmorcel

Portamento
Messages : 306
Inscription : 01 nov. 2012, 12:17
Localisation : Pau
Contact :

CV Arpeggiator

Message par Portamento »

Bonjour,

Je suis depuis quelques temps sur un projet d’un arpégiateur CV intégrable dans un modulaire.
Le projet est bien avancé et si vous avez des idées d’ajout quelques fonctions simples avant de le finaliser et également, si vous avez des idées pour la forme des arpèges... n’hésitez pas.

Les fonctions actuelles sont :
- entrées des notes à ‘arpéger’ par MIDI_IN
- 12 Formes d’arpèges
- Les arpèges sont joués entre 1 et 7 octaves
- 5 formes de lecture (aller, retour, aller/retour x2 et aléatoire)
- CV1 : Arpège au standard volt/octave entre 0 et 8 volts
- CV2 : Fondamentale de l’accord (bien pour transposer des séquenceurs ou autre) ou CV + ou – un delta (quarte, tierce, quinte, etc.)
- Une sortie Gate commune au deux CV.
- Une sortie EOC à la fin de chaque arpège
- Clock : interne : réglage par potentiomètre ou Tap. Externe. Visualisation par led.
- La lecture du midi_in est standard (appui note= note ON, relâchement de la note = Note Off) ou ‘hold’. Lorsqu’on est en hold, c’est à dire qu’un appui sur une touche la mémorise et il n’est plus besoin d’appuyer dessus, il est possible d’arrêter ou d’activer la lecture via un poussoir ou par un signal externe.

Tout ça est fait à base d’arduino bien que je ne sais pas si je peux encore parler d’arduino, car j’utilise juste un Atmega328p avec le bootloader de l’arduino sans la platine arduino uno classique. J’ai mis le microcontrôleur sur une platine de 50x110mm (pour le bonheur des eurorack-ficionado) alimenté par du +/- 15V. J’ai pas testé, mais il ne devrai pas y avoir de soucis pour du +/-12V.
Les pupuces sont : Atmega328p avec bootloader arduino, un MCP4822, un TL072 et un 6N137. Pour chaque CV le zéro volt et la pente sont ajustables finement et toutes les entrées/sorties du microcontrôleur sont isolées du monde extérieur.

Coté nombre de note, l’arduino peut lire 128 notes sans souci... vu la non mutation de l’espèce humaine pour le nombre de doigt, j’ai limité le projet à 10 notes clavier. Un argpège sur 7 octaves et avec les répétitions de notes, peut représenter jusqu’a 175 notes jouées.
Le principe de l’arpège est le suivant :
- Les notes appuyées au clavier sont analysées et triées de la plus basse à la plus aigue.
- Toutes les notes sont jouées selon un schéma (cf plus loin), puis sont rejouées jusqu’au dernier octave que vous choisissez avec, selon vos choix également, une redescente ou pas.
- 12 schémas sont établis (en réalité seulement 7 actuellement) comme suit : Par exemple, le premier schéma est ‘0123456789’, ainsi donc si vous tapez les cinq touches do-re-mi-fa-sol en même temps, vous entendrez do-ré-mi-fa-sol sur le rythme du tempo, le deuxième schéma est ‘021324354657687989’ là vous entendrez do-mi-ré-fa-mi-sol-fa. Il est donc très simple de faire l’arpège que l’on souhaite.

Je suis toujours dans la lignée des modules avec une fonction par module.
Tout ce que je vous décrit ci-dessus est quasi fonctionnel, il me reste quelques couac à régler, à refaire une face avant car ma face avant proto est un peu explosée, la doc et .. c’est à peu près tout.
Actuellement, la face avant 2U au format dotcom ressemblerai à ça : Image
http://www.oZoe.fr" onclick="window.open(this.href);return false;
Notator
Messages : 1254
Inscription : 05 avr. 2012, 21:19

Re: CV Arpeggiator

Message par Notator »

Pas de midi out ? :confused:
Avatar de l’utilisateur
Salmacis
Messages : 588
Inscription : 25 janv. 2012, 13:30

Re: CV Arpeggiator

Message par Salmacis »

Bravo pour ton projet d'arpegiateurs.
Quelques questions et remarques

Ajout d'un Gate de 0 a 100% et plus (possibilité de ne par retrigger sur une nouvelle note)
Ajout d'un Swing pour altérer de facon binaire le tempo
Le CV2 pourrait être une retranscription de la vélocité
Le CV2 pourrait être une copie du CV1 avec un facteur d’atténuation éventuelle pour mettre sur le fréquence de coupure d'un filtre par exemple

Le schéma des arpégés pourrait tenir compte de l'ordre d'arrivé des notes et pas uniquement de leur placement sur le clavier

Tu parle de fondamentale de l'accord mais suivant les renversement il est difficile de trouver la fondamentale. Peut être parle tu de la note
la plus basse.
Portamento
Messages : 306
Inscription : 01 nov. 2012, 12:17
Localisation : Pau
Contact :

Re: CV Arpeggiator

Message par Portamento »

Merci de vos premiers retours :smile:

Je ne suis pas chaud pour inclure un Midi_Out. Avec Midi_In et Out, le risque est grand que le module ne soit perçu que comme 'boite midi' est ce n'est pas le sens du module. De plus ACX à réalisé un très bon arpégiateur dans cette optique avec des fonctions Midi bien plus poussées que celles-ci. J'ai en tête de faire un de ces quatre, un module "CV_in to Midi_Out" surement 4 voies. Pour l'instant ce n'est qu'une idée.

La largeur de Gate variable est envisageable. Il me reste une seule entrée analogique, elle pourra être utilisée à ça !

Le swing peut être ajouté avec un inverseur ou plus probablement sur le rotacteur de lecture. Tu as des idées du rythme du swing ?

La vélocité des notes clavier jouées sur CV1 sur le CV2, j'achète ! C'est facile, il fallait juste y penser. Merci.

Pour la fondamentale tu as raison, je me suis mal exprimé. Il s'agit de la note la plus grave.
Le CV2 pourrait être une copie du CV1 avec un facteur d’atténuation éventuelle pour mettre sur le fréquence de coupure d'un filtre par exemple
Je ne comprends pas ce que tu veux dire ?
http://www.oZoe.fr" onclick="window.open(this.href);return false;
Avatar de l’utilisateur
Salmacis
Messages : 588
Inscription : 25 janv. 2012, 13:30

Re: CV Arpeggiator

Message par Salmacis »

Portamento a écrit :Le CV2 pourrait être une copie du CV1 avec un facteur d’atténuation éventuelle pour mettre sur le fréquence de coupure d'un filtre par exemple
Tu genere sur le CV2 un signal qui dépend de hauteur de la note.
Tu injecte ce CV2 sur une entrée Cutoff ou autre

Par exemple tu pourrais avoir un LFO plus rapide sur une note plus haute....
Portamento a écrit :Tu as des idées du rythme du swing
Par vraiment de ryhtme mais une variation. Par exemple ta note de base dure 200ms mais tu joue alternativement des notes a 100ms et 300ms ce qui
donne une vie différente a ta séquence
Salmacis a écrit :Le schéma des arpégés pourrait tenir compte de l'ordre d'arrivé des notes et pas uniquement de leur placement sur le clavier
Je pense que ça peut vraiment être sympa (en plus pas de modif hardware...)
Avatar de l’utilisateur
jeffD
Messages : 1036
Inscription : 03 nov. 2010, 12:12
Localisation : B St Martin, 77

Re: CV Arpeggiator

Message par jeffD »

Yop,

Ah ouais, coOl ! Joli projet et presque fini a ce que tu dis. Ça devrait pouvoir rentrer dans du 3U...

Question : ce serait compliqué de mettre un cv IN en parallèle de l'entrée midi ? De pouvoir avoir le choix entre du midi pour les notes ou d'envoyer une tension via un cv IN !
Le midi ne sert que pour les tensions de notes ?

AA+
Avatar de l’utilisateur
baronrouge
Messages : 671
Inscription : 13 déc. 2010, 19:28
Localisation : au pays de Cuverville (ou sexe vers mer, ça dépend d'où on regarde !)
Contact :

Re: CV Arpeggiator

Message par baronrouge »

super idée
http://www.myspace.com/patjhc" onclick="window.open(this.href);return false;
http://soundcloud.com/baronrouge-1" onclick="window.open(this.href);return false;
Portamento
Messages : 306
Inscription : 01 nov. 2012, 12:17
Localisation : Pau
Contact :

Re: CV Arpeggiator

Message par Portamento »

Merci de tous ces retours encourageant :smile:
Salmacis a écrit :
Portamento a écrit :Le CV2 pourrait être une copie du CV1 avec un facteur d’atténuation éventuelle pour mettre sur le fréquence de coupure d'un filtre par exemple
Tu genere sur le CV2 un signal qui dépend de hauteur de la note.
Tu injecte ce CV2 sur une entrée Cutoff ou autre
Par exemple tu pourrais avoir un LFO plus rapide sur une note plus haute....
... heu, je comprends toujours pas... :hum: C'est à dire que CV2=CV1 qui dépend de la hauteur de note ? Si c'est ça, c'est déjà en base.

OK pour le swing, je vais tester, mais ça devrai le faire. Je vais également tester de mettre les notes dans l'ordre d'apparition histoire de voir ce que ça donne.

Mettre un CV en // du MIDI est techniquement possible (sauf que ça explose schéma et pcb). Un temps (avant que je teste l'arduino) j'avais imaginé 4 CV_In en // pour faire des arpèges de 4 notes. Dans ton cas, il s'agirai de mettre un note, et avec la fonction hold, ajouter à arpéger. Il faut donc ajouter eun plus un Gate_IN puis trouver un moyen de gérer les notes_off. Ca va faire lourd.

Image
Oui, à ce que je comprends de l'eurorack, le PCB obligatoire de cet arpégiateur fait 50x110mm, ça rentre donc en hauteur ou en profondeur d'un rack 3U. Après il faut imaginer une face AV. J'ai pas d'idée de ce que ça peut faire en largeur.
http://www.oZoe.fr" onclick="window.open(this.href);return false;
Portamento
Messages : 306
Inscription : 01 nov. 2012, 12:17
Localisation : Pau
Contact :

Re: CV Arpeggiator

Message par Portamento »

Quelques info,
J'ai mis un potar pour gérer la largeur du gate en 0 et 100% de pwm. Ça apporte vraiment (donc je garde). Également, ce qui apporte bien, c'est le swing.
Pour swing, je tire un nombre aléatoire entre 0 et 30% du tempo. J'augmente le tempo de cette valeur sur un pas et retranche la même valeur sur le pas suivant. Ça permet de garder le tempo global et rend la chose plus vivante.
Je vais m'attaquer à tester les autres idées (ordre des notes, et vélocité des notes CV1 sur CV2). Le nombre de patoche diminue, je n'ai plus d'entrée analogique disponible et il me reste peut -être 1 TOR.

Coté arpège, j'en suis à 8 sur 12 possible :
(pour les graphes, en vertical les chiffres de 0 à 9 représente les notes jouées au clavier et en horizontal le temporel qui est modifié en fonction des choix de lecture et de tessiture.

ImageImageImageImageImageImageImageImage

Bref... ca avance. :smile:
http://www.oZoe.fr" onclick="window.open(this.href);return false;
Avatar de l’utilisateur
Salmacis
Messages : 588
Inscription : 25 janv. 2012, 13:30

Re: CV Arpeggiator

Message par Salmacis »

Super :coucou:

Pour le swing je m'y suis pas pris comme toi. Intéressant donc....

Pour le Gate c'est cool... Par contre as tu essayé une "non gate" comme je l'avais évoque ?.
L’idée était d'avoir une valeur supérieure a 100% afin de ne pas régénérer de gate et donc de ne pas retrigger des enveloppes éventuel.
La gate ne serait générée qu'au début de la séquence.

Bravo et bon courage...
Portamento
Messages : 306
Inscription : 01 nov. 2012, 12:17
Localisation : Pau
Contact :

Re: CV Arpeggiator

Message par Portamento »

Merci bien.

Oui, le gate est envoyé à +5V en permanence si le potar pwm_gate=100%, et ce y compris sur le 'Tap clock' qui peut avoir des fréquence hyper basses.
Pour l'inverse (0% de pwm), il me reste pour l'instant sur le tempo, une montée à +5V d'une durée de 15 us (us pas ms). Je ne pense pas que cette durée soit gênante, je verrai à l'usage si je doit la bloquer.
http://www.oZoe.fr" onclick="window.open(this.href);return false;
Avatar de l’utilisateur
Dortmund
Messages : 3
Inscription : 24 janv. 2014, 18:07

Re: CV Arpeggiator

Message par Dortmund »

Portamento a écrit : Je ne suis pas chaud pour inclure un Midi_Out. Avec Midi_In et Out, le risque est grand que le module ne soit perçu que comme 'boite midi' est ce n'est pas le sens du module. De plus ACX à réalisé un très bon arpégiateur dans cette optique avec des fonctions Midi bien plus poussées que celles-ci. J'ai en tête de faire un de ces quatre, un module "CV_in to Midi_Out" surement 4 voies. Pour l'instant ce n'est qu'une idée.
Salut! chouette projet!

De quel module ACX parles tu?
https://www.facebook.com/dortmund.official" onclick="window.open(this.href);return false;
Portamento
Messages : 306
Inscription : 01 nov. 2012, 12:17
Localisation : Pau
Contact :

Re: CV Arpeggiator

Message par Portamento »

Merci bien, Alain d'ACX parle de son Arpégiateur ici : http://forum.anafrog.com/phpBB/viewtopic.php?f=26&t=6417&hilit=ACX#p94779" onclick="window.open(this.href);return false;

Je pense toucher au but maintenant. Le CV2 gère la vélocité, le swing a droit à son inverseur et les déalage de 1/2 tons sur le CV2 sont bien efficaces. Je viens de tester l'absence de tri sur les notes et je trouve que cela n'apporte pas grand chose. Une fois que les notes sont prises dans les arpèges l'ordre de départ importe moins.
Ça bascule tranquillement vers la version finale en hard et en version béta pour le soft. :smile:
http://www.oZoe.fr" onclick="window.open(this.href);return false;
Portamento
Messages : 306
Inscription : 01 nov. 2012, 12:17
Localisation : Pau
Contact :

Re: CV Arpeggiator

Message par Portamento »

Hi,
Les docs commencent à sortir. voici le schéma
Une vidéo de démo simple faite avec un patch minimum : 2 VCO, un filtre (fixe), ADSR et VCA. Pas plus.
https://www.youtube.com/watch?v=SSL19IPh1_s[/video]
http://www.oZoe.fr" onclick="window.open(this.href);return false;
Avatar de l’utilisateur
Biosynth
Messages : 3040
Inscription : 17 mars 2011, 22:14
Localisation : Nantes
Contact :

Re: CV Arpeggiator

Message par Biosynth »

Bravo pour cette realisation! Il semble tres performant :bravo:
https://biosynth.bandcamp.com
https://soundcloud.com/biosynth
"Grab a Polivoks and you'll notice the MS-20 sounds like a Stylophone"
Portamento
Messages : 306
Inscription : 01 nov. 2012, 12:17
Localisation : Pau
Contact :

Re: CV Arpeggiator

Message par Portamento »

Merci bien ! :cool:
Maintenant ça y est, tout est en ligne : PCB, schéma, implantation, Liste de pièces, logiciel, etc ...
Ça se trouve ICI :sante:
http://www.oZoe.fr" 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: CV Arpeggiator

Message par baloran »

Oui, bravo pour ce projet et pour la qualité de la doc en ligne sur ce module et sur les autres :bravo: :bravo:
Quand l'été est si pluvieux ou l'hiver si froid...
Portamento
Messages : 306
Inscription : 01 nov. 2012, 12:17
Localisation : Pau
Contact :

Re: CV Arpeggiator

Message par Portamento »

Merci.
Ce projet est mon premier avec un Arduino. Comment programmes tu pour tes projets sur Arduino ? Uniquement avec l'IDE standard ou bien utilises-tu d'autres environnements plus pratique ?
http://www.oZoe.fr" 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: CV Arpeggiator

Message par baloran »

Portamento a écrit :Merci.
Ce projet est mon premier avec un Arduino. Comment programmes tu pour tes projets sur Arduino ? Uniquement avec l'IDE standard ou bien utilises-tu d'autres environnements plus pratique ?
J'utilise l'IDE standard tant pour les Arduino que pour les Atmel seuls. Il me va plutôt bien. Un de ces jours, je passerai peut être sur une plateforme un peu plus complète (AVR Studio ?), surtout pour bénéficier du JTag, et travailler un peu en "assembleur inline", être un peu plus proche des registres etc... :sante:
Quand l'été est si pluvieux ou l'hiver si froid...
Portamento
Messages : 306
Inscription : 01 nov. 2012, 12:17
Localisation : Pau
Contact :

Re: CV Arpeggiator

Message par Portamento »

Je ne suis pas encore mur pour l'assembleur. J'ai eut tenté , c'est pas trop mon truc. :bang:
Je te posais la question car je trouve l'IDE un peu léger sur les fonctions de débuggage. On s'en sort toujours, mais c'est plus long. :wink:
http://www.oZoe.fr" onclick="window.open(this.href);return false;
Répondre
cron