Quand la musique est bonne !

Bonsoir et pardon pour le titre, j'aurais pus faire plus explicite :grin:

Je me suis monté un petit clavier capacitif haute technologie, en un alliage très rare (aluminium-carton :grin:)

Il répond bien sous la fenêtre (Oui, celle qui indique plein de truc...) mais je ne sais pas quoi en faire, alors je me suis dit qu'on pourrais peut-être récupérer tout ça pour le passer sous Audacity ou autre logiciel musical, mais comment faire ? Je peut passer directement par l'arduino ou il me faut encore un truc externe que je ne possède probablement pas ?

Bizounours:
Bonsoir et pardon pour le titre, j'aurais pus faire plus explicite :grin:

Je me suis monté un petit clavier capacitif haute technologie, en un alliage très rare (aluminium-carton :grin:)

Il répond bien sous la fenêtre (Oui, celle qui indique plein de truc...) mais je ne sais pas quoi en faire, alors je me suis dit qu'on pourrais peut-être récupérer tout ça pour le passer sous Audacity ou autre logiciel musical, mais comment faire ? Je peut passer directement par l'arduino ou il me faut encore un truc externe que je ne possède probablement pas ?

bonsoir
Il n'y a pas que le titre qui ne soit pas explicite :grin:
Essaye d'etre plus clair dans tes souhaits/explications

J'aimerais me servir de mon arduino comme d'un clavier (5 touches, certes, mais quand même) pour faire de la musique, malheureusement mes connaissances dans le milieu sont plus que restreinte :roll_eyes:

Avec un piezzo sur l'arduino, tu peux faire de la "musique"
http://www.arduino.cc/en/Tutorial/melody

Je pensais plus a m'en servir comme clavier MIDI, pourvoir sous un logiciel de MAO enregistrer des loop, changer les notes ect ect ! :smiley:

Bizounours:
Je pensais plus a m'en servir comme clavier MIDI, pourvoir sous un logiciel de MAO enregistrer des loop, changer les notes ect ect ! :smiley:

bonjour
si tu es sous windows (ça doit exister aussi poour linux et mac)

driver soft serial to midi
http://www.spikenzielabs.com/SpikenzieLabs/Serial_MIDI.html

et pour le midi sur arduino
http://playground.arduino.cc/Main/MIDILibrary#.Uz5oildtUUE

Artouste:
bonjour
si tu es sous windows (ça doit exister aussi poour linux et mac)

driver soft serial to midi
http://www.spikenzielabs.com/SpikenzieLabs/Serial_MIDI.html

et pour le midi sur arduino
http://playground.arduino.cc/Main/MIDILibrary#.Uz5oildtUUE

Gloire a toi Ô grand Artouste :grin: je commencé a désespérer, mais je pensais pas que serial était un standard mais plus le nom de la communication, j’ai même pas penser a faire le lien :cold_sweat:

la solution la meilleur marché serait de passer par le port série USB de l'arduino, et d'utiliser un pilote "Serial MIDI" sur l'ordi.

XavierMiller:
la solution la meilleur marché serait de passer par le port série USB de l'arduino, et d'utiliser un pilote "Serial MIDI" sur l'ordi.

oui c'est ce que fait le lien cité plus haut , mais si l'on veux jouer "un peu serieusement" avec du midi , l'ideal est "d'investir" sur
une vraie interface hard midi , perso j'utilise ça depuis qq années
http://www.creative.com/emu/products/product.aspx?pid=19089

mais on trouve des clones asia moins onereux
http://www.dx.com/s/usb+midi+cable

les interfaces "chinoises", j'en ai soupé : elles ne fonctionnent pas bien et sont instables. Il faut investir au moins 20 EUR pour quelque chose de potable (comme ta emu, une roland, une m-audio, esi, ...)

XavierMiller:
les interfaces "chinoises", j'en ai soupé : elles ne fonctionnent pas bien et sont instables. Il faut investir au moins 20 EUR pour quelque chose de potable (comme ta emu, une roland, une m-audio, esi, ...)

J'en ai acheté une pour ma niece , l'utilisation n'est pas tres soutenu , mais à priori ça fait "le boulot"
perso je n'ai jamais eu à me plaindre de mon EMU (sauf qu'elle filtre l'active sensing)

pour du midi simple, ça passe peut-être, mais pas avec des system exclusive...

XavierMiller:
la solution la meilleur marché serait de passer par le port série USB de l'arduino, et d'utiliser un pilote "Serial MIDI" sur l'ordi.

Comme l'a proposer Artouste en somme ?

AlienArea51:
Bonjour
Il y a également ça , si tu peux investir un peu :
[/url]

Je n'ai pas envie d'investir, je ne suis pas musicien du tout, c'est plus pour le coté marrant de la chose, voir comment ça ce comporte, et si ça me plait je regarderais pour faire un clavier en cannette :slight_smile:

AlienArea51:
Bonsoir

Quote from: AlienArea51 on Today at 12:00:25 pm
Bonjour
Il y a également ça , si tu peux investir un peu :
[/url]

Je n’ai pas envie d’investir, je ne suis pas musicien du tout, c’est plus pour le coté marrant de la chose, voir comment ça ce comporte, et si ça me plait je regarderais pour faire un clavier en cannette smiley

Je ne suis pas musicien non plus :wink: :D,par contre ,très fan de Synthés et Guitares , j’avais proposé ces cartes dans le sens autonomie de la chose et flexibilité ,maintenant je comprends l’amusement :grin:je ne suis pas un demeuré :wink:
Mais tu vas vite comprendre qu’en t’orientant dans ce domaine (qui est génial) ,tu vas être vite limité …
C’est ton choix ,donc je le respecte :wink:
Maintenant le clavier en forme de canette , c’est cool :smiley: :smiley: (mais autonome c’est encore mieux )
le principale est de prendre du plaisir :wink:
Donc bon amusement
CDT
Will

J’ai toujours eu envie plus ou moins de me mettre au clavier :grin:

Par contre j’arrive a rien, j’ai DL la librairie MIDI, installer, j’ai mis mon code sur l’Arduino :

#include <MIDI.h>

// Simple tutorial on how to receive and send MIDI messages.
// Here, when receiving any message on channel 4, the Arduino 
// will blink a led and play back a note for 1 second.

#define LED 13   		    // LED pin on Arduino Uno
const uint16_t THRESHOLD = 50;

void setup()
{
    pinMode(LED, OUTPUT);
    MIDI.begin(4);          // Launch MIDI and listen to channel 4
    Serial.begin(57600);
}

void loop()
{   
  
    for (uint8_t i = 2; i < 7; ++i){
 
    /* Test si la "touche" a été appuyé ou non */
      if(touch_measure(i) > THRESHOLD)
        Serial.print('1');
      else
        Serial.print('0');
 
    //Serial.println(touch_measure(i), DEC);
 
    /* Sépare chaque bits */
    Serial.print(' ');
  }
 
  /* Sépare chaque lignes */
  Serial.println();
 
  /* Délai no-flood */
  delay(500);
    if (MIDI.read())                // If we have received a message
    {
        digitalWrite(LED,HIGH);
        MIDI.sendNoteOn(42,127,1);  // Send a Note (pitch 42, velo 127 on channel 1)
        delay(1000);		        // Wait for a second
        MIDI.sendNoteOff(42,0,1);   // Stop the note
        digitalWrite(LED,LOW);
    }
}

uint8_t touch_measure(uint8_t measurePin)
{
 
  /* Registre bas-niveau, DDR = port de configuration, PORT = port de sortie, PIN = port d'entrée */
  uint8_t xport = digitalPinToPort(measurePin);
  volatile uint8_t *ddr = portModeRegister(xport);
  volatile uint8_t *port = portOutputRegister(xport);
  volatile uint8_t *pin = portInputRegister(xport);
 
  /* Résultat de la mesure, Bitmask de la broche à mesurer */
  uint8_t cycles, bitmask = digitalPinToBitMask(measurePin);
 
  /* Décharge la capacité en contact avec la broche */
  *port &= ~(bitmask);     // Place la broche à LOW
  *ddr |= bitmask;         // Place la broche en sortie
  delayMicroseconds(1000); // Attend pour être sur que la capacité est déchargé
 
  /* Place la broche en entrée, sans résistance de pull-up ! */
  /* (La résistance de >1M ohms externe servira de résistance de pull-up) */
  *ddr &= ~(bitmask);
 
  /* Mesure le nombre de cycles CPU requis avant que la broche ne commute */
  for(cycles = 0; cycles < 256; ++cycles){
    if (*pin & bitmask) break; // Si la broche a commuter on quitte la boucle
  }
 
  /* Re-décharge la capacité en contact avec la broche
   * afin d'éviter tout parasitages d'une autre mesure sur une autre broche.
   * Dans le cas contraire il serait impossible de manipuler plus d'une touche "tactile" */
  *port &= ~(bitmask);
  *ddr |= bitmask;
 
  /* Retourne le résultat */
  return cycles;
}

j’ai aussi télécharger hairless midi-serial, il détecte bien une entrée avec l’Arduino sur le com3 mais affiche un message d’erreur :
+4.876 - Error: got unexpected data byte 0x30.
+4.876 - Error: got unexpected data byte 0x20.
+4.876 - Error: got unexpected data byte 0x30.
+4.876 - Error: got unexpected data byte 0x20.
+2.119 - Error: got unexpected data byte 0xd.
+2.119 - Error: got unexpected data byte 0xa.
ect ect

Les temps sont fictifs, mais c’est toujours dans cette ordre !
Puis en logiciel j’ai pris AriaMaestosa !

J'ai lu ici : Serial_MIDI

"This is the serial port that will be used for both serial TX and RX. Your micro-controllers serial port must be set to 57600 bps 8N1. (Even though MIDI is transmitted at 31250 bps, the serial port is set at a faster baud rate to help minimize any lag time.)"

J'ai supposé que ? (et il ne propose pas le 31250 dans Hairless :~
Et dans midi-out j'ai que microsoft GS wavetable Synth... Problème de pilotes ? Je n'arrive pas a installer MYokeNT

EDIT : Au final j'ai mis putzlowits midi mapper + loopbe1 et j'ai bien une sortie sur Hairless et un IN sur Aria, reste a trouver qu'est-ce qui cloche entre l'arduino et Hairless :smiley:

Hello,

Il faut mettre le serial de l'arduino à 31250, et MYokeNT n'est pas le bon logiciel : il te faut un pilote "Serial MIDI", MYokeNT est un système de "ports virtuels".

A moins que tu ne fasses un logiciel 'client' qui lit ce qui vient de l'Arduino et que tu le transmettes via MidiYoke.

Je croit que j’en veux trop, a chaque fois que je pense faire quelque chose, j’ai pas le niveau :grin:

Est-ce que c’est l’Arduino qui dit, si appuie sur touche (1-5) alors fait note (1-5) ou alors il dit, si appuie sur touche (1-5) alors envoie 10000 ou 01100 (comme dans le moniteur série actuellement) selon les touches et après Hairless ou le logiciel (Aria) ce débrouille pour interpréter ?