SendMIDI Brings MIDI To The Command Line

Developer Geert Bevin (LinnStrument software, MPE, Moog Model 15 for iPad) has released SendMIDI, a multi-platform command-line tool for MIDI.

SendMIDI is designed to make it easy for terminal-savvy users to send MIDI messages from a computer to MIDI devices.

“This tool is mainly intended for configuration or setup through Continuous Control, RPN and NRPN messages,” notes Bevin, “but many other MIDI messages can be sent.”

SendMIDI is available as a free download for Linux, Mac & Windows from github. It’s released as an open source project (GPL 3.0).

36 thoughts on “SendMIDI Brings MIDI To The Command Line

  1. “SendMIDI is designed to make it easy for terminal-savvy users to send MIDI messages from a computer to MIDI devices.”

    Who wants to be doing that shit in 2017?

    1. I bought a Linnstrument a few months ago, and started coding school this week, so yeah, I’m into this big time. Thanks Geert!

    2. It’s a myth that somehow command line interfaces are inferior or outdated. If you develop or manage anything in IT a lot of your day is still spent at the terminal because it is so efficient and easy to extend.

      Not saying I don’t use a UI for most of my music making of course, but for updating stuff via midi this is nice.

  2. Sounded mildly useful, until I realized that it does not support Sysex. So this is a half baked tool to help with programs with even more limited midi implementation. Bome still rules for that, IMO.

    1. This tool has a specific target towards easily and quickly sending out MIDI. How would you want to use sysex to send out midi messages? Do you know the details of the sysex formats that you use and can you write them in bytes?

      1. Yes. It is no big deal if you have the sysex spec of your gear, I use sysex within my DAW all the time, especially patch dump requests, arp type change commands, those kind of things…

          1. Yes, though no need for commas as the other commands don’t use them and you want to be consistent.

            Also it is useful to have a means to specify hex and not just decimal. Perhaps syx as the command for hex and syd for decimal.

            Alternatively one could require the first byte as well, so if F0 then the subsequent parameters will be interpreted as hex and if 240 they’re decimal.

                1. Yes.. that’s Geert for you… The way he has been unbelievably responsive to requests made for the Linnstrument and the creative ways he has come up with to add features… speaks volumes.

                  Thanks Geert as always!

              1. Yeah this is a great design. I love the idea of the dec/hex inline stream flag and the ability to individually flip it as needed with D and H suffixes. Great stuff, very useful design. Cool beans.

          2. Just sending something simple like

            sendmidi -sysex “F0 00 01 05 20 7F 20 3A F7”

            would be handy to some testing and debugging.

      2. if i was a developer I could see needing that utility, especially if i was working on developing something to control external hardware like an editor or patch librarian.

  3. Get a Raspberry Pi with this running and a little screen and you’ve got something pretty similar to that monome Eurorack module but for midi.

  4. Nice idea. Could this be expanded to include midi monitoring capability so that one can keep tabs on all or selected midi message traffic in their midi network?

Leave a Reply

Your email address will not be published. Required fields are marked *