Grid Studies study group

Hi! Apologies in advance for the long post. I’m really excited to be getting my new grid and completing the max step sequencer lesson that @tehn created for the grid studies series. I may be jumping the gun here but I’ve tried learning max for the monome in the past and never got very far, and hoping to avoid that again. I’m thinking that a grid studies study group of like minded beginners might be fun. We can bounce questions off each other, help keep ourselves motivated, and maybe even come up with some cool new apps in the process!

I’m open to any kind of format but I initially thought we could come up ways to expand on the grid studies step sequencer so that we’re all starting from the same base. We can either all work on the same feature or each work on something different and figure out a way to combine them. It would be great if we could have some experienced mentors to support and help guide us as well.

To get the ideas going, here are some features I thought might be good projects. Keep in mind I have no idea how hard it is to implement.

  • Patterns that can be selected from the bottom row somehow, or sacrifice a note row and have it on the top. Press a pattern to change to it (either immediatly from the first step, at end of previous pattern, or legato mode). LED indication of what pattern is playing. Press two patterns to loop between them, for example to create a 4 bar loop.

  • Long hold on any step in a note row to go into a keyboard mode to select the note for that row. Or any other way to select the note value for a row from the monome without typing it in.

  • Press two steps within the same row to create a tie between those steps to be able to have different note lengths.

  • Some way to dynamically change step resolution, and some way to indicate what part of the bar you’re in. Would be great to be able to do super fast syncopated snare rolls.

  • Maybe a sequencer where each row can output to a specific midi channel and there is a way to “parameter lock” a step’s velocity, pitch, and cc. So you can have a drum sequencer and a few melodic sequences all on the same page.

  • Or be ambitious and try to create a metropolis/m-185 type sequencer. I imagine this would be difficult but would be so awesome! This is what I’d ultimately like to create so if there’s interest, maybe we just go for broke try to make it together?

Anyway, if anyone is interested, I’d love to hear your thoughts and ideas! Even words of discouragement are welcome. I know how difficult it is to have something like this work.


Sounds interesting. I’ve been meaning to start learning how to program for the grid. I’ll start tonight and let you know what I think.

yeah let me know how it goes @michael_matos! Will you be doing the max tutorial? So I got my grid and plan on tackling the step sequencer in max this weekend.

I have another idea for an app that I definitely need to find a way to make. Hopefully someone can point me in the right direction. I basically want to have the monome_midi_128 patch found in monome_base to work in max for live without the need to run max outside of Live. The idea being that it will open up with my Ableton template and will give me 128 chromatic midi notes, led feedback with each press, and route itself to the input of the midi armed track in ableton. Does something like this already exist or can someone point me to a basic monome/m4l tutorial to get me started?

Yes. I started the max tutorial. Going through it slowly as I see why they do things a certain way, but I can’t recreate the though process in my head when trying to recreate. There’s mimicry, and then there is comprehension. That’s where I’m struggling.

I’m trying to wrap my head around the challenges at the end - any hints as to know to make the LEDs reflect loop length?

@michael_matos I have the same issues with comprehension. I’ve been doing the lessons in a 3 part way. First I’ll open up the patch for that lesson and have a look around. Then I’ll close it and recreate it using the visuals on the grid studies page as a guide. Then I’ll try to recreate it without looking at the grid studies page. Difficult for a newbie like me but fulfilling when I can get it working. That’s still not full comprehension though but I’m developing some muscle memory.

@reallyok I’m not quite done with the grid studies but I plan on tackling the challenges afterwards so I’ll let you know what I think of. Have you had any thoughts on how to do it?

Maybe we can come up with some challenges for each other? Doesn’t have to be related to the step sequencer patch. I’ve always thought about having a scale function in parc where you select the base note and the scale and it will autofill the cells with the appropriate notes. Maybe it can be brought over from other apps that have this function? Or adding mutes for channels on the grid. Or even easier, some way to go between the global and note mode on the grid? Anyone game?


I’m gonna lurk on this thread.

Well, I just know where in the patch the loop info is determined. I’m trying to figure out how to process the visual feedback.

Nice post / idea Kev!

I’m just coming back to monome and max after a many year hiatus. Just ordered a 128 kit, and started sketching out a sort of master midi sequencer idea. Will definitely be down to share and discuss as much as I can. I just started sketching out my app, but re:

  • Long hold on any step in a note row to go into a keyboard mode to
    select the note for that row. Or any other way to select the note
    value for a row from the monome without typing it in.

I like having a little 1 octave keyboard (i’m not a fan of all the 8 step scale business, drives me crazy) for inputting the note. With a little octave selector (6 octaves is plenty for me) Just thought I’d share:

my sketch

I work in a similar way. But sometimes I feel as if I’m just getting better at remembering. YouTube tutorials have been a big help. I really wish they had more of those built in max 7 tutorials. Those rule!

Indeed, having immediate feedback from somebody (even another beginner) is gold in the process of learning…

Don’t be afraid of asking about even what seems to be the most trivial problem. I’m sure folks are happy to answer specific questions…

I’m less into max these days (not as in not interested in, but priority and time allowing wise)
But if anyone is into node.js, hit me up…

I am just going through the grid studies sequencer tutorial. I am stuck at a point here. There are no inputs or outputs on the p trigs object. A blank “trigs” patcher page opened. I connote figure out what should be in the “trigs” patcher page?

have you downloaded the tutorials files? they’re linked at the top of the studies guide. it’ll let you then just open the files that the screenshots were generated from.

Has anyone made any progress on any of the suggested exercises without using java yet? Could use a few pointers, especially on the loop dimmed durations.

does anyone know if max 6 will work for current grid studies?

i thought i had 7 but i guess not?

Max 6 should be fine.

1 Like

hoping as reminder this post to reignite will along lines of learning i want must


Being kind of new to the monome grid, I’ve been reading through ‘grid studies’ and the OSC docs to learn how to work with it. One thing I still don’t understand is how the x/y offsets work in the row/col messages, respectively. I’ve tried experimenting by using a bunch of different numbers for the offsets (including just multiples of 8, as specified by the doc) but this number doesn’t seem to change anything in the monome’s behavior. The only thing that seems certain is that there does need to be a number in the x/y offset space, but it seems like it doesn’t matter what that number is. What am I not getting?

weird I’ve used offsets as multiples of 8 in the map message with no problems, it sounds like the same idea with row / col, you sure you got the right number order down ? mayb share the code or just the messages yr sending

Yeah, I also have no problems with the map messages but with row/col I can’t seem to understand it. Here’s an example showing how two messages with different y_offsets produce the same results: