Skip to main content

Historique: Utiliser un périphérique série en MIDI

Aperçu de cette version: 2



Cette page explique comment utiliser un périphérique Série en MIDI, par exemple pour l'utilisation d'un http://linuxmao.org/Fabriquer+les+choses+soi-m%C3%AAme" class="wiki wikinew text-danger tips">contrôleur fait maison à base par exemple d'Arduino Uno, qui ne supporte pas le protocole USB-MIDI nativement mais utilise Serial midi.

 attention
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:
Copy to clipboard
# /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
Copy to clipboard
[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

Historique

Information Version
Wed 07 Apr 2021 13:27 olinuxx + coquille code + balises + drapeaux EN 6
Afficher
Tue 06 Apr 2021 21:52 zigmhount ajouté un lien vers serial2midi 5
Afficher
Mon 05 Apr 2021 12:59 olinuxx + correction lien interne 4
Afficher
Sun 04 Apr 2021 13:28 zigmhount Quelques corrections de format 3
Afficher
Sun 04 Apr 2021 13:24 zigmhount Premier jet 2
Afficher
Sun 04 Apr 2021 13:09 zigmhount 1
Afficher