Best Hardware Interfaces for Max

sleeplesswaves's icon

Hello All,

I'm about to start a graduate program in installation/new media. I've been researching different hardware/software options for creating installations. It seems MaxMSP or ActionScript would be good programming solutions for audio/video style installations.

I've been researching different options for hardware interfaces so that I can use sensors, etc. to trigger different events. It all seems so overwhelming though. Here are some of the options I've found:

I'll be using primarily Apple computers. Can anyone give their thoughts on advantages and disadvantages of using any of the hardware interfaces above? Some questions:

Which are best supported in documentation/tutorial and customer support?
Which work best using a Mac?
Which are easiest to use?
Which have the best sensors?
Are certain systems better for certain things?

Thanks for any advice on gearing up!

sleeplesswaves's icon

I've been studying for a few days now. I think I've narrowed my search down to using the Arduino Mega or the Make Controller v2.0 Application Kit.

At this point I'm leaning towards the Arduino Mega.
Reasons:
1) It has more available connections.
2) It seems there are many current books published with examples.
3) It seems the support documentation and user community are up-to-date and lively.

I really want to get a Make Controller however because the board is faster, has more memory, etc. After reading tutorials it seems really easy to use USB/Ethernet to get values from sensors into Max/Flash... The main reason I'd love to go with the Make is the built in ethernet.

However, it seems like make isn't supported very well (documents on site are buried and hard to find), there are no books published about it that I could find, and the forums are lack-luster. The latest forum entry is from two users begging for an update on new firmware development and consequently complaining that it's been like 3 months and still no answer. Not very reassuring. Being a new user this scares me... hahaha.

So my question now is this. Does anyone know if it is possible to add an ethernet shield onto the mega (like this one: http://www.nkcelectronics.com/nkc-ethernet-shield-for-arduino-mega--duemilanove--diecimila-diy-kit.html ) and interface with it over UDP or TCP via OSC from MaxMSP or Flash AS3? This seemed very straightforward with the Make Controller but potentially more difficult with the Mega.

mzed's icon

You are probably correct in choosing Arduino. It's a great learning platform and there is a huge community. Look to Lady Ada for some excellent tutorial material:

I have a Make Controller Kit and I like it. I've found it it very easy to use with Max, and I like ethernet as a hardware interface. Also, it has good built in control for motors. However, it's been a long time since I looked for support. Your questions:

Which are best supported in documentation/tutorial and customer support?
Doubtless, this will be arduino.

Which work best using a Mac?
Both support Mac fully. I don't know what "best" means, but you won't be limited in either case.

Which are easiest to use?
I found MCK to be easier to get started. YMMV.

Which have the best sensors?
The ones you learn to build yourself are the best. The same sensors work with either.

Are certain systems better for certain things?
Because of cost, I'd prefer Arduino for something embedded. Especially if I needed many of them. For example, a sculpture that I left in a gallery for months. Probably anything that doesn't use a multimedia computer in it's normal running is a good Arduino application.

MCK is good with motors. It's faster. If I were building an instrument that I performed with, I think I'd go this way.

mz

Morgan's icon

Arduino is definitely the place to start due to the massive user-base. Probably people in your program will have experience with it. Since your'e just starting, I would recommend buying the cheapest Arduino board you can find and upgrading later according to the requirements of your project.

Arduino Pro Mini from SparkFun or the Teensy (google it) are good places to start, and they're more convenient than the bigger boards because they fit right into a breadboard. They're also not so much less capable. The Teensy has 12 analog inputs, for instance.

pdelges's icon

I use both, arduino and Make controller.
I use the arduino for standalone installations, i.e. without a computer. And I use the Make Controller when I need to interface Max with actuators (like servos, valves, motors) because it's much faster to develop (no need to build or buy shields to drive higher current, get ethernet, etc.), and has built-in ethernet.

I never tried to change the Make Controller firmware, but it is quite easy to program the arduino (as long has you have some experience in programming), although I max out the RAM very easily.

So far I never had any problem with both hardwares.

It's true Make's documentation is not optimal (especially because it's only online) but it's OK. The forum is indeed not always fresh, but aren't forums generally mostly filled with complains.

p

moze's icon

There is also a materiel fantasy of interfaceZ that I use for my machines http://www.interface-z.com/produits/index.htm

sleeplesswaves's icon

Hello all,

Thanks for the excellent input! After reading books and scouring the web until my eyes were ready to bleed... I decided to get a Make Controller. I'll probably end up getting an Arduino at some point anyway. :-) I just really like the built in Ethernet and use of OSC to pass data... Seems super slick and easy to me. I usually end up pushing hardware to the limits so I thought I'd get something a little more powerful to start with as well. Thanks again for the input!!!

David

Morgan's icon

I've found the difference between the way engineers make purchases and the way artists make purchases quite interesting.

The Engineering Way:
Determine your exact needs in advance and buy parts that meet or exceed your needs only by a calculated margin (~25%).

The Artist Way:
Minimize shopping time by making the most versatile purchase possible initially.

The problem with the Artist Way is that you almost always end up overspending or buying something that is overkill (e.g. too large or too expensive to experiment with). The problem with the Engineering Way is that it does not facilitate experimentation.

The artist experimenting with physical computing should strike a balance between the two Ways.

sleeplesswaves's icon

@morgan,

Yeah, it may be overkill, and it wasn't the cheapest choice... But I studied hard before choosing. Indeed finding the balance was key, and very hard!

I chose the Make b/c:
1) I liked OSC control that's the core of the Make system so I can bypass programming the board as much as possible. I'm an experienced programmer, but I'd rather deal with things in languages I already know like Flash AS3, Perl, Python, Max than learning a new language to program a board directly. And the OSC commands make the use of so many different languages so easy!
2) I really didn't want to have a computer tethered to a controller via USB. I know I could add an ethernet board to an Arduino but it seemed more involved with programming again whereas the Make has it built in with tools for Mac/Win, AS3, Max, etc. Plus it seems even more complicated adding Ethernet to an Arduino Mega. I'll also want to interface with everything via the web. And the cost seemed to be somewhat comparable once you add Ethernet to an Arduino.
3) I based my choices on the current project I'm working on, but I did certainly double the capacity of what I'll need to leave room for future projects with more complexity. I'm a total nerd and as this may not be appropriate for a typical student that's just taking a semester class or something, I'm in it for the long haul. I've been a technologist for 10+ years so I just know I'll outgrow current needs very quickly once I have my head around the basics.

