[LAU] Open Source MIDI control surface

simone-www.io-lab.org cimo75 at gmail.com
Thu Nov 27 18:35:52 EST 2008


hi
arduino is a bit slow but if you need only a few pots to tweak
parameters building up a song it may be ok.
I wouldn t advise it if you need something for live acts with sensors,
or you are going to multiplex the analog inputs.
For a quick, darn cheap and easy (and high resolution: 10bit) little
device i ve built a couple of these:
http://1010.co.uk/avrhid.html
these ones send HID protocol to USB, very fast and 10bit resolution, 8
analog ins and 6 digital ins.
About coding and different language, MIDIBox has a great approach
(anyboy noticed I am a big MIDIBox fanboy?): there is a first
bootloader to be loaded with a burner, only 1 time, then all the code
is sent via MIDI sysex; this loader is written in ASM.
Then there is a lower level OS called MIOS, also written in ASM and
optimized for preemption, all basic functions for ADCs, G/CLCD,
digital inputs, multiplexing, you name it, are coded here.
On top of that there is the end application that can be written in C
or ASM, toolchains/compilers exist both for C and ASM (you build with
the same command both the languages) and are ported to all 3 major
OSs.
Need more? Soon you ll get the new CORE32 ARM Cortex.
Need info? MIDIBox is backed by one of the most friendly and competent
community.
Linux, Open Source? The project is Open Source and you are only
restricted not using it for commercial purposes.I am planning to port
as many boards as possible to Kicad and there is also a project
running aiming at create an Ubuntu-Studio based collection of packages
that will set you up to go with MIDIBox: all compilers, boards
designs, svn to get latest code, sysex loaders, MIDI troubleshooting,
burner again, you name it.
Simone

On Thu, Nov 27, 2008 at 10:47 PM, Folderol <folderol at ukfsn.org> wrote:
> On Fri, 28 Nov 2008 09:00:01 +1030
> Matthew Smith <matt at smiffytech.com> wrote:
>
>> Quoth Ken Restivo at 2008-11-28 08:32...
>> > It's so simple to make one with an Arduino, and a lot of code for surfaces that others have made is open source.
>>
>> That could certainly be done - if you only wanted an 8-knob surface, the
>> ADC is already on-chip.  I briefly toyed with the idea of using an
>> AT90S8535 (or the ATMEGA version), using the onboard ADC, but decided
>> that I wanted more knobs, so went for the external ADC.
>>
>> But yes, for the Arduino, just add pots and MIDI interface.
>>
>> Not sure what the performance of a device like this would be though,
>> when you have an extra level of language involved.  Personally, I like
>> to stick to C when dealing with microcontrollers (and for the real
>> masochists, there's always assembly ;-))
>>
>> Cheers
>>
>> M
>
> The code you use to program the arduino is a subset of C. As for speed,
> in an industrial application I have one reading 2 external interrupts
> which it uses as timing signals to pack the state of another digital
> input into bytes, and then spit them out via serial @ 115200 baud. I
> can get to about 80% theoretical maximum speed before it starts losing
> data.
>
> Provided you keep your code clean and efficient, I don't think you'd
> have any significant latency problems running MIDI :)
>
> --
> Will J Godfrey
> http://www.musically.me.uk
> _______________________________________________
> Linux-audio-user mailing list
> Linux-audio-user at lists.linuxaudio.org
> http://lists.linuxaudio.org/mailman/listinfo/linux-audio-user
>



-- 
.wmv , .wma , .pps along with all proprietary Windows formats won t be
accepted and/or viewed....



More information about the Linux-audio-user mailing list