Que valent les interfaces USB/MIDI « Low Cost » ?

Achat d’un adaptateur USB/MIDI d’entrée de gamme (Low cost) ou une d’une marque réputée pour faire de la MAO (musique assistée par ordinateur) ? Quel choix cornélien !

L’interface MIDI (Musical Instrument Digital Interface) est toujours d’actualité, surtout pour les instruments et périphériques de musique électroniques. Si vos appareils MIDI ne possèdent pas d’interface USB et que vous voulez les connecter à un ordinateur ou réaliser un MIDI DIY (Do It Yourself) basé sur Arduino, Raspberry Pi, etc., il faudra faire l’acquisition d’un adaptateur (interface active) USB/MIDI.

Mais, lequel ? Devons-nous céder aux chants des sirènes « Low cost » pour privilégier notre porte-monnaie ou choisir la qualité et la conformité à la norme MIDI avec le prix qui va avec en prenant un produit d’une marque reconnue ?

Comme toujours, il y a plusieurs réponses possibles en fonction que ce que l’on veut faire et du budget que l’on peut – est prêt à y consacrer.

Un adaptateur USB/MIDI (1xIN + 1xOUT) auto-alimenté et fiable de marque reconnue coûte de +/- 29 à 40 € (TTC et hors frais de livraison), par exemple le M-Audio MidiSport Uno compatible avec les OS libres GNU/Linux (ID 0763:0150 Midiman M-Audio Uno) et propriétaires MacOS – Windows, et aussi ceux de Yamaha, Midiman/M-Audio, Edirol/Roland, ESI, Emagic, etc.

Interface M-AUDIO UNO : USB / MIDI 1xIN/1xOUT auto-alimentée via USB, Plug and Play / Compatible GNU/Linux, MacOS et Windows

MAINTENANT, un modèle « Low cost » auto-alimenté sans marque ou de marque exotique et à la fiabilité hasardeuse coûte de +/- 5 à 15 € (TTC et hors frais de livraison), par exemple Adaptateurs USB/MIDI (une très longue liste) compatibles GNU/Linux, MacOS et Windows. Attention aux arnaqueurs qui vendent ces produits « Low cost » au même prix voire plus cher que ceux de marque reconnue !

Alors, le choix semble(rait) évident pour acheter une version « Low cost », mais nous allons voir que « pas cher » rime toujours avec le « non respect » électrique de la norme MIDI comme la non isolation par photocoupleur du MIDI-IN, un traitement aléatoire de certains messages MIDI comme les SysEx – System Exclusive, et un câblage interne qui laisse à désirer.

Toutes les versions « Low cost » sont basées sur +/- le même design (extérieur et intérieur) et semble provenir de la même source de fabrication chinoise même si le packaging diffère d’un fournisseur à un autre.
Ces adaptateurs USB/MIDI « Low cost » sont facilement identifiables :
– Boîtier noir opaque,
– Inscription MIDI – clé de Sol et USB en blanc au milieu,
– 3 LED dont 1xRouge (Alim USB) – 1xJaune (IN) et 1xVerte (OUT) en haut (parfois dans un autre ordre !), et
– les 3 Câbles USB/MIDI dont les gaines plastiques sont transparentes laissant clairement voir le blindage torsadé de couleur argentée.

Un Adaptateur USB/MIDI (1xIn – 1xOut) auto-alimentée d’entrée de gamme (sans marque ou exotique) parmi des dizaines

♦ Analyse des Adaptateurs USB/MIDI auto-alimentés « Low cost »

Ayant récemment eu des déconvenues (livraisons perdues ou jamais expédiées même après 2 mois et de nombreuses relances) avec du matériel commandé auprès de fournisseurs basés en Chine, j’ai décidé de passer commande auprès d’un fournisseur local ayant en stock le produit choisi.

J’ai donc passé commande auprès d’InforMatos 76 à Dieppe d’un Adaptateur « Low cost » USB vers MIDI 5-Pin au prix de 13,90 € (TTC et hors frais de livraison) que j’ai reçu quelques jours plus tard par la poste à mon domicile. Une fois l’emballage ouvert, j’ai trouvé le produit dans un simple sachet en plastique avec une petite notice très succincte en anglais.

Voyons par l’image l’intérieur de cet Adaptateur USB/MIDI « Low cost »

Il n’y a aucune vis et le boîtier en plastique est en deux parties. Pour l’ouvrir, j’ai du forcer la séparation de celles-ci en exerçant une (très) forte traction entre les bords du boîtier au niveau des manchons des câbles USB et MIDI. Lors de cette opération certains des quatre tétons se sont cassés. Pour réassembler le boîtier, j’ai utilisé un moyen simple pour faire tenir les deux parties : un élastique (mais aussi quelques petits points de colle peuvent convenir).

Adaptateur USB/MIDI « Low Cost » sans marque dans un boîtier noir opaque et son circuit imprimé simple face JT-M4C

À l’intérieur, toute l’électronique tient sur un circuit imprimé simple face et les fils des câbles USB/MIDI sont directement soudés sur celui-ci (point de connecteur entre les trois câbles et le circuit imprimé).

La puce électronique U2 (le seul circuit intégré présent) est protégée par une résine d’enrobage noire de forme ronde (à gauche sur l’image ci-dessous). Pour information, dans le procédé intitulé COB (chip-on-board), la puce à semiconducteurs nue est collée sur une carte de circuit imprimé, puis elle est reliée au circuit à l’aide de fils électriques très fins. Il est donc nécessaire d’enrober la puce afin de protéger les fils et les structures très fines sur la puce.

Mais, les emplacements réservés pour U1 (circuit intégré DIP-4, sûrement un optocoupleur), D1 (diode) et R5 (résistance) sont vides. Les résistances R11 (0 Ω) en série avec R10 (4,7 Ω) viennent court-circuiter ces composants manquants.
Avec ce type de montage, il y a grand danger pour les équipements électroniques qui vont utiliser cet adaptateur USB/MIDI « Low cost ». Comme nous allons le voir, au moins U1 – D1 – R5 sont obligatoires pour garantir le respect de la norme MIDI de MIDI-IN en lui assurant une isolation galvanique. On parle d’isolation galvanique entre deux circuits électriques ou électroniques, lorsqu’il n’y a aucune liaison conductrice (fil électrique, châssis métallique, etc.).

Adaptateur USB/MIDI « Low Cost » sans marque avec boîtier ouvert coté composants SMD mettant en lumière le non respect de la norme MIDI : pas d’optocoupleur U1 sur MIDI-IN d’où aucune isolation galvanique sur MIDI-IN !

Comme il n’existe aucune documentation technique disponible pour ces adaptateurs USB/MIDI « Low cost », je dois déterminer à quoi correspond la puce électronique U2. Pour ce faire, je connecte la fiche USB de cet adaptateur à un ordinateur sous GNU/Linux MINT 18.1.

Puis dans un Terminal (touches CTRL + ALT + T), je lance la commande

lsusb – qui affiche entre autres choses

Bus 001 Device 004: ID 1a86:752d QinHeng Electronics CH345 MIDI adapter

Mon adaptateur USB/MIDI « Low cost » tel que reconnu par le contrôleur USB 2.0 et le noyaux Linux 4.4.x de mon ordinateur.

♦ Le CH345 de WCH-IC est une puce électronique USB <=> MIDI

Après être partie à la pêche aux informations sur Internet, j’ai trouvé la petite datasheet du CH345 de QinHeng Electronics (en chinois et en anglais).

Synoptique du circuit intégré CH345T de QinHeng Electronics (WinChipHead @ China) permettant la réalisation d’un adaptateur USB/MIDI (1xIN + 2xOUT)

Comme nous l’avons vu précédemment, le CH345 (U1) sert de base à beaucoup d’Adaptateurs USB/MIDI auto-alimentés « Low cost » sans marque ou exotique.
Cette puce électronique est compatible USB 2.0 et prend en charge un canal d’entrée MIDI et deux canaux de sortie MIDI. Il peut être utilisé pour créer comme ici un adaptateur USB/MIDI (1xIN + 1xOUT), ou un clavier MIDI, ou un lecteur de musique MIDI basé sur un bus USB, etc., en convertissant les données MIDI IN/OUT en données série USB et réciproquement.

Voici le schéma d’application que suggère QinHeng Electronics (WinChipHead @ China) pour mettre en œuvre un adaptateur USB/MIDI (1xIN + 1xOUT) avec son circuit intégré CH345T (U1)

MIDI : Le port P2 est une terminaison de sortie (OUT) sur MIDI-DIN à 5 broches et le port P3 est une terminaison d’entrée (IN) sur MIDI-DIN à 5 broches. Le transistor T1 est utilisé pour inverser la tension de sortie sur la broche 5 de P2, l’optocoupleur U2 pour réaliser l’isolation galvanique de l’entrée (IN) sur les broches 4-5 de P3, la diode D1 pour protéger l’optocoupleur U2 en cas d’inversion de polarité, la DEL L1 pour indiquer que l’adaptateur USB est prêt à être utilisé (disons au moins alimenté), et les DEL L2 et L3 pour indiquer l’activité (transmission de données) respectivement sur les ports MIDI-IN et MIDI-OUT.

USB : Le port P1 est l’interface USB, le bus USB contient une paire de fils d’alimentation +5V (Vcc et GND) et une paire de fils de données (D- et D+). Habituellement, le fil d’alimentation +5V est rouge, le noir est la masse (GND). Le fil de signal D+ est vert et le fil de signal D- est blanc. Le courant maximum de la source du bus USB est de 500 mA. En général, le CH345 (U1) et l’électronique à faible consommation autour, consommant moins de 100 mA au total, peuvent utiliser directement la puissance électrique fournie par le bus USB auquel ils sont connectés.

HORLOGE : Le condensateur C3, variant de 4,7 nF à 22 nF (0,022µF), filtre les parasites internes au CH345 (cas utilisation en 5V). Le condensateur C4 de 0,1 µF filtre les parasites externes. Pour un filtrage efficace, C3 et C4 doivent être mis au plus près du CH345. Le quartz X1 et les condensateurs C1C2 composent le circuit oscillant (l’horloge) du CH345.

♦ Problème avec les Adaptateurs USB/MIDI auto-alimentés « Low cost »

LE PROBLÈME : Non respect de la partie électrique de la norme MIDI !

Malheureusement, pour réaliser des économies de bouts de chandelle (prix public +/- 2 à 3 € TTC et hors frais de livraison), la quasi-totalité des adaptateurs USB/MIDI « Low cost » qui utilisent le CH345T (U1 sur le schéma d’application ci-dessus) ou équivalent font l’impasse sur le photocoupleur PC900V (U2 boîtier DIP-6 sur le schéma ci-dessus) ou 6N137 / 6N138 (boîtier DIP-8) pour un montage amélioré et sûr comme préconisé par la norme MIDI v.1.1 de 2014.
Mais, le dessin du circuit imprimé de cet adaptateur USB/MIDI « Low cost » ne possédant que 4 plots, il faudra utiliser un photocoupleur DIP-4 très basique qu’à un seul transistor, genre PS2561 ou équivalent.

Un photocoupleur et de qualité est une OBLIGATION de la norme MIDI. Interconnecter des équipements MIDI / ordinateurs ou autres avec ces adaptateurs sans photocoupleur sur MIDI-IN rend l’utilisation de ces produits très risqués pour les appareils auxquels ils sont connectés. Dans le pire des cas, on peut tout simplement les « griller » et plusieurs centaines voire plusieurs milliers d’euros partent en fumée !


Comme le montre le schéma ci-dessus de 1985 ! de la MIDI Manufacturers Association, le photocoupleur (opto-isolator) derrière le MIDI-IN garantit l’isolation galvanique – électrique à 100% entre les équipements MIDI interconnectés et évite ainsi les effets de boucle indésirés par les masses (GND – ground). Dans sa mise à jour de la norme MIDI v.1.1 de 2014, la MMA a amélioré les protections (voir ci-dessous).

Câblage MIDI de cet adaptateur USB/MIDI « Low cost » sur son circuit imprimé

IN – <= Fil noir <= MIDI-IN
IN + <= Non connecté ! ! !
GND <= Fil rouge <= MID-IN = Hors-la-loi ! ! !
D + => Fil blanc => MIDI-OUT
D – => Fil noir => MIDI-OUT

Comme nous pouvons le voir dans le schéma ci-dessous SENDING LOGICAL LOW (référence Sparkfun.com), en plus du photocoupleur sur MIDI-IN, les broches 2 des prises DIN ne sont pas reliées à la masse afin d’assurer une vraie et totale isolation galvanique entre le MIDI-OUT de l’équipement (clavier) qui envoie les données et le MIDI-IN de l’équipement (PC) qui reçoit les données. Hors, tel n’est pas le cas avec ces adaptateurs USB/MIDI « Low cost » !

MIDI DIN – Spécifications Électriques

La description de la Spécification Électrique MIDI v.1.0 et le circuit d’exemple donné dans le document original v.1.0 (1983) utilisaient de l’électronique 5 volts, commun à l’époque. La Spécification a été mise à jour en 2014 pour refléter les nouvelles exigences de conception telles que les circuits alimentés en 3,3 volts et la réduction des interférences RF (radio-fréquences).

Mise à jour des spécifications électriques MIDI v.1.1 (2014)
Cette mise à jour la Spécification Électrique MIDI v.1.1 inclut la signalisation 3,3 volts. Elle ajoute également des filtres RF (radiofréquences) en perles de ferrite en option sur les broches de signal et des dispositifs de mise à la terre (GND) optionnels pour les blindages sur les prises MIDI-IN, MIDI-THRU et MIDI-OUT.

♦ Tests sous GNU/Linux MINT 18.1 Cinnamon

Avec cet adaptateur USB/MIDI « Low cost » branché sur un des ports USB 2.0 de mon ordinateur, je lance une série de commandes dans un Terminal (touches CTRL + ALT + T) et j’en extrais les informations utiles.

lspci – qui affiche entre autres choses :

USB controller: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller (rev 05)

Le contrôleur USB 2.0 de mon ordinateur.

lsusb – qui affiche entre autres choses :

Bus 001 Device 004: ID 1a86:752d QinHeng Electronics CH345 MIDI adapter

Mon adaptateur USB/MIDI tel que reconnu par le contrôleur USB 2.0 et le noyau Linux 4.4.x de mon ordinateur.

sudo lsusb -v -d 1a86:752d
Cette commande liste tout le détail de cet adaptateur USB/MIDI « Low cost ».

dmesg – qui affiche entre autres choses :

Linux version 4.4.0-64-generic (buildd@lgw01-56)
gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4)
#85-Ubuntu SMP Mon Feb 20 11:50:30 UTC 2017
Ubuntu 4.4.0-64.85-generic 4.4.44

usb 1-1.2: new full-speed USB device number 4 using ehci-pci
usb 1-1.2: New USB device found, idVendor=1a86, idProduct=752d
usb 1-1.2: New USB device strings: Mfr=0, Product=2, SerialNumber=0
usb 1-1.2: Product: USB2.0-MIDI
usbcore: registered new interface driver snd-usb-audio

Dans la base de données Linux-USB.org du 12/02/2017, idVendor=1a86 correspond à QinHeng Electronics (WinChipHead @ China) et idProduct=752d correspond au CH345 MIDI adapter. Le noyau Linux 4.4.x reconnaît bien l’adaptateur et normalement il n’y a pas besoin d’installer un pilote.

NB – Les commandes dans un Terminal ci-dessus peuvent de temps à autre retourner les informations suivantes :

- Bus 001 Device 005: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter
- New USB device found, idVendor=1a86, idProduct=7523
- ch341 1-1.2:1.0: ch341-uart converter detected
- usb 1-1.2: ch341-uart converter now attached to ttyUSB0
- Product: USB2.0-Ser!

Cela veut dire que le noyau Linux aura (aussi ou que) détecté l’adaptateur USB/MIDI comme une simple interface « série » avec le circuit intégré CH341 au lieu du CH345 !

Astuce : la commande lsusb dans un terminal permet de vérifier dans la liste des périphériques USB affichés si l’adaptateur USB/MIDI est bien détecté (ou pas) par le noyau Linux. S’il n’est pas détecté (correctement), il faudra déconnecter puis reconnecter l’adaptateur.

Extrait de la liste sur Linux-USB.org :
 Vendor name :

   1a86 = QinHeng Electronics √
  Device name :
   5512 = CH341 in EPP/MEM/I2C mode, EPP/I2C adapter
   5523 = CH341 in serial mode, usb to serial port converter
   5584 = CH341 in parallel mode, usb to printer port converter
   7523 = HL-340 USB-Serial adapter !
   752d = CH345 MIDI adapter
   7584 = CH340S
   e008 = HID-based serial adapater

Messages MIDI reçus (IN) et envoyés (OUT)

Pour cela, je vais utiliser avec mon ordinateur sous GNU/Linux
  • l’Adaptateur USB (PC) / MIDI (PSR-620) auto-alimenté « Low cost » sans marque,
  • GMIDImonitor 3.6 – un moniteur logiciel GTK de flux MIDI avec support ALSA-MIDI (Advanced Linux Sound Architecture) et JACK (Jack Audio Connection Kit) qui est disponible dans la Logithèque de Linux MINT et d’autres distributions GNU/Linux.
    NB : Pour connecter la source désirée MIDI à l’entrée de GMIDImonitor, il faut utiliser une baie de brassage (patchbay) logiciel comme Patchage ou Qjackctl disponible dans la Logithèque. Dans ce cas de figure, l’adaptateur USB/MIDI apparaît dans GMIDImonitor comme [MIDI In].
  • un PSR-620clavier-synthétiseur Yamaha équipé d’un port MIDI-IN et d’un port MIDI-OUT capable d’envoyer et de recevoir des messages +/- complexes comme Pitch Bender, Control Change, Program Change, System Exclusive et System Real Time, en plus de messages plus simples comme Basic Channel, Note Number et Note Velocity.
PSR-620 <=> MIDI-IN-OUT / USB <=> PC <=> ALSA-MIDI <=> GMIDImonitor
Rappel connexions appareils A<=>B : MIDI-OUT A => MIDI-IN B  et  MIDI-IN A <= MIDI-OUT B !

Donc, par mesure de sécurité, je ne testerai pas cet Adaptateur USB/MIDI « Low cost » avec mes instruments de musique électronique !
J’avais pensé un temps modifier son circuit MIDI-IN pour y ajouter le photocoupleur et les quelques autres composants nécessaires mais le jeu n’en vaut vraiment pas la chandelle.

♦ Alors, choisir un adaptateur « Low cost » ou un de « Marque reconnue » ?

Même à ce stade le verdict est très simple et sans appel.
Il faut obligatoirement choisir un adaptateur USB/MIDI de « Marque reconnue » respectant la norme MIDI, comme le « M-Audio MidiSport Uno » même s’il coûte plus cher à l’achat. Ainsi, vous vous éviterez bien des problèmes et consacrerez votre temps à la musique et pas au débogage de votre installation !

Choisissez un adaptateur USB/MIDI de « Marque reconnue » respectant la norme MIDI comme le « M-AUDIO MidiSport UNO ». C’est une interface USB / MIDI 1xIN/1xOUT auto-alimentée via USB, Plug and Play / Compatible GNU/Linux, MacOS et Windows.

Par contre, si vous avez des connaissances en électronique et que vous n’avez pas vraiment besoin d’une compatibilité électrique à 100% avec la norme MIDI, alors un adaptateur USB/MIDI « Low cost » pourrait convenir comme pour la réalisation d’un MIDI DIY (Do It Yourself) basé sur Arduino, Raspberry Pi ou autres…
Néanmoins, je vous recommande très fortement d’ajouter quand même un photocoupleur sur le MINI-IN de votre DIY pour éviter de  « griller » les cartes Arduino, Raspberry Pi ou autres…

Synoptique d’une configuration « fiable » USB/MIDI (MAO)

Dans la chaîne MIDI-USB-PC, ne jamais négliger l’interface (I/F) qui doit être de qualité et 100% conforme à la norme MIDI !