I'd love to continue to hear input on this subject. As a technologist/artist, the hardest part so far in getting involved has been choosing the controller b/c so much depends upon it as the brain/bridge to the computer. If I feel a bit overwhelmed in choosing as an experienced programmer, I'm sure many artists with no technical background find it to be an almost insurmountable wall!

Thx to everyone again! :-)

Christopher Carvalho's icon

just bumping this very interesting Topic, thanks guys

should be a Sticky

brendan mccloskey's icon

As a novice programmer, I have found the Arduino eminently accessible; it interfaces with MaxMSP transparently, the language is easy to learn, which helps me cross over to more advanced environments like Processing. Maybe this is also true of other platforms?

teqy's icon

I managed to get my arduino working via a "maxuino" type patch, it worked o.k, i could use osc to make things happen, trigger relays and bulbs and things. but the latency was a bit high.

i need a faster response for my next project. still searching for something new.

brendan mccloskey's icon

Anyone else think this thread should be promoted to a sticky?

teqy's icon

@ lost boy,

hi, how are you getting on with your make controller?

Medd's icon

I very recently started using Arduino after seeking advice on this kind of hardware in these forums and I have to say I'm very pleased. Within a few days of reading up on Lady Ada tutorials, forums and peering into Max related communication in the Arduino Playground, I've been able to run headlong at my latest project very quickly. In terms of cost, community support and flexibility from a student's point of view, it's probably one of the best things I've gotten stuck into since MaxMSP!

seejayjames's icon

Am excited to try this new device:

I mean, $5? Seriously?

Probably the learning curve is higher regarding the programming, but the IDE is free and there's plenty of starter scripts to get going. At that cost you could do a ton of cool stuff... now I wonder how it could interface with Max... I guess just through [serial], hopefully it wouldn't be too much of a pain to parse the data.

Now if you could hack together a low-cost wireless transmitter for it, you could have a pretty nice (and wearable) sensor setup for cheap... hmmm...... anybody know how to do something like that, or know a good pre-made one that could attach on easily?

sleeplesswaves's icon

@teqy

I haven't checked back here in a while. Things are going very well with the Make Controller. I had a few issues with using the built-in ethernet port on the unit. The forums aren't super active, but I found that Liam from Makingthings replied to my questions pretty quickly there. I basically had a hard time getting the IP, mask, etc. to stick using OSC commands. They kept getting overwritten by the original settings in the firmware. Anyway, I followed the tutorials on the site and just compiled my own version of the firmware with the IP, mask, etc. that I wanted and the problem was solved.

Using the OSC to pass information has been an absolute breeze. I just plug in the controller and pull up the max patches that makingthings provides and you're interfaced with the device over ethernet. Sweet! I've been experimenting with four sonar proximity detectors. I'm getting the tech down and then building installations that can utilize them in different ways. Here is a quick video after I got everything going and started some experimenting:

I'll post some examples of installations as I get them completed, it's only about a month into the program!

If anyone is interested in the patches, give me a shout.

sleeplesswaves's icon

@teqy

By the way, I haven't noticed any latency issues with the make. I haven't run any tests or anything, but it seems to be very snappy. I did a little led on/off test and it seems instantaneous. The sensor data coming in from the four sonars seems to be spot on as well. It's so accurate and quick to adjust that I had to implement a smoothing filter so the sensor values ease in and out. Otherwise the video and audio transitions would get really jumpy.

teqy's icon

hey lostboy looking great,

that'll be a really nice & interesting art installation when you have it all set up.

great when things work out , max msp awesome!! the things we can do. so wonderful.

regards latency, no worries im sticking with the arduino just for now. but shall definately branch off soon when the time comes.

have fun with your projects and keep us updated!!! : P