Chargement...
 
[Voir/Cacher menus de gauche]
[Voir/Cacher menus de droite]



Cette page explique comment utiliser un périphérique Série en MIDI, par exemple pour l'utilisation d'un contrôleur fait maison à base par exemple d'Arduino Uno ou Nano, qui ne supportent pas le protocole USB-MIDI nativement mais utilise Serial midi (contrairement à d'autres boards comme le Pro Micro ou les Teensy.

Avertissementattention
Page en cours d'écriture



Introduction


  • Construction d'un contrôleur MIDI basé sur Arduino
  • Support USB des différentes boards Arduino et chips ne supportant pas nativement l'USB
  • input en Série
  • convertir le Série en MIDI avec Hairless ou TTYMidi
  • Règle UDEV à la connexion d'un périphérique ttyUSB:
# /etc/udev/rules.d/99-serial-usb.rules
#
# Un test avec l'action "bind":
# ACTION=="bind", SUBSYSTEM=="usb-serial", DRIVER=="ch341-uart", TAG+="systemd", RUN+="/bin/sh -c 'echo == >> /home/zig/Software/udev-env.txt; env >> /home/zig/Software/udev-env.txt; echo attr: >> /home/zig/Software/udev-env.txt; echo $env{DEVNAME} >> /home/zig/Software/udev-env.txt'"

# Un autre test avec l'action "add", qui permet d'accéder plus facilement à la propriété DEVNAME:
#ACTION=="add", SUBSYSTEM=="tty", ENV{DEVNAME}=="/dev/ttyUSB[0-9]", TAG+="systemd", RUN+="/bin/sh -c 'echo == >> /home/zig/Software/udev-env.txt; env >> /home/zig/Software/udev-env.txt; echo attr: >> /home/zig/Software/udev-env.txt; echo $env{DEVNAME} >> /home/zig/Software/udev-env.txt'"
# La vraie règle à utiliser:
ACTION=="add", SUBSYSTEM=="tty", ENV{DEVNAME}=="/dev/ttyUSB[0-9]", TAG+="systemd", ENV{SYSTEMD_WANTS}+="ttymidi@$env{DEVNAME}.service"

# Un test à la déconnexion:
#ACTION=="unbind", SUBSYSTEM=="usb-serial", RUN+="/bin/sh -c 'echo == >> /home/zig/Software/udev-env.txt; env >> /home/zig/Software/udev-env.txt'"
# La vraie règle pour la déconnextion:
ACTION=="unbind", SUBSYSTEM=="usb-serial", RUN+="/bin/systemctl --no-block stop ttymidi@*.service"


  • Service Systemd pour démarrer et stopper ttymidi à la connexion/déconnexion du périphérique
[Unit] 
Description=TTYmidi to convert Serial to MIDI

[Service] 
ExecStart=ttymidi -b 115200 -n ArduinoPedal -s %I

Le paramètre %I est passé par la règle UDEV après le @ de ttymidi@.service.

Liens et commentaires



Collaborateur(s) de cette page : olinuxx et zigmhount .
Page dernièrement modifiée le Mercredi 07 avril 2021 13:27:34 par olinuxx.
Le contenu de cette page est licencié sous les termes licence.

Documentation [Afficher / Cacher]

Faire un don
[Afficher / Cacher]

Connexion
[Afficher / Cacher]



Mégaphone [Afficher / Cacher]

calixtus06, 14:31, jeu. 07 Nov 2024: Bonjour et bienvenue à Niko80lille :-)
allany, 17:31, mer. 06 Nov 2024: Pas de chichis, pas de cérémonial, juste l'éditorial ! [Lien]
calixtus06, 18:51, lun. 28 Oct 2024: Bonjour et bienvenue à dawaninja :-)
olinuxx, 08:39, dim. 27 Oct 2024: Bonjour et bienvenue à dangoodboy cool
olinuxx, 13:50, sam. 26 Oct 2024: Bonjour et bienvenue à ladipon cool
allany, 18:33, lun. 07 Oct 2024: Phénoménal, c'est l'éditorial ! [Lien]
calixtus06, 13:16, ven. 27 Sep 2024: Bonjour et bienvenue à tigny :-)
olinuxx, 13:05, dim. 22 Sep 2024: [ANNONCE] Les nouvelles des 7 derniers mois de LibraZiK : [Lien]
olinuxx, 18:46, ven. 20 Sep 2024: Bonjour et bienvenue à manaoxygen cool
calixtus06, 11:24, mar. 17 Sep 2024: Bonjour et bienvenue à PAuf :-)
olinuxx, 21:36, ven. 13 Sep 2024: Bonjour et bienvenue à jearos cool
calixtus06, 18:28, mer. 11 Sep 2024: Bonjour et bienvenue à Fred2024 :-)