If you’re looking to turn an Android phone or flashy, new Android tablet into a touch controller for music, you’ll be really glad to see OSC and MIDI controller Control. Furthermore, here’s a solid, powerful app based on the Web that lets Apple and Android fans play well together.

I’ve sung the praises of Control’s philosophy before. Templates are built on Web/HTML5 (WebKit) rendering, not proprietary, inflexible interface widgets, and can be created in JSON. You can make templates dynamic, too, because of everything JavaScript does.

(Non-jargon-filled translation: you can use the goodness of the Web to make control layouts that do whatever you like.)

The iOS version is a great option, but now Apple and Android owners (or people with both) can both get in on the action. The Android version already has multitouch on supported hardware, Bonjour/Zeroconf networking support, OSC support, and interface downloading. That means it’s already a usable wireless controller for musical and visual performance. Soon, it’ll also add sensor input and MIDI.

With new tablets from Samsung and Toshiba – the Samsung thin and slick, the Toshiba hefty but with tons of ports – the timing seems right. Also, because the app itself is open source, developers curious about adding any of those features to their own apps can share code and (ideally) contribute back to the project, which could accelerate Android development. I’ll leave our audio API gripes for another time – this is a controller app, so therefore doesn’t make sound – but for those looking for more mobile tools, this is unqualified good news.

Full feature list:

- Outputs Open Sound Control (OSC). MIDI coming soon!
- Handles multitouch on capable devices
- Bi-directional communication: use Control to set values on your computer, use your computer to set values in Control
- Dynamically add and manipulate widgets via OSC messages
- Reads and outputs data from Accelerometer and Compass sensors (on applicable devices) with adjustable update rates
- The ability to script behaviors for widgets using JavaScript
- Auto-discovery of wireless networks via Bonjour
- Interfaces can be pushed to the phone via OSC or downloaded from the web
- Supports both portrait and landscape interface orientations
- Interfaces work on both phones and tablets (tested on Droid and Asus Transformer)
- Free

And here’s some of the new, dynamic jQuery functionality, relevant to both iOS and Android users. The idea is, using OSC, you can dynamically create your own interfaces:

More documentation on that, with an example in Max/MSP:
Control 1.3: Dynamic Interfaces, jQuery integration & more

Finally, some images of the Android version, which looks – rightfully – quite a lot like the iOS version. (That’s the idea.)

Learn more about Control, and follow its development across platforms:
http://charlie-roberts.com/Control/

Or for Android users, grab a copy – I’ll be trying it on my Galaxy Tab 10.1 right away:
Control (OSC + MIDI) @ Android Market

The software is really entirely the work of Charlie Roberts – really brilliant work, mate! Thanks for keeping CDM posted!

  • http://itunes.apple.com/us/app/pairshare/id424429744?mt=8 Brian Tuley

    Nice to see alternatives to Ipad, but if I were going that route, I'd sure buy the Ipad instead of anything else.  The Ipad has tons of apps, and is a superior design all around.  I don't mind being cheap and running a windows DAW, but if I were looking for a cool fun, and simple gadget to control things with, I'd definitely opt for the Apple platform.  The android will always be a second rate knock-off.  I hope I'm wrong, but that's the way these things have always turned out in the past.

  • Peter Kirn

    @Brian: I think you're missing the point. Because this application is based on WebKit, *any* platform that can run WebKit now or in the future can be adapted to work with it. Because it's based on JSON, JavaScript, OSC, MIDI, Bonjour, etc., you can use all of these technologies to build smarter software for multiple platforms in consistent ways – even not just explicitly touch apps.

    If you have the ability to see into the future, then yes, you might say that "Android will always be a second rate knock-off" or that the iPad is the *only* viable platform for now and all time. (And don't get me wrong – I've been in conversations where we've wondered exactly that. But then the question is, does that mean investing into just one platform, or being open to others, too?)

    If you can't see into the future, or if you assume people might buy hardware from more than one vendor, building software that's flexible enough to adapt to a range of hardware is a good thing.

    And since you do hope you're wrong, I think maybe you'll agree that's a good thing.

  • Radiophobic

    Android tablets haven't been around for that long. It took android phones a couple years to catch up, but they are arguably the better option now. All subjective of course, but the marketplace seems to agree with me.

  • deusdiabolus

    Do you think we'll ever have a tablet focusing on a high-quality audio chipset, all the major IO ports (USB 3.0, HDMI, optical, Ethernet), and the ability to expand storage and memory without voiding the warranty?

  • http://noisepages.com/members/poolp/ Ricardo Del PooLP

    I tested on Android plateform (lg P990) and the multi-touch does not work …

  • poopoo

    Nice to see this on android. Multi-touch is not working for me either (HTC Desire HD). In fact any screen touch is a bit wobbly.

    TouchDAW and FingerplayMidi seem to have the best multi-touch control out of the Android apps I've tried. TouchOSC multi-touch doesn't work and their lackluster Android support is a bit of a disappointment.

    If control sorts out the touch issues it will be the one to beat.

  • oootini

    hmm. no multitouch on htc desire s running android 2.3.3 either here…

  • Peter Kirn

    Can you describe what specifically is not working for multi-touch on these platforms? 

    I should have added, this is new, and I know Charlie wanted some testing feedback.

    I'm writing off TouchOSC for Android. I don't hesitate to recommend in on iOS, but the Android port seems to me didn't really make an effort (the absence of screen resolution support, for instance, which isn't rocket science).

    @deusdiabolus: That's a tall order as you're describing it, but it's possible to build a DIY platform that does this, and some tablets are supporting breakout to other hardware for storage and connectivity (certainly the USB class stuff)

  • oootini

    multitouch as in more than one finger on the screen altering parameters does not work.

  • bilderbuchi

    agreed@ToucOSC for Android. I'm quite pissed. Considering I donated more than twice the apple-price for the android version, I kinda feel cheated about it being abandoned after "release".

    also, it seems the dev's totally ignoring the android users on his forum, in spite of many posts and suggestions how to salvage the situation. people are even trying to implement/hack resolution support on their own.

  • David

    What about OSCdroid?

    I've had it for a while now and it seems to work on the device itself (multitouch and all) but I never managed to really test it in a true-to-life situation with an external device.

    As for the iOS ports, I haven't seen many that worked out. Jasuto is another great promise stuck at the halfway mark after the dev decided he'd rather make more money off the iPad than tinker with adapting to android. I can't blame him, but all these half-finished ports add to the impression of android as a second-rate platform. Not because it is, but because the devs treat it as such and it becomes self-fullfilling to an extent. Thank god for apps like Caustic.

  • bilderbuchi

    haven't tried that yet, looked like a scam app (permissions to record audio, send&recv sms, internet access and GPS location??).

    Re: android as a self-fulfilling failure: Yes, I certainly get that impression, too.

  • David

    @bilderbuchi: Same initial impression with OSCdroid here but I took the plunge after some deliberation (and research) and haven't been scammed so far (I've had it for several months.)

    SMS permission is used to be able to create OSC events by receiving an SMS (or send an SMS from an OSC event). Record Audio is for microphone access ('blow detect'). GPS detection for GPS-to-OSC-event. My impression is it's an attempt at a really complete implementation using everything the phone offers, things have been sadly quiet recently though.

  • Peter Kirn

    I'm a big fan of TouchOSC – on iOS.

    I think the solution here is, focus any contributions to something like Control. It's a really great app, and the open licensing means it could really benefit from contributions on any platform. (Heck, you could probably port it to WebOS or a Windows or Linux tablet or something if you so desired.)

    I think a couple of the other Android apps are open source, too, no? (Have to reexamine it for some stuff I'm building!)

  • bilderbuchi

    yeah, focusing contributions is easy – rob is ignoring contributions to touchosc even if people beg him to let them help (http://hexler.net/forum/viewthread/284/).
    Control is my best bet so far, sadly I got performance problems on my slow and low-res device. I'm confident that this will get fixed eventually, though. :-) Just takes enough eyeballs on the code hopefully.

  • http://www.charlie-roberts.com charlie roberts

    In regards to multitouch, it only works on devices and versions of android that implement it for WebKit. I had hoped gingerbread did so, but apparently it is only Honeycomb at this point.

    Multitouch works great on my Asus Transformer and I've also had someone chime in saying it works fine on their Motorola Zoom.

    I'll change the copy in the market to reflect this more accurately; works on "capable" devices is misleading. Just to be clear, at this point it appears multitouch is tablet only for Control…

  • http://www.charlie-roberts.com charlie roberts

    I'll add that the next version of Honeycomb is designed to also run on phones… at that point the multitouch problem -should- go away for people who are able to update their OS.

  • oootini

    wierd. i downloaded touchDAW and the multi-touch aspect of that worked perfectly (to a maximum of three touch points) on my htc desire s….

  • http://www.charlie-roberts.com charlie roberts

    Oootini, touchDAW isn't implemented in WebKit (the rendering library used for web browsers), so multitouch should work fine.

  • Peter Kirn

    Right, and the major, major caveat about WebKit generally — true to some extent on iOS, too — is that it's likely to get better with time. It's not all there right now. The advantage of supporting it is that your software can also improve with time as WebKit improves, without doing anything.

  • oootini

    ah, thanks for clearing that up.

  • http://music-interface.com mat

    Yeah – a plattform independent touch control app will be great!!! No more – "oh, this is only on Ipad", "oh, this only on Lemur" All controls to all of us! Wow.

    However, I hope that open source is developed and documented well. I know – many people here are fans of open source – me not. I am willing to pay money if I get a working product. But lets be optimistic – they (we all, as open source) will make it.

    But by having a look at the page, I have to state that this might be a long way…. TouchOSC for instance is still miles behind the Lemurs Jazzeditor. And "Control" seems to be far behind TouchOSC. Sure – they started later – but that just underlines how difficult it is to get a good touch-control editor.

  • Peter Kirn

    That said, I dare someone to make a Blackberry- or WebOS-only music app.

    Seriously.

    I dare you.

  • http://www.charlie-roberts.com charlie roberts

    mat: If you're saying Control is far behind TouchOSC in terms of having an app to do drag and drop creation of GUIs, yes, that hasn't been a priority for me. So there isn't one; interfaces are instead made through editing text files for now. But I think comparing other features is pretty subjective and I wouldn't generally classify Control as being behind; it's behind in some ways, ahead in others.

    If someone gets me a TouchPad I will happily port to webOS. I'm fairly certain its web engine supports multitouch :)

  • Peter Kirn

    I'll go further, and say I don't think that having a separate editor app is necessary. It'd be better to edit on the device. And using dynamic generation of interfaces, the beginnings of which you see in the video here, there will be situations where you don't even need to edit at all.

  • Aaron

    @Brain

    way to open the comments section, with typical fanbay OS trolling. -10 interwebs for you.

  • http://www.twitter.com/dirtRAID Brand B

    Not to be too OT.. but unless I am wrong.. there is still no touch based OSC client that re-creates an endless encoder. I see plenty of 270 degree knobs.. but no encoders.. 

  • Peter Kirn

    @Brand B: That's a good idea, actually… noted. ;)

  • http://music-interface.com mat

    @ charlie

    You are right, maybe my words were to hard – there are some features in your app, that are even "in front" – like that dynamic editing. Actually one point was that missing GUI, that opens the door for a whole new user group. I just want to illustrate the point that developing a touch-control-editor is a long way thing. So some ideas that IMHO have to be considered on that way:

    - more objects are necessary. Especially the "range" (a 2 ended fader) because it makes sense in controlling and it is a natural interaction in multitouch

    - a light function independent from on/off status of objects (OSC command "…/light")

    - grouping Leds and MultiSliders in Vectors (maybe this is already done, but the last TouchOSC had only single LEDs which is to much work to control)

    - a GUI – or even better as Peter said – the possibility to arrange it on device

    - the possibility to paint control objects on device (wow)

    - physics…

    ok,ok … as said, on the long term! it is nice to see that someone has started, so deep respect for your work charlie! I know how hard it is (beneath some fun ;) )

  • Michael

    Just wanted to post another note of thanks, Charlie.

    I've written some stuff in ChucK to interact with Control and intend to add dynamic interface generation shortly.

    https://github.com/heuermh/lick/blob/bf2b6f9a265c

    and an example

    https://github.com/heuermh/lick/blob/bf2b6f9a265c

    (sorry for the long URLs)

  • Michael

    Dang, where's the edit button? And I how do I comment from my noisepages account? Oh well . . .

    https://github.com/heuermh/lick/blob/bf2b6f9a265c