Synthé modulaire DIY à modélisation analogique

Règles du forum
Cette section est dédié a vos projets, descriptions et demandes d'aide.
Merci de limiter le nombre de sujet par projets.
Lorsqu'un sujet deviens long vous pouvez éditer le premier message pour maintenir à jour le descriptif et garder en lisibilité
Avatar de l’utilisateur
Eric
Electrolab::Référent
Messages : 323
Enregistré le : 09 mars 2017, 10:09
Localisation : Electrolab
Référent : Zone Élec

Re: Synthé modulaire DIY à modélisation analogique

Messagepar Eric » 01 août 2020, 11:26

Hello,

Lors des recherches que j'avais fait par le passé, j'avais repéré quelques composants pour la numérisation et le pilotage d'un Formant.
Je remets ces éléments ci-dessous tels quels. J'avais sélectionné selon les fonctionnalités, pas le prix. Ce denier peut aussi être un axe de sélection.
Vois si l'un ou l'autre des composants ci-après peut avoir un intérêt pour ce que tu veux faire.


*********** Comment digitaliser (CV et midifier) un Formant ***************************

On ne décrit ici que l'interfaçage pour numériser les modules du formant, pas le coté du PC (Midi USB).

Infos sur l'interface CV
https://www.muffwiggler.com/forum/viewt ... ?p=1304451
http://www.doepfer.de/a100_man/a100t_e.htm


Pour digitaliser le Formant il faut des DACs
(8-12bits >= 2 canaux, triés par prix croissants)
http://www.ti.com/data-converters/dac-c ... =p1130;asc

Interface analogique universelle 20 x ADC 12 bits + 20 x DAC 12 bits + GPIO 'programmable' (c'est en fait un 'FPGA' analogique; apparement l'abréviation la plus exacte est 'FPAA' : Field-Programmable Analog Array', mais le terme n'est connu que dans un cercle très restreint de spécialistes du domaine)
(MAX11300 = SPI, MAX11301 = I2C) 6,87EUR
Présentation (EDN) du MAX11300: https://www.google.com/url?sa=t&rct=j&q ... yKpyL7KLw3
Datasheet : https://datasheets.maximintegrated.com/ ... X11300.pdf
Logiciel de paramétrage : https://pdfserv.maximintegrated.com/en/an/UG6040.pdf
Break out board (23$) https://www.mikroe.com/pixi-click
Comment utiliser le MAX11300 pour CV In et CV Out : http://community.axoloti.com/t/max11300 ... v-out/1568
Attention, les DAC du MAX11300 sont un peu bruyants (ne pas utiliser pour générer des signaux qui pourraient significativement influencer la qualité du son)

À la place, utiliser des DACs standard ou des composants de calibration de haute précision :
https://www.maximintegrated.com/en/prod ... n-ics.html

Potentiomètres numériques (E²pots)
http://www.ti.com/data-converters/digit ... rview.html
https://www.maximintegrated.com/en/prod ... eters.html

Datasheet MAX5408 (log) : https://datasheets.maximintegrated.com/ ... AX5411.pdf

Applications notes digital potentiometers :
https://www.maximintegrated.com/en/prod ... ideas.html
https://www.analog.com/media/en/technic ... N-1291.pdf
https://www.analog.com/media/en/technic ... N-1121.pdf
http://ww1.microchip.com/downloads/en/a ... 01316a.pdf
http://ww1.microchip.com/downloads/en/D ... 02017D.pdf
https://www.onsemi.com/pub/Collateral/AND8414-D.PDF
https://home.zhaw.ch/~kunr/ETP/ETP2011/digipot_apps.pdf
https://www.maximintegrated.com/en/desi ... /1956.html
https://www.electroschematics.com/learn ... tiometers/

Composants à 1024 positions (12 bits) :
https://fr.rs-online.com/web/c/semi-con ... lsrc=aw.ds

Multiplexeurs analogiques (CD4053) et interrupteurs analogiques (CD4066)
http://www.ti.com/lit/ds/symlink/cd4053b.pdf
http://www.ti.com/lit/ds/symlink/cd4066b.pdf
Des versions améliorées du 4066 comme le MAX4066 ($3,3) ou le ANT4066 http://www.ant-audio.co.uk/index.php?ca ... ry=ant4066



2-3 autres suggestions pour finir (ce post)^^
Soigner aussi les alims : les 78XX et 79XX sont assez bruyants, et ce n'est pas absurde de les remplacer par des composants plus modernes.
Idem pour les ampli-ops. Plus de 40 ans après la conception du Formant, on a des composants intégrés nettement plus performants qu'à l'époque.
Enfin, ajouter des filtres HF aux E/S analogiques est aussi une bonne pratique.


Eric
fait du bruit...
Avatar de l’utilisateur
F1OAT
Electrolab::Membre
Messages : 69
Enregistré le : 04 mars 2017, 19:28
Contact :

Re: Synthé modulaire DIY à modélisation analogique

Messagepar F1OAT » 12 août 2020, 09:43

Bonjour,

Merci, top pour numériser un synthé analogique.
Je ne connaissais pas les digipots.

J'avance dans le projet, et je me suis rapproché du projet Polymod2 : https://hackaday.io/project/162812-poly ... ions-title
Pas mal de tests ces derniers jours sur RPi-4 avec vcvcrack et Pure Data.

Finalement, je pars sur Pure Data :
- complètement ouvert avec des capacités de communication vers l'extérieur déjà implémentées (RS-232, TCP, UDP, Midi, OSC)
- très puissant au niveau programmation
- il y a des blocs évolués dispos ici : https://www.automatonism.com/the-software
- économe en charge CPU (6% pour un patch de base, alors que c'est 250% avec vcvrack)

Beaucoup de temps à tâtonner pour comprendre le fonctionnement de PD, jusqu'à ce que je tombe sur https://puredata.info/docs/manuals/pd/
Après quelques heures de pratique, je me débrouille bien.

J'ai analysé 2 projets similaires, https://github.com/alexdrymonitis/3dPd et http://www.openmusiclabs.com/projects/r ... index.html
Le code de 3dPd est très complexe car il gère aussi toute une partie de la logique de scan des I/O. Simple en language procédural, mais en langage PD, c'est touchy!

Bref, je suis reparti sur une nouvelle implémentation avec un objectif de simplification.
Le patchbay dynamique fonctionne, avec une gestion en douceur des transitions, et quelques précautions pour économiser le CPU.
Je gère aussi la capacité de mettre plusieurs connexions sur une même entrée, en additif.

CI-dessous mon patch de test :

2020-08-12 09_25_18-test1.pd  - _home_pi_Documents_Pd_test1.png
2020-08-12 09_25_18-test1.pd - _home_pi_Documents_Pd_test1.png (54.07 Kio) Vu 14 fois


En gros, les objets "module-in~ #module #port timer" et "module-out~ #module #port" permettent de définir les connecteurs.
L'intégration avec Automatonism consiste à brancher ces objets
Ensuite, en envoyant des messages "connect/disconnect #dst-module #dst-port #src-module #src-port" à "matrix", on définit le câblage en dynamique.

Côté HW, j'ai trouvé un pack de 10x Arduino Nano pour 33€.
L'idée est d'en mettre un par module Eurorack, avec un backplane en I2C connecté au RPi.
Le nb d'I/O devrait suffire pour la plupart des modules, donc pas besoin d'ajouter des mux ou de la logique externe.
Et dans le RPi, un bout de soft pour générer les messages connect/disconnect vers PD en lisant le bus I2C.
A jouter, les messages pour les potars, les LEDs et les switchs.

A suivre !

Retourner vers « Les Projets »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité