thejohncotton
What are the options for Midi + Nerves?
I’ve been having a lot of discussions around using MIDI on a nerves device and wanted to start a thread to discuss some of it in the open so that it is easier to help others in the same discussion.
I have midi 1.0 working in nerves with Circuits.UART and some diy hardware. I need to publish a public repo with the UART Framing (will be sharing soon).
Some of the more interesting discussions and my current interest are around working with USB midi.
GitHub - haubie/midiex: Cross platform Midi library in Elixir. Powered by midir, a Rust midi library and Rustler. · GitHub looks like it could be really close to what we would want in terms of portability but I’m having issues getting it to run on my nerves system (raspberry pi4 but slightly modified)
I’ve got some debugging to do on that test but wanted to consider other options too. Particularly anything lightweight.
Most Liked
entone
fhunleth
In addition to the other options, there’s the Sonic Pi MIDI library at GitHub - sonic-pi-net/sp_midi: MIDI functionality for Sonic Pi for use as Erlang module · GitHub. It looks self-contained and lightweight, but would need a little modification to build with mix and be easier to use with an Elixir/Nerves project.
mclarenlabs
McLaren Labs here - mentioned earlier in the thread.
You might find our ObjC project interesting in showing how to interface with ALSA “sequencer” interface (MIDI) and PCM interface (audio)
some example tools here
ALSA is very powerful, but it has a decent learning curve. Our little examples might help ![]()
-Tom
Popular in Questions
Other popular topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #advent-of-code
- #elixirconf-us
- #distillery
- #processes
- #forms
- #api
- #metaprogramming
- #security
- #performance









