Table des matières
Midi Drum
Deuxième session - dimanche 11-03-18 et samedi 12-03-18
Petite session, un peu pris de cours par les événements extérieurs mais on a quand même avancé!
Objectifs initiaux
- Améliorer le système de captation
- Régler des intervals entre les attaques et les notes MIDI
- Déboguer les problèmes de vélocité - en cours de réflexion
- Concevoir un système de connection (capteurs/câbles et câbles/piezos) solide et ergonomique - en attente de matos
- Définir une interface ergonomique, simple d’utilisation et modulaire
- Définir les standards
- Point matos - commande
- Option lumière
- Réglage directe des seuils (via bouton et potentiomètre) - abandonné
- Réglage directe des notes MIDI (via bouton et potentiomètre) - abandonné
- Tester les 4 différents diamètres de capteur piezo sur la batterie et sur le cajun
- Teste du SHIELD-MIDI de Olimex (solution n°2)
Améliorer le système de captation
Régler des intervals entre les attaques et les notes MIDI
Pour avoir une précision et une réaction plus fidèle il faut augmenter la taille du buffer (code).
//#define SIGNAL_BUFFER_SIZE 100// #define SIGNAL_BUFFER_SIZE 300 #define PEAK_BUFFER_SIZE 40 #define MAX_TIME_BETWEEN_PEAKS 5 #define MIN_TIME_BETWEEN_NOTES 5
En pratique, le problème se pose à cause de la mémoire SRAM (Static Read Access Memory) du Arduino Nano qui n’est pas assez puissante. Il faudrait utiliser comme alternative un Arduino Mega pour passer de 2K à 8K
Arduino Mega
Déboguer les problèmes de vélocité - en cours de réflexion
Je pense pour l’instant laisser tomber les histoire de vélocitée qui me dépassent un peu… On va dire que ce sera pour la V2 quand on se sera fait un max de pognon avec la V1 quoi…
Concevoir un système de connection (capteurs/câbles et câbles/piezos) solide et ergonomique
Coté capteur, connecteur jack 3.5mm stéréo femelle
Coté interface, connecteur jack 3.5mm stéréo femelle pour boîtier
Entre l’interface, un cordon jack 3.5mm stéréo
Définir une interface ergonomique, simple d’utilisation et modulaire
Définir les standards
Concernant les connections nous utiliserons le format jack 3.5mm stéréo. Nous pourrions avoir recours à l’utilisation de câble mono mais je reste convaincu que le stéréo (un câble en plus) nous laisse davantage de liberté quant à la possibilité de faire évoluer nos petites machines. L’idée est de pouvoir utiliser entre l’interface du midi-drum et les capteur n’importe quel câble jack 3.5mm stéréo mâle/mâle.
Fil rouge = Connection avec le positif du piezo Fil blanc = Non utilisé Fil dénudé = Masse
Coté boitier, nous sommes tombé d’accord pour l’utilisation du standard Eurorack utilisé dans le monde des synthétiseurs modulaires. Pratique puisque… modulaires, alimentation simple et puis je viens de le découvrir, attention, retenez votre souffle… Le format Eurorack est Open-Source!
Eurorack modules sont communément reconnus comme l'utilisateur plus populaire construit format synthé modulaire. Eurorack est open source, ce qui signifie que n'importe qui peut utiliser le format de mesure pour créer leurs propres modules uniques. Ce format étiqueté comme espacement horizontal ou HP pour faire court. Cas Eurorack viennent dans des tailles variées de HP, vous permettant de créer votre propre sélection personnelle de modules.
Il reste pas mal de recherche à faire… Quelques infos : https://sdiy.info/wiki/Eurorack
Point matos - commande
Côté boîtier:
- 1 arduino mega
- 5 connecteurs femelle 3.5mm jack stéréo à monter sur boitier -0,65 pièce-
- 1 connecteur DIN 5 pin (MIDI) à monter sur boitier -4.10 pièce-
- 5 diodes en stock à l’atelier
- 5 résistances (pour les piezo) en stock à l’atelier
- 3 sélecteurs rotatif 12 positions -5,24 pièce -
- 6 résistances 220 en stock à l’atelier
- 5 led en stock à l’atelier
Côté capteur :
- 5 piezos en stock à l’atelier
- 5 connecteurs femelle 3.5mm jack stéréo -0,40 pièce-
Câbles :
- Liste à puce5 câbles jack 3.5mm mâle/mâle coudé d’un coté - 6,85 pièce-
Option lumière
Première session - samedi 03-02-18
objectifs :
- Construire sur bread-board un circuit comprenant 5 entrées pour les piezos
- Lire les entrées analogiques de l’arduino nano
- Etablir la communication MIDI entre notre arduino et le Korg-Minilogue
- Tester le code arduino
- Connecter les piezo de la batterie au MIDI Drum
- Tester le dispositif
- Proposer une séance d’écoute publique le dimanche 04-02-18
Construire sur bread-board un circuit comprenant 5 entrées pour les piezos:
Les 5 résistances connectées aux piezos ont une valeur d’1MΩ Les 2 résistances du connecteur MIDI on une valeur de 220Ω Les diodes sont du type zener 5.1V
Tester et lire les entrées analogiques de l’arduino nano (code)
// the setup routine runs once when you press reset: void setup() { // initialize serial communication at 9600 bits per second: Serial.begin(9600); } // the loop routine runs over and over again forever: void loop() { // read the input on analog pin 0: int sensorValue2 = analogRead(A2); int sensorValue3 = analogRead(A3); int sensorValue4 = analogRead(A4); int sensorValue5 = analogRead(A5); int sensorValue6 = analogRead(A6); // print out the value you read: Serial.println(sensorValue2); Serial.println(sensorValue3); Serial.println(sensorValue4); Serial.println(sensorValue5); Serial.println(sensorValue6); // delay in between reads for stability delay(10); }
Etablir la communication MIDI entre notre arduino et le Korg-Minilogue Utilisation du canal n°1, vérifier sur le Minilogue que le canal 1 est sélectionné
Test du code arduino (code)
Le sketch d’Evan Kale fonctionne plutôt bien: https://github.com/evankale/ArduinoMidiDrums/blob/master/ArduinoMidiDrums.ino
- Réglage des seuils (THRESHOLD) possible
- Réglage des notes MIDI possible
- Réglage de la taille du buffer possible
- Réglage de l’interval entre les attaques possible
- Réglage de l’interval entre les notes possible
- La vélocité reste un point d'interrogation
Un Autre code incluant la vélocité (à tester): https://beammyselfintothefuture.wordpress.com/2015/01/28/sensing-hit-velocity-and-quick-subsequent-hits-of-a-piezo-with-an-arduino-teensy/
Connecter les piezo de la batterie au MIDI Drum
Nous avons connecté les piezos à l'arrache avec du chatterton, en comparaison aux efforts fournis pour cette étape les résultats sont plutôt satisfaisants. Les piezos sont connectés aux entrées analogiques (A2-A3-A4-A5-A6) du arduino via des câbles (de mauvaise qualité - à changer) et pinces crocodil
Tester le dispositif pour ensuite définir les modification et améliorations à effectuer sur le dispositif.
- Réglage directe des seuils (via bouton et potentiomètre)
- Réglage directe des notes MIDI (via bouton et potentiomètre)
- Déboguer les problèmes de vélocité
- Réglage des intervals entre les attaques et les notes MIDI
- Tester les 4 différents diamètres de capteur piezo
- Améliorer (mousse) et protéger les capteurs piezo (résine)
- Concevoir un système de connection (capteurs/câbles et câbles/piezos) solide et ergonomique
Proposer une séance d’écoute publique le dimanche 04-02-18 à la baleine
Extrait de la séance d’écoute. Merci Gwendal!! https://soundcloud.com/gwendalbriec/klen-datu-improvisation-au-petit-dejeuner-sonore-de-la-baleine
MATOS
1) Shield Midi DEV-12898 de Sparkfun (commande passée)
https://www.gotronic.fr/art-shield-midi-dev-12898-24817.htm
Prix: 20.90€
Avantage: très bien documenté (https://learn.sparkfun.com/tutorials/midi-shield-hookup-guide) - 2 potentiomètres et trois boutons permettent certains controles en temps réel - entré + sorti midi - chainable (possibilitée d'utiliser plusieur interfaces dans le même système)
Inconvénient: seulement 3 entrées analogique disponible et donc trois piezos…
2) SHIELD-MIDI de Olimex (commande passée)
https://www.olimex.com/Products/Duino/Shields/SHIELD-MIDI/open-source-hardware
Prix: 14.90€
Avantage: Comporte 5 entrées configurée pour recevoir du piezo - une entré pour y connecter une série de bouton poussoir (sélection de presets par exemple) - Entré + sortie Midi + Midi thru - chainable (possibilité d'utiliser plusieurs interfaces dans le même système)
Inconvénient: Très peu de documentation technique
3) Drum Kit Kit de SpikenzieLab
Prix: de 49.95$ à 69.95$ Avantage: Plug&Play - Plusieurs solutions Inconvénient: Prix abusé (de mon point de vu) - Besoin d'un adaptateur USB-FTDI pour reprogrammer la carte - un seul connecteur midi out
4) MIDI Drum made in Home (commande passée)
Prix: Variable à partir de 12 euros (5 piezo compris)
Des exemples et il y en a plein d'autres:
https://todbot.com/blog/2006/10/29/spooky-arduino-projects-4-and-musical-arduino/
http://www.beginnertopro.in/post/318
Avantage: On peut faire un peu ce qu'on veux (ajouter d'autres capteurs) - système sur mesure - prix - bonne documentation - ajout de potentiomètres de réglage de la sensibilité
Inconvénient: temps de développement - un seul connecteur midi out (même si une entrée midi reste possible mais c'est plus chiant)
TOTAL commande
(Gotronic 68,55€) + (Olimex 21,41€) = 89,96 €