midiMESH: Network MIDI with Elixir on ESP32 via AtomVM
- Track: Music Production
- Room: UA2.220 (Guillissen)
- Day: Sunday
- Start (UTC+1): 13:40
- End (UTC+1): 14:05
- Room livestream: ua2220
- Chat: Join the conversation!
This talk demonstrates how to build a wireless MIDI controller using Elixir, ESP32 microcontrollers, and AtomVM, proving that functional programming can run efficiently on resource-constrained embedded devices.
We'll explore how BEAM VM's lightweight processes and message-passing model naturally fit embedded systems programming, particularly for real-time applications like MIDI. The session covers practical implementation details: WiFi connectivity, UDP networking, MIDI message generation, and interfacing with physical controls like knobs and faders on ESP32-C3 hardware with just 400KB RAM.
Attendees will learn about AtomVM's subset of the BEAM VM designed for microcontrollers and the potential for building distributed music applications. We'll discuss how networked MIDI enables new possibilities for multi-device music systems and collaborative performance setups built on BEAM's distributed computing capabilities.
The project is fully open source and demonstrates a compelling use case for Elixir beyond traditional web services, showing how the language's concurrency model excels in IoT and real-time embedded systems.
Speakers
| Asep Bagja Priandana |
Attachments
Links
- Video recording (AV1/WebM; preferred) - 87.7 MB
- Video recording subtitle file (VTT)
- Video recording (MP4; for legacy systems) - 430.4 MB
- midiMesh Github
- midiMesh Video Demo
- Nanas Sound (the company website)
- Asep Bagja's personal website
- Asep Bagja's Linkedin
- Chat room(web)
- Chat room(app)
- Submit Feedback