pages 2 alpha release

  • hey RAH, glad to hear it's mostly working! i don't really have experience with this specifically but the first thing that jumps out at me is the prefix is "/none" in the returns screenshot? you may try setting the extapp prefix to /none and see what happens?

  • phortran,

    ok so I messed up big time. Didn't realize I had TWO Live 9's installed - I was dropping LiveOSC into the wrong one. epic fail on my part haha. I now have LiveOSC selected as a control surface, and the Clip Launcher / MIDI sequencer pages work great.

    I've run into an issue though. I can't seem to get a quadrants working with an external app. The "fake" monome (extapp - 45064 - prefix) doesn't show up in the Max app (in the case Polygome). I've opened up the version of polygome that fits the quadrant size, and I've pressed update preferences on the external application page. Could this be an issue with 64-bit Max?

  • hi sauceboss, does external app work outside of quadrants? if not then you probably need to install the zeroconf externals and serialosc.maxpat, i don't think they've been compiled for 64 bit yet (could be wrong?) so you may also need 32 bit max/msp. see the instructions here:

  • Hey phortran...
    I've spent some more time trying to figure out the problem I mentioned getting led feedback on the arc through pages. I'm not having any luck so I thought I'd post some screenshots for you to take a look at. Just to clarify, the app (returns) is receiving messages through pages, but there is not led feedback. The prefix is /none and is set that way in the app and in pages. Take a look if you have some time and let me know what you think? Thanks for any help...

    281 x 323 - 27K
    1265 x 722 - 160K
    1260 x 721 - 197K
  • @phortran
    today I finally got pages working and it was glorious, however I'm having issues with the ext app page.

    I tried to change the host ports to 7000/6060 on serial so that mlrv2 can use the defaults
    and I run into two problems.

    1 using standard setup with out changing ports or anything While using cliplauncher it will work fine but just opening mlrv causes buttons to stop working although i still get led feedback.

    2, changing ports to 7000/7070 lets me use buttons but no led feedback.

    have you got any ideas how I can fix this.


  • hey RAH, i will try out returns and report back! make sure you're using the very latest version of pages: if you aren't sure.

    pekopeko, happy to hear it worked! it sounds like you're still using monomeserial? i haven't used it in that way in a long time and would recommend upgrading to serialosc, however i've seen windows versions of monomeserial hold on to a listen port after you've changed it, so maybe that's why external app is having trouble listening for led messages from mlrv. if you're on windows i wrote a monomeserial replacement in python that used to work alright for me! you can find it here:

    i can help you with this if you want to try it.

  • I managed to set up the monome and connect it to Ableton using Pages, all working good what playing clips regards etc. But what I don't manage to understand is how to use the monome as Midi instrument for playing the instruments in Ableton?

    Can it be connected to that half of the Midi options in the Ableton Preferences dissapeared?
    (see the attachment). Under "Midi Ports" there is no longer anything, it was there when I set up the Monome...


  • phortran, still trying to find a way to send midi from arc to ableton through pages. I'm trying now to use the Arccc.groovy page and I'm not sure I've got it all set up correctly because I'm running into a couple of problems.

    First, for some reason I don't see midi coming into ableton from pages. I've got MIDI Output set to Bus 1 in the midi preference menu of the groovy page and also in ableton to receive remote messages from Bus 1. The encoders on the arc respond with led feedback, but no messages are received in Ableton. See attached screen shots.

    The second problem I'm having which might have something to do with setup, is I want to run multiple instances of ArcCC.groovy which switch when switching the grid pages through 'page change configuration'. I've got that switching set up and it seems to work but the position of the arc encoder doesn't refresh when the page changes. i.e. when changing from page 1 (linked to groovy.page1) to page 2 (linked to groovy.page2), the position of the arc encoder seems to stay on the position of groovy.page1.

    Sorry for such a wordy and confusing post. Do you have any ideas of what I must be doing wrong? Is there something in the script that I should change?


  • @ phortran sorry I should have said im on mac.

  • hi paida, that is a very interesting issue, although i have to say it's more of an ableton issue. if you're on windows it could be 64 bit ableton / 32 bit drivers, i know midi yoke is 32 bit.

    hi RAH, regarding no midi coming in from pages you should check into this: installing it should fix the issue. you need to copy libmmj.jnilib and mmj.jar to /Library/Java/Extensions
    it sounds like a bug with refreshing the led state or calling the refresh method. i have a feeling it's in the java code but should be an easy fix. i will check into it.

    hi pekopeko, monomeserial on mac then? i hate to say it but you might be out of luck, i think it may have a bug where it keeps the default port (was it 8080? or 8000?) open even if you set a different port. you can verify by dropping to a terminal and running:

    lsof | grep LISTEN

    this will show you which processes are listening on which ports. you may have to really dig into setting the ports and modifying the patches to get them working right. things do work much better with serialosc though, you don't really have to think about ports anymore.

  • +1 for upgrading to serialOSC things have been running much smoother on my end after the upgrade. I did have to conciously think about enabling my apc 40 first though before plugging in my monome so just a heads up if you have any other control surfaces.

    on another note,
    I did finally get pages running smoothly and im loving it. The only issue i am experiencing is on the midi triggers page into ableton. Button presses are picked up fine and work beautifully but I am not seeing any LED feedback on the monome side.

    Pages MT page midi:

    In: midi yoke 2
    out: midi yoke 1

    Ableton midi preferances

    In: midi yoke 1 remote enabled
    Out: midi yoke 2 track and remote enabled.

    (This setting has always worked well for me when using monomeserial in midi mode)

    I have tried every combination of on off on those midi ports I can think of with no result. I know phortran said he would look into this I was just wondering if anyone else has experienced this issue or has any additional ideas?

    Thanks guys :)

  • Phortran,

    Thanks. That did the trick..

    Let me know about the led refresh when switching groovy pages ... That would be the skin on the chicken!

  • @phortran - is it mandatory to run pages every time I want to send MIDI to another third party app (e.g. Logic, etc), or can I just use midipipe?
    Put it another way - what is different between the two methods?


  • no, it's not mandatory, pages is just an app like any other. some send midi, some don't. you will need the IAC midi bus for any inter-app midi sending though.

  • bump id really like to know if someone has any ideas about the lack of led feed back for midi triggers page. sending midi info to ableton. if noone has any ideas if they could please give me an example of what their midi preferance settings are so I can compare. Thank you!

  • Hi, the manual link
    is broken. Does anyone have an alternate link?


  • sorry about that, it should be fixed now.

  • Hey Phortran,

    I'm not able to send any commands via my monome.

    64 greyscale
    Mac OSX 10.8.4 (Mountain Lion)
    Ableton Live 9

    I've got LiveOSC's red box and I am receiving MIDI from ableton (sync as well). I seem to be able to receive messages from all pages, but I cannot get my Monome to send any MIDI. Nor do any of the LED's react to my touch.

    I seem to have it all inputs and outputs set-up.

    From what I understand, SerialOSC still puts up a fit with Mountain Lion, so I turned it off and am running pages off the Monome Serial set-up.

    Host: 8000
    Listen: 8080

    Pages seems to discover my Monome fine.

    I'm stumped.

  • i would avoid monomeserial and try serialosc again. it sounds like the osc messages aren't coming through one way for whatever reason with monomeserial but really i don't think there's any reason not to use serialosc and that should solve your port problems. test a simple page like midi faders with no midi setup to make sure you can press buttons and get led reactions. disabling your internet connection temporarily has also been known to clear up issues, try that if nothing else is working.

  • Switched to serialOSC. Flawless. I had some feedback issues at first with the LED's, but switched up my IAC and now it all seems to be working to perfection.

    I have had a lot of issues with serialOSC using other apps, but Pages seems to be functioning wonderfully.

    You, my friend, are a legend.

    Thank you.

  • Although, I have now lost an entire night to pleasurable fiddling with my new toy...

    I'm sure my wife and employer will be thrilled ;)

  • ha! glad to hear it's working.

  • @phortran
    There's a m4l app that me and a friend of mine made a little while back. I'm trying to run 2 instances of the app inside Ableton, one app triggering my Ableton clips on the "A" side, and one instance triggering my clips on the "B" side. But as soon as I connect the second instance of the app, the first instance of the app stops working. I tried to upload the amxd file to share the app on the this thread, but it said that the file type is not allowed. Is there any way you could check this out really quick and see if you can help me get this to work? I can email it to you. Once I solve this, the last 3 years of pulling my hair out trying to get everything on the monome to work will finally be over. I have a couple of videos of songs I've already made:

    But until I figure out how to get 2 instances of the app going, I won't be able to mix my music or play shows. Thanks in advance.

  • hey man, on the external app page try changing ports so they don't have any in common, do that before clicking update preferences.

  • success! thanks so much! I know what I'm gonna be doing all night tonight now :)

  • @phortran -
    i have a strange issue: im using pages + monomeserial + 2x40h. one of the monomes is running an external app and the other does clip launching in ableton, sofar was working great, today i disabled "liveOSC" from the control surface menu in live (9) and since then after i chose it again from the menu i have no led feedback from the launcher(buttons work fine), restart didnt help. any ideas?? thanks!

  • i manage to always find use for the midi sequencer to trigger my analog drum setup. Any chance the future holds 1/64th quantization or use of 4 sequencer pages on a 128/256? I am thrilled with what i can do with what I have, but that would be icing on the cake.

  • @sbx
    do the leds light up at all? if they do and you're just not getting feedback, then you should check to make sure you're still sending midi remote/sync out from ableton to pages clip launcher.

  • thanks elquinto, that's my guess as well. if you just have an iac output in ableton sending sync and have the input enabled in pages that should fix it.

    hottlungs, you can use 4 sequencer pages on a 256 or 2 on a 128 with the quadrants page. just create a quadrants page and then create 2 or 4 midi sequencers. 1/64 shouldn't be too hard to add, i'll keep that in mind for you. also you might be able to double your tempo for the same effect.

  • @phortran I love pages, thanks for making it! I finally started spending some quality time with it and it's my new favorite app. Thanks for making the source available too, it was invaluable in learning how to use the Mid Sequencer Poly page. Plus, it was fun to read. I totally wasn't expecting it to build so easily as well, nice work!

    The only thing I've noticed so far that I have no idea how to fix (I'm not super fluent in Java programming) is that after being left open for a while things start to get out of sync. Thats after being left idle in the background for an hour or more. However, a quick restart and it's back in action. :)

    Edit: Actually it was left running in the debugger when I came back to it so that might have something to do with it.

  • hey, wow, thanks for getting in there and working on some of those bugs! i didn't write the Poly page myself, one of the few i didn't, so i'm not so clear on how it works either lol! it's just literally been years..

    would love to get some pull requests when you feel good about the code (or whatever works) and incorporate it into a new release for everyone.

    for the sync issue.. hmm. i'm guessing we're talking midi clock sync and pages moving off "the 1" in terms of where the midi sequencer page loops back, things like that. i would say if you want to run the test again, do it with a regular midi sequencer and the poly and see if there's a difference. that will tell you if it's pages itself or page specific code.

  • Really I haven't squashed any "bugs" yet, but I'm more than happy to. Is there a bug tracker for pages anywhere?

    The only changes I've made so far are things I found convenient related to the Poly page: setting an initial bank selection and serializing/deserializing bank selection and I have plans to save/restore the rest of the state of the page (octave state, etc...).

    If you think everyone would want that stuff I'd be happy to contribute it.

    Regarding the sync issue, I'll test against the regular midi sequencer a little later today.

  • Has anyone had success with using Mark Eats Sequencer with pages, routed through Ableton? I can't seem to get the midi sync right, or the monome to respond in general while on the external page that's connected to MES. Any thoughts?

  • fixed!

    edit: also sevenuplive now seems to work via ext app, although i had to click connect a couple times

  • @phortran
    is there a +/-1 offset for clip/scene launcher pages in the latest release? this had been requested before, just wondering if it ever made it in...

  • @phortran Ok, one more issue... Now I can link up with M.E.S. fine, but when I try to use other apps the external app Osc port is not showing up in the drop down menu inside of the app.

    In other words when I try to connect to MLRV it is only showing an option to connect directly to the monome, no option to connect to external app. I have tried to Update Preferences as well. Thanks again, I really appreciate the help.

  • hey elquinto, i'll see if i can add that.

    brave, there's some steps here for getting zeroconf serialosc installed, i think you need to do that.

  • Hey phortran,

    I'm trying to get pages working with the old mlrV, I'm following your instructions in the manual but can't seem to communicate with monomeserial or mlrV via pages. Ive tried plenty of permutations, but basically I open monomeserial (host port 8000, listen port 8080) and change prefix to /40h, then open pages, make a new configuration, save monomeserial setup, save new monome configuration, start a new external application page with prefix /mlr. Everytime the osc in port gets assigned a random number (I have tried sticking with this random port, and changing it to 8080, to no avail.) then open and run mlrV, and the monome doesn't send or receive messages. In the max window, everytime it says it had trouble binding to port 8000, so it binds to port 8001. I assume I just don't completely grasp the signal flow as far as ports are concerned and am setting something wrong, but I have tried switching every port to every logical permutation I can think of, and nothing.

    I on mac 10.8.4
    using pages 0.2a49, max5, monomeserial (and serialosc eventually if possible).
    Not sure if this is an issue but I have both serialosc_non_zero.maxpat, and serialosc.maxpat in my patches folder

    here are some screenshots of my setup:


    imageimage/community/uploads/FileUpload/9a/81be442973ed87181c7118f1456ed6.png" />


    any ideas??

  • sorry those pics are so big!

  • hello! so i believe the problem here is mlr wants to listen on 8000 but pages is already listening. try setting monomeserial to 7000/7070, pages will now be listening on 7000, then set pages extapp to 8000/8080 and then you don't have to muck in the max patch to set the port to something else.

    i do recommend serialosc if possible!

  • thanks, will try. Is there a way to use serialOsc in pages with older apps that use monomeseial, like with the monomeserial bridge o something?

  • yep! external app can handle both monomeserial and serialosc protocols, no config needed, either one works by default.

  • I'm much closer now, but still not working. When I try the monomeserial route, I get communication to the monome (blinking tempo light), but nothing from the monome (no button presses). And when I try pages with serialOsc via the monomeserial bridge I am getting button presses into mlr but no light feedback. pages worked fine with serialOsc into the serialOsc monome test patch, and the monomeserial bridge works fine when using with mlrV without pages. But when I use pages as a hub with either serial method, I lose 2 way communication with non-serialOsc app (mlrV).

    here's another shot of my routing with monomeserial, and one with serialOsc

  • when using pages with serialosc you do not need monomeserial bridge to run monomeserial apps, external app will handle that. sorry if that wasn't clear!

  • cool. now, with pages -> serial osc -> external app, (no bridge) I am still getting no button press info registering. I've tried with mlrV and the old monomeserial test patch. Only light info is sending to the monome from monomeserial apps.

    in pages serialosc external app setup:
    osc prefix- /mlr (or /test)
    osc hostname- localhost.localdomain.
    osc in port-8080
    osc out port-8000

    then I hit update preferences. it seems port 8000 (which is the port that default works when I use monomeserial) isn't working for some reason.

    thanks sooo much for your help and patience btw (...I feel like a pestering dufus!)

  • no worries, hey try just localhost instead of localhost.localdomain. or try

  • that did it! wow!
    you are the man!!

  • great to know, i've updated that default for the next build

  • Hi phortran. I've run into an unusual bug. When stopping a pattern recorder I get a pages crash and the following message. I'm running 0.2a47:

    declutterair:Monome pc$ java -jar pages-0.2a47.jar
    log4j:WARN No appenders could be found for logger (socketLogger).
    log4j:WARN Please initialize the log4j system properly.
    log4j:WARN See for more info.
    Reading configuration file: /Users/pc/_Pages128
    MonomeConfiguration m128-574: created org.monome.pages.pages.ExternalApplicationPage page
    OSCFactory: began listening on port 5001
    MonomeConfiguration m128-574: created org.monome.pages.pages.QuadrantsPage page
    MonomeConfiguration fake-1: created org.monome.pages.pages.MIDIFadersPage page
    MonomeConfiguration fake-2: created org.monome.pages.pages.MIDITriggersPage page
    resolved device: monome\032128\032(m128-574)._monome-osc._udp.local.
    OSCFactory: began listening on port 12345
    Service registered: extapp-5001-m128-574 / _monome-osc._udp. / local.
    resolved device: extapp-5001-m128-574._monome-osc._udp.local.
    Exception in thread "Thread-17" java.lang.NullPointerException
    at org.monome.pages.configuration.Pattern.clearPattern(Unknown Source)
    at org.monome.pages.configuration.PatternBank.handlePress(Unknown Source)
    at org.monome.pages.configuration.MonomeConfiguration.handlePress(Unknown Source)
    at org.monome.pages.configuration.MonomeOSCListener.acceptMessage(Unknown Source)
    at com.illposed.osc.utility.OSCPacketDispatcher.dispatchMessage(Unknown Source)
    at com.illposed.osc.utility.OSCPacketDispatcher.dispatchMessage(Unknown Source)
    at com.illposed.osc.utility.OSCPacketDispatcher.dispatchPacket(Unknown Source)
    at Source)

    Any ideas? Thanks!