Skip to main content

Historique: usb-midi-fw

Aperçu de cette version: 9

Création en cours ...

Présentation :

Le Midisport Uno est un câble qui relie un contrôleur MIDI (comme un synthétiseur) à un port usb sur votre ordinateur. Ensuite, vous pouvez utiliser un séquenceur MIDI comme Rosegarden afin d'enregistrer et de modifier des partitions musicales. L'avantage d'un Midisport, est que vous n'avez pas besoin d'une carte son pour les appareils MIDI (avec une sortie MIDI exprès), et peut se connecter à n'importe quel ordinateur qui dispose d'une entrée usb libre.

Voici le Midisport Uno 1x1, celui qui a été utilisé pour les tests.

Image



Ce système m'a permis de connecter mon vieux synthétiseur YAMAHA PortaSound PSS-480. Un futur test avec une batterie électronique sera à venir.

Le système qui a été utilisé est une ubuntu studio 7.10.


Pré-requis :

La mise en place de ce dispositif n'est pas compliqué. Le Midisport Uno nécessite un firmware afin de chargées le périphérique avant de faire quoi que ce soit. En d'autres termes, il vous faut :
(a) un fichier firmware. Le site du firmare est disponible ici.
(b) un programme pour charger le firmware. fxload en l'occurence.

/ ! \ IMPORTANT !!! / ! \
A voir pour les autres distributions mais l'usbfs sous Ubuntu n'est pas activé par défaut dans Gutsy. Pour résoudre ce problème, vous devez éditer le script d'initialisation 'mountdevsubfs.sh' :

Copy to clipboard
sudo gedit /etc/init.d/mountdevsubfs.sh


aller à la ligne 42 environ, vous obtiendrez ça :

Code original :
Copy to clipboard
# # Magic to make /proc/bus/usb work # #mkdir -p /dev/bus/usb/.usbfs #domount usbfs "" /dev/bus/usb/.usbfs -obusmode=0700,devmode=0600,listmode=0644 #ln -s .usbfs/devices /dev/bus/usb/devices #mount --rbind /dev/bus/usb /proc/bus/usb



et décommenter(supprimer les commentaires, c'est à dire supprimer les '#' devant les lignes) comme les lignes suivantes :

Code final :
Copy to clipboard
# # Magic to make /proc/bus/usb work # mkdir -p /dev/bus/usb/.usbfs domount usbfs "" /dev/bus/usb/.usbfs -obusmode=0700,devmode=0600,listmode=0644 ln -s .usbfs/devices /dev/bus/usb/devices mount --rbind /dev/bus/usb /proc/bus/usb



Ensuite sauvegarder et rebooter votre machine ou relancer le service par la commande :

Copy to clipboard
sudo /etc/init.d/mountdevsubfs.sh start



Les pré-requis sont fini, passons à l'installation et configuration.


Installation :

Nous allons télécharger le firmware et le décompresser dans un répertoire créé sous l'arborescence /etc/firmware

Copy to clipboard
cd /etc sudo mkdir /etc/firmware cd firmware # Ensuite téléchargez le fichier dans le répertoire courant wget http://ovh.dl.sourceforge.net/sourceforge/usb-midi-fw/midisport-firmware-1.2.tar.gz # Décompresser le tar xvzf midisport-firmware-1.2.tar.gz # Pour simplifier les instructions prochaine, si vous souhaitez, copier votre firmware(pour ma part : MidiSport1x1.ihx) dans /etc/firmware sudo cp /etc/firmware/midisport-firmware-1.2/MidiSport1x1.ihx /etc/firmware/



Maintenant nous allons installer 'fxload' simplement par la commande :

Copy to clipboard
sudo apt-get install fxload


Simple non ?


Passons maintenant au chargement du firmware.


Configuration :

On suppose que votre câble Midisport est branché sur l'USB. Nous allons lister la liste des périphériques USB de votre ordinateur :

Copy to clipboard
lsusb


Ce qui vous donne une liste de ce style la (on a pas forcément tous la même 😉)

Copy to clipboard
Bus 005 Device 002: ID 046d:c041 Logitech, Inc. Bus 005 Device 001: ID 0000:0000 Bus 002 Device 001: ID 0000:0000 Bus 004 Device 001: ID 0000:0000 Bus 006 Device 001: ID 0000:0000 Bus 003 Device 001: ID 0000:0000 Bus 007 Device 004: ID 04a9:1086 Canon, Inc. Bus 007 Device 003: ID 0763:1011 Midiman Midisport 1x1 Bus 007 Device 001: ID 0000:0000 Bus 001 Device 001: ID 0000:0000


Seulement une ligne nous intéresse qui possède normalement au moins 'Midiman' :

Copy to clipboard
Bus 007 Device 003: ID 0763:1011 Midiman Midisport 1x1


Un peut de théorie 😀 :

Nous pouvons accéder a un périphérique USB par ce chemin la (car presque tous périphériques sous système GNU/Linux ou Unix passe par un fichier) :

Copy to clipboard
/proc/bus/usb/BUS/DEVICE


soit dans notre cas en remplacement BUS et DEVICE :

BUS = 007
DEVICE = 003

Copy to clipboard
/proc/bus/usb/007/003


Ces derniers numéros sont susceptible de changer suivant ou vous brancher votre câble. Donc faite attention 😊

Aller voilà le grand test final, nous allons taper cette commande qui va charger le firmware voulu sur le chemin d'acces du périphérique :

Copy to clipboard
sudo fxload -I /etc/firmware/MidiSport1x1.ihx -D /proc/bus/usb/003/004


L'option '-I' est le chemin d'accès du fichier du firmware dans mon cas (MidiSport1x1.ihx), et l'option '-D' correspond au périphérique.

Si vous voyez une LED clignoter sur le Midisport (Normalement la LED marqué USB à coté de celle-ci), ou si vous avez brancher votre périphérique MIDI (synthétiseur ou autre), ça devrait flasher de partout 😀 (Normalement la LED marqué Midi IN), c'est normale c'est les synchronisation MIDI, l'horloge de synchronisation.

Si vous avez ces derniers alors vous avez réussi et tout fonctionne correctement (Du moins la liaison USB <=> Midisport est établie).


Nous allons effectuer un test sous Rosegarden.


Test :

Normalement en lançant Jack vous devriez dans l'onglet midi voir apparaître le Midisport :

Image


Et quand vous avez lancer Rosegarden et configurer Jack (Connexion du Midisport à Rosegarden) ou en passant par Rosegarden : Composition => Studio => Gestion des périphériques Midi) vous obtiendrez qqchose du style :

Dans Jack :
Image


Et enfin Rosegarden, avec une petite partie joué sur mon synthétiseur (c'est au clair de la lune 😂) :

Rosegarden avec Midisport
Rosegarden avec Midisport



Si ça a fonctionné c'est cool, maintenant nous allons ajouter un script pour que le Midisport soit reconnu a chaque lancement de l'ordinateur.


Script Init :

Aller dans le répertoire suivant :

Copy to clipboard
cd /usr/local/bin/


Et enregistrer le script dans le fichier :

Copy to clipboard
sudo gedit midisportsetup


/ ! \ IMPORTANT !!! / ! \
Penser a remplacer la ligne suivante :
Copy to clipboard
fw=/etc/firmware/MidiSport1x1.ihx

Par votre bon fichier du firmware.
Dans mon cas c'est : fw=/etc/firmware/MidiSport1x1.ihx

-- Début Script --
Copy to clipboard
#!/bin/bash #your firmware ... taken from usbmidi fw=/etc/firmware/MidiSport1x1.ihx #get proc address bd=$( lsusb | grep Midisport | cut -d ' ' -f 2,4 | sed -e 's/ /\//' -e 's/://' ) dev=/proc/bus/usb/$bd #load firmware echo fxload -I $fw -D $dev fxload -I $fw -D $dev

-- Fin Script --

Pensez à mettre les bons droits sur le fichier :
Copy to clipboard
# Droit d'exécution sudo chmod 775 /usr/local/bin/midisportsetup # Lancement du script à la main sudo /usr/local/bin/midisportsetup


Et enfin pour qu'il ce lance à chaque boot de la machine éditer le fichier '/etc/rc.local' :

Copy to clipboard
sudo gedit /etc/rc.local


Et ajouter la ligne :
Copy to clipboard
sudo /usr/local/bin/midisportsetup


Comme suis :
Copy to clipboard
# # By default this script does nothing. sudo /usr/local/bin/midisportsetup exit 0



Normalement vous relancer votre machine et le Midisport devrait être détecté tout seul (LED Clignotante).


Voilà c'est fini. En espérant que cela vous aide.



Pour information le firmware utilisé est le :
For systems using udev: version 1.2, released 2006-03-06.


Et supporte ce matériel :
  • MidiSport 1x1
* MidiSport 2x2
* MidiSport 4x4
* MidiSport 8x8
* KeyStation (old models: 49, 61)
* Oxygen
* Radium49
* Radium61
* Uno

Historique

Information Version
Vendredi 03 décembre 2010 00:07 olinuxx 14
Afficher
Jeudi 02 décembre 2010 23:51 olinuxx ptits trucs 13
Afficher
Jeudi 02 décembre 2010 23:37 olinuxx ptits trucs 12
Afficher
Jeudi 15 avril 2010 11:57 yanshee 11
Afficher
Mercredi 12 mars 2008 09:16 iData Mise en page des titres 10
Afficher
Lundi 03 mars 2008 18:33 iData 9
Afficher
Lundi 03 mars 2008 18:32 iData 8
Afficher
Lundi 03 mars 2008 18:29 iData 7
Afficher
Lundi 03 mars 2008 18:13 iData 6
Afficher
Lundi 03 mars 2008 17:48 iData 5
Afficher
Lundi 03 mars 2008 17:28 iData 4
Afficher
Lundi 03 mars 2008 17:20 iData 3
Afficher
Lundi 03 mars 2008 13:51 iData 2
Afficher
Lundi 03 mars 2008 11:54 Trinine 1
Afficher
  • 1
  • 2 (en cours)
  • »