- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Hi all,
I'm trying to build a MIDI controller with an Intel Edison (Arduino breakout). What I'd like to achieve is to plug the usb from the Edison to a pc, and get it recognized as a MIDI interface. I know I must configure the OTG USB port by installing the correct drivers, but I'm stuck at this point and can't find anything online. Anyone has ideas? Maybe something similar has been done to use the Edison as a HID interface, it should be not that different...
Any help is appreciated
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Hi,
Take a look at http://www.instructables.com/id/Programable-MIDI-Synth-with-Intel-Edison-and-Csoun/ Programable MIDI Synth with Intel Edison and Csound . This guide has steps that will guide you to connect the Edison with a MIDI device.
The guide also has the commands you need to use to update to the software tools you need to make the MIDI device recognized.
The OTG USB port must be used as a host. To use host mode you require an external power adapter.
Follow the steps of the guide and let me know if this helps.
Sergio
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Actually, this is the contrary of what I want to do. In the page you linked, the Edison is configured as a MIDI synth receiving controls from an external MIDI controller via USB. What I'd like to do is instead to build the MIDI controller itself! The OTG USB must be a client that can be connected on a pc or mac (or to an another Edison as in your example), and be recognized as a MIDI input device.
I found this thread:
/thread/82330?start=0&tstart=0 https://communities.intel.com/thread/82330?start=0&tstart=0
but that's configuring the Edison as a HID peripheral, which is not really my case...
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
I went a bit deeper into the problem, and found out that I should use the Linux gadget API, that allows the device to be seen as a client peripheral (https://www.kernel.org/doc/htmldocs/gadget/ more info here). What I could not find instead is how should I use them to configure the Edison as a MIDI device. I guess I should set a new module on Yocto like this:
root:~> modprobe g_midi
but I'm not sure if it's included in the Yocto distro, nor if it's enough to just add the module. Any ideas?
Happy new Year
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
You can explore the kernel configuration on CONFIG_USB_MIDI_GADGET. Here you can do some kernel customization to enable the modules you need.
Sergio
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Hi Sergio, thanks for your answer! I'm a bit of a newbie on kernel configuration, do you have some walkthrough to share, or some documentation?
Daniele
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Specifically, to enable the midi_gadget there isn't any official documentation. You can find more information on kernel configuration in the Yocto official documentation such as in http://www.yoctoproject.org/docs/1.6.1/kernel-dev/kernel-dev.html Yocto Project Linux Kernel Development Manual .
Another link that might be useful is this:http://linux-sunxi.org/USB_Gadget http://linux-sunxi.org/USB_Gadget
Sergio

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page