Guide To Using the Androidome

What is the Androidome?

Androidome is a portmanteau of Android + monome, android being the popular operating system for mobile phones, and the monome being a minimalist instrument/controller/interface/toy. Like the monome, the app itself doesn’t actually do a whole lot out of the box, it simply provides an interface for sending and receiving data to and from your computer.

What do I need to run it?

  • Android powered phone running Android 2.1 or higher.
  • A host computer (PC/Linux/Mac) capable of at least running Max/MSP 5 runtime or puredata.
  • Both of the above to be on the same wireless network.

How do I use it?

  1. First of all, install the app. Get the latest version from the Android Market by searching for “monome” on your phone, or if you are viewing this site on your phone, by visiting this link.
  2. If you don’t already have it, install Max Runtime on the host machine, available free from the Cycling ’74 website. Alternatively you can use the open source equivalent puredata.
  3. Start the application on your phone.
  4. Download and run AndroidomeRouter[v3].maxpat (Max/MSP) or AndroidomeRouter.pd (puredata) on the host machine. This opens a channel to allow apps to communicate with the phone. You need to leave this running in the background for the app to work.
  5. Enter your host’s IP address in the box marked Host on your phone. If you don’t know how to find this, this site will talk you through it.
  6. Open your desired monome patch (list of apps can be found on the monome site), and set the appropriate prefix on your phone.
  7. Click the Connect to Max button on the phone. You should see activity (flashing yellow circles) in the router application.
  8. Enjoy!

Any trouble, just leave a comment here, or on the monome forums.


Q: What is a monome?
A: A monome is a reconfigurable grid of backlit keypads which connects to a computer. Interaction between the keys and lights is determined by the application running on the computer – there is no hard-wired functionality. Full discussion can be found here, or try the wikipedia page for more info.

Q: My phone isn’t making any sound. What’s wrong?
A: Like the monome, the app is simply a controller – all sound/data is produced at the host machine.

Q: My computer isn’t making any sound (or it sounds rubbish) What’s wrong?
A: By default Max/MSP sends MIDI information to the awful Microsoft Synthesizer (on Windows anyway!). To get nice sounds, you need to route MIDI to a VST Host or external synth.

Q: Do I need monomeserial running for this to work?
A: No, only the router application needs to be running for the app to work.

Q: I have an iPhone. What should I do?
A: There is a similar open source project called haplome. You should check it out!

Q: I want to use it on stage but often there’s no wifi. What can I do?
A: Looking into it, Win7 users could try creating an ad hoc network using connectify


Currently uses too much battery power. I’m looking into this at the moment.


If you enjoy using this app, donations are greatly appreciated:

hidden image

Source Code

Full GPL3’d source code available at the Androidome Google Code page.

Market QR Code

QR Code for Androidome



  • Tablet User says: 11/06/2011 at 04:13

    Hi this app doesnt show up in the market on my phone or tablet. Please add the APK to the Google Code page or here so I don’t have to download and install JDK, Android SDK, etc to create an executable. Thanks and can’t wait to try this out.

  • fengrr says: 06/07/2011 at 05:58

    I got it working but my app doesn’t update very well and doesn;t look like your phone.

    The graphical display is just really really delayed. I see arpshift on my PC light up as soon as I tap the square and I hear the note, just the app’s display doesn’t update.  I don’t see the ticker either.

  • HI. I’ve had great success with live+OSCulator, in addition to some of the monome apps. It’s donation ware, but the guy that runs the support is responsive and helpful.

    If you need help getting started, lemme know:

    Open this application first and set the port of the osculator window to standard of arduinomerouterv3 (for me this is 8001)

    then, open arduinomerouterv3 max patch w/ runtime or 5 (routerv3 max button should flash yellow when you hit buttons if its hooked up correctly)

    go back to osculator port 8001 window, toggle a few buttons on the grid

    you should see a xxxx…/press message of your router device in osculator window (save file now)

    click on the “0” under the xxxx…/press message

    go ‘edit-demux’

    then press another grid button… and demux the next “0” message

    now when you press the grid in that same column, you’ll have individual “osc” buttons capable of sending midi data – set one such button to cc 0 on channel 1 for example (working left to right)

    then go to live – preferences midi/sync and track, sync and remote enable “osculator out”

    assign your  osculator cc to live by hitting command+m in live and clicking on any old audio track record enable button

    then watch the live contoller be contorlled when you hit the corresponding grid button ( the osculator cc )… if all goes well you’ll be setup and can expand

    good luck


  • Got the thing working – sort of

    Galaxy S to USB WiFi in adhoc mode on a non-internet connected PC.

    When using the monome_test the control works to the PC (changing the keypads and lights), but there is a long (3 to 8 sec) delay before the graphic in the phone is updated.

    Any thoughts?

  • hemmer says: 04/04/2011 at 09:02

    That’s very strange. I’ve just tested the router with the latest version of Max Runtime (5.1.8) and it seems to load fine. Only thing I can suggest is completely uninstall Max (Full and Runtime), run something like ccleaner (use at own risk) to get rid of any old installation information, then just reinstall the latest Max Runtime. 

    Hope this helps, Ewan

  • hemmer says: 11/06/2011 at 13:40

    Hi there,

    Good idea, . apk can now be downloaded here. Let me know if it works on the tablet.


  • Richard says: 30/01/2011 at 03:24

    this is a noob question, but i’m trying to figure all of this out and new to everything about this, can anyone direct me to any resource that could use to getting started from scratch, as in patch programs, and also setting up max/msp with a patch program, i have spent 3 hours trying to figure it out but there is so much information out there i can’t navigate it well.

  • i downloaded the trial demo of max msp5/runtime.  everything worked fine.  demo expired. now i cant get it to work.  i used the max demo to open the router instead of runtime and it worked excellently.  now that i have deleted the demo from my computer and downloaded runtime 5 i can’t get the router to work.  when i try to open it in max runtime nothing happens.  when i open max runtime first and then try to open your adroidome router from there i get a a notepadesque document containing code or something that starts with “patcher”  “file version” : 1 “rect” : [ 1961.0, 133.0 etc. etc.      I tried the puredata one and it works fine but the monome apps i like are all max files

  • hemmer says: 04/05/2011 at 09:14

    interesting. i’m in the middle of finals just now but after that I was planning an overhaul of the code so i’ll take a look at the ad hoc thing then too. do you have the same delay problems on a normal wifi network too?

  • Hey!

    anyone know how to get androidome to run with ableton. I just can’t seem to get it to work. also it keeps force closing on my desire HD.


  • I used Connectify to hook my Droid to the PC, that works great.

    I downloaded Max Runtime, and AndroidomeRouter[v3], and the latest Arpshift.. The Droid can connect to the PC, I see the AndroidomeRouter yellow lights blinking and a bunch of arpshift messages scrolling by. 

    No sound.. so I setup LoopBe, and AudioMulch with SuperWaveP8 using your directions and still I get no sounds. I did set the LoopBe midi in the Arpshift selection box.

    I have LoopBe Internal Midi setup as Midi Input on AudioMulch, using P8 and connected to Sound Out.. I enabled midi and audio, and hit the play button on AudioMulch.

    It looks like the data is flowing from the Droid to the computer but I have no way of knowing where my problem is at.. help?

  • hemmer says: 17/12/2010 at 16:05

    its depends what you want it to do? you need to be running one of these apps to generate midi which you can route to ableton using loopbe.

  • hemmer says: 17/12/2010 at 16:03

    hmm that is strange. do you use any other programs for music production (ableton etc)? if the lights are flashing then at least the phone end is working.

  • hemmer says: 17/12/2010 at 16:01

    Yeah the app deliberately doesn’t respond to prefix messages. This is because some people seem to use it as a secondary controller with a monome, so rather than have all devices switch to the new prefix, it is set at the phone end. its a relatively easy mod to the source code if you need this functionality (i can help you if you get stuck) but i’m going to keep the main app as is.

    thanks for the feedback

  • Hi Ewan and All,

    The program is running and working perfectly when I manually change prefix text with the text editor on my samsung tab. However, it does not receive the /sys/prefix change messages when they are sent from applications that router[v3] is “running.” (arpshift, nerdscroll, xor, slide, etc). 

    Example: I manually enter “nerdscroll” into prefix box and all works.

    Then, i relaunch all programs (or not) and leave prefix box blank. Then, I click nerdscroll’s native “/sys/prefix/ /nerdscroll” button, but it does not send a prefix to androidome. router[v3] running and communicating properly.

    If I manually enter “nerdscroll” into prefix box again it works again.

    Does the source code need to be modified in order to change prefixes like this from within max, osculator, etc? or, can you change the prefix in androidome from within max or others as is?

    Thank you!!!


  • hemmer says: 19/11/2010 at 09:59

    Hi there, I have heard from someone with the Galaxy S (same phone?) who also said it wasn’t working. I’m not sure how to help to be honest as I don’t have the phone. If you’re a dev, feel free to check out the source code and have a look for any bugs. You don’t actually need the port, just the IP:

    Prefix: example (no forward slashes)
    IP: (no port)

  • Greetings, this app is great and versatile. It works on Droid X, but I’m not able to operate with Samsung Galaxy. Host IP and port are correct: “ 8001”. Tried with both pd and maxpat. Froyo 2.2, 1 Ghz, all apps closed.

    Two ?s

    Have you received feedback from other Galaxy users that this works or does not work? 

    Is this the proper formatting for IP and host above? Is any punctuation needed between port and IP text in “host’ box in app?

    Thanks so much!

    AC, Chicago

  • Anonymous says: 06/09/2010 at 11:22

    True beans.

    And thanks for the link. So far Arpshift has been pretty fun to play (its nice to be able to shift around the played notes so easily). 

  • Anonymous says: 25/08/2010 at 20:13

    HI and thanks for this nice piece of programming, I was actually interested in knowing if there was any good code able to run monome scripts with a interface like the one I see in this video (and it does answer my question) for my future Android Tablet (waiting for Samsung Galaxy S or We Tab) to kick the out of the iPad..Tablet spec will definitely run on Andorid 2.1, is this compatible? will it run on a USB connection eventually? (can’t see much of a wifi connection while on stage).

    Great stuff.

  • hemmer says: 04/09/2010 at 09:54

    Yeah its a good point about the wifi connection. Cable use would be nice, but I’m not sure if that’s even possible (will look into it though). I’m looking to get a tablet myself, so once I do I can look at extending it for that. Theres no reason it shouldn’t work – grid size is determined by screen size. Let me know how you get on.

  • hemmer says: 23/08/2010 at 10:20

    Good idea about hiding stuff away in a menu. I’m not sure how well a 128 version would work though, the aspect ratio of the screen is less than 1:2 (on my Desire at least) so the buttons would actually have to be smaller to fit on! On a tablet however…

  • Anonymous says: 20/08/2010 at 20:05

    you should make the buttons larger, the size of the screen would accomidate a 128 very nicely.


    put the onscreen settings under the menu or sothing.


    my fat fingers cant push the small buttons.

    i love it though, and love you

  • Anonymous says: 16/08/2010 at 21:19

    This is amazing, thank you for your work! I just downloaded from the market and will try to use it during the week. But is seems promising.!

  • Anonymous says: 18/08/2010 at 17:48

    I have it set up and running on my Motorola Droid, and it works very well.  I think it is not displaying all the “LED” animations when they are too fast, but not much of a loss.  Three pieces of advice:

    1. It destroyed my battery life.  I’m ok with that.

    2. You need to press enter when changing the patch to submit the change.  Pressing “Connect to Max” does not do it.

    3. Start with monome_test.mxb from to make sure it is working.


    This app is awesome, keep up the good work!

  • hemmer says: 18/08/2010 at 20:37

    Thanks for the feedback. I had not noticed how bad the battery life was – will look into that. Cheers, Ewan

  • So this is a wonderful app for my milestone, but now there is no response on my screen (no oragnge dots) so the host adress is the same… prefix is fine (it works but no response on my phone).

    The second is how does the app work with a switcher? the ports between 7000 -7070 are needed.



  • hemmer says: 23/11/2010 at 18:01

    Hi there,

    Couple of things – one your computers host address could have changed. If your local IP is not fixed, it should update every couple of week. So first thing is check your computer’s IP hasn’t changed. Also try pressing Connect to Max again (sometimes this is needed).

    Next this is a good idea about selecting ports. I’ve put up a new router on the google code page, this should address the problem. if you can let me know if it works for you that would be great.

  • Anonymous says: 23/11/2010 at 20:46

    The switch works with the “monoswitch” App

    Ports 7000 and 7070  — arpshift and polygome together (don’t forget to push out the learn button in monoswitch, it coast me half an hour)

    But still all is working right but i can’t see any led lights on my phone (the orange Dots) is it possible that i had to setup some preferences in Max?

    Big up! Thanks

  • Anonymous says: 22/08/2010 at 14:54

    Hi, I have Ableton with Max4Live, copied the maxpat file to the tools folder in M4L where the others reside, but it doesn’t appear in Ableton as a midi or audio instrument? Cheers Scott

  • hemmer says: 23/08/2010 at 00:24

    The .maxpat file should just be run in max runtime separately from ableton. Its just the router, your other M4L apps should work fine with the app.

  • Anonymous says: 23/08/2010 at 08:41

    Now programming monome stuff on the go dosent require an actual monome…

    Also, what are you running in the demo video?

  • hemmer says: 23/08/2010 at 10:18

    Running an odd sequencer app called arpshift. I have to say, nothing beats the physical thing for ease of use…

  • Anonymous says: 03/09/2010 at 08:35

    Very cool… this is my first encounter with monome (or any midi programming for that matter!)… I’m having a little trouble. Seems like it’s a simple communication error between the androidome router and arpshift, most likely on my part. Is there a place i could read up on it or ask about it?

    cheers! I can’t wait to get this going.

    I’m Jack by the way.

  • hemmer says: 04/09/2010 at 09:50

    Hi there, do the lights flash yellow in the router app when you press the buttons on the phone? If not, check your IP address settings etc. If they are flashing, make sure the prefix is set correctly on the phone – for arpshift you should enter just the word arpshift. Any more difficulties, you can leave a message on the monome forums.


  • hemmer says: 11/09/2010 at 09:26

    Hi there. The lights and button presses are completely decoupled. Some applications will have the buttons light up when you press, others wont.

    Here’s a test to make sure everything is working fine. Can you try downloading monome_base? It should contain a patch called monome_test.mxb. Open it up and under the grid named keypads, choose the option press for pairing. Let me know if this works (you’ll need your phone to have the prefix test).


  • adroid says: 11/09/2010 at 07:24

    Perhaps it is the phones skin that is not allowing the app to function, I do not know. The problem is that the interface does not react at all to my touch. The “buttons” do not glow orange when I touch them. IP address is correct, max/msp patches downloaded seem ok – Androidomerouter receives “connect to Max” signal. Any solutions? Or am I just doing something wrong?

  • Great job on this App!  I was wondering if maybe in a future version you were planning on allowing control via USB? 

  • hemmer says: 22/10/2010 at 14:38

    Yeah people have mentioned this. I’m not sure if its possible at the moment, but I’ll have a look into it. If you’re Android 2.2+, you might actually be able to create an “ad hoc” Wifi network to connect to with your laptop, meaning you could use the app without needing a wifi router (eg could use it on stage). I’ll test this when I get home.

  • hemmer says: 03/11/2010 at 20:17

    Hi there,

    I’ve been meaning to do this for a while – your comment got me into action. It’s just been uploaded:

  • Sean Sill says: 02/11/2010 at 03:35

    Anyway you could get this to work for PD?

  • Perhaps if the phone was set to USB Debug it would make it possible…

  • big fun with gtab p1000 + your androidome + polygomè routed into my old microQ.

    yayy!!  thanks a lot ewan! impressive job!!  i had a wonderful dreamy locrian afternoon :))


  • johnny says: 06/07/2012 at 21:15

    wow thats great

  • Looks fantastic.  BUT…I have just spent the last few hours trying to figure this out.  Followed the instructions to the letter repeatedly but have just got nowhere.  I am communicating properly with the router application as I am getting flashing lights there when pressing buttons on my tablet.  However, no matter what patch I open up I never have any connected devices and can get no response within the patch itself.  Trying to use this on a Sony Tablet S.  Any help would be much appreciated.


  • Anonymous says: 20/05/2012 at 13:52

    nice design of your site

  • hemmer says: 19/07/2012 at 12:29

    Hm this may be a tablet issue actually, I know people have been having trouble with tablets recently (especially with ICS). I’m actually hoping to pick one up soon so I will test it myself then post here.


  • Anonymous says: 15/11/2013 at 03:58

    It is so detailed.Thank you very much!

Leave a Reply

Your email address will not be published. Required fields are marked *