Chargement...
 
Skip to main content

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

Aperçu de cette version: 3



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.

 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

Avancé
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