Monome Key Press recorder Max Patch?

Anyone have a simple Max patch for recording and playing back monome key presses? I have one going using COLL object, but I’m seeing limitations. Like if I press two keys at once I can’t record that information, since there is only 1 list per index.

Have a look at mesh:

1 Like

I’m feeling a bit slow here, but how do I even download the Mesh Max patch from Github? I see several max patches called Mesh and none of them open as I would expect.

mesh was great when i could get it to work. with either 2x 64 or two halfs of a 128. i am really unable to forget knob movement memory and button press memory and i frankly don’t understand why it isn’t included on most all modern devices as a freakseq. just memory! but mesh was very difficult to set up for what reason i do not know. granted, i’m pretty much an idiot when it comes to anything other than play.

Got the patch open, thanks. Yeah, I don’t know Javascript at all, so looking at this patch isn’t helping me at all.

I just use Monome Notes, record the MIDI in a DAW, and playback from the DAW.


Probably not what you want, but it works for me.

Mesh is complicated. It’s not just a button-press recorder, but a somewhat generic OSC recorder. Thus it can record arcs or grids or other things. Furthermore, in order to work with any application, it has to funnel that recorded data back into the correct osc port that it’s spliced into. Mesh is also 63 recorders that can record / play simultaneously (overkill for most applications).

If you’re only after a single recorder, I’d start with the mesh~.maxpat file. This is the bit that actually does the recording & it’s already nicely abstracted for you. Send one of the defined messages to control it (record, start, end, clear). Anything you send it other than these magic words will be recorded if you’ve sent it a ‘record’ message and not yet an ‘end’ message.

I think I did some fancy things with ‘arming’ the recorders in the js script, but I’ll leave that to your particular application.

// to note:
This was one of the first pieces of JS i wrote. Not saying that’ll make it easy to understand, but if you’re looking for a beginner level intro into into real-world javascript, it’s a good candidate! Also when I started out I wrote a comment for almost every line of code!

3 Likes

Thanks, seq~ object seems like a much better solution that what I was doing

Here’s a much more simplified recorder for anyone looking for a more basic starting point.


----------begin_max5_patcher----------
910.3oc0YssbaBCE7Y6uBFd10CRHt025GP+B5zoirQwgLXgKHRcZlju8JcDD
ShAYMwXp8CQwnHzpc0py4HmmmOycUwdVkqyWc9gyrYOOe1LnKUGyZddl6V59
04zJXXtE0hblvcg9Okkp6b0CeAG214NpX88Y7M+pjsVnmaeOukdKb7iPKCj+
R+fr04mMuCudaFWNw.HnCcpgC50qo2JwS4L.1V.WWrcKiKdWeY7TFvCO0yuL
etpYgkjrcBalKAaudxq4aqEr9HefIxGSTrNPQZRhpEeRpuqjUIWATQVAuyTQ
hf2OxW050zzclLqWinTLjPPLHDDRGgv6rDhffnqDgfURq5UIvFTh.44gQRIB
wAvTglLkXUsPTv6ixdmlxXXeCSZaeakpWlhm1wzi2cEkuw8yYNR.aAgXgjft
rRBJ4zmGlDIwmb0HIwmNV4nJIWB1AnzG4LlHvCqHTbPa5uOjD7HxM.w7rkXS
c9Q4BZEqzo3NmUzxp9jGjoHDQwvdePnRYRBsKr3kHBGm8G4p8H5kWPSA+1wD
y2joNLAL0nPX6OTGuGeE5p2xppnaXGQbu9B1GYJxFB73MLFm.6q3OgUG+efs
n9Xanoy0Q2.rc.O8FZ+0w4afu3jXcrK3HpNyxMyt6P0qY5.b.BpcAgfhrHna
JBK2dV12AXSN5.b2Pw9Q2TDFO.gMUPNIV6huII7tb5SRHbjzonLU8ohGYko0
qb5MTlobvg99KiTWQOBDBTf+UoRLPvrc2SqJJe0YHGfIlSja8Jh6CmtisHnV
U1FNM+5g8oz0u1CoeKO8cEbAmtUi623ozbly2K3EFDkHY8WfcvGRs4Cw8wng
pIC2Aopr+BHAwLm7R0DNUBZYeUnmLFxgGjvO3X43XSBrLLWJmUx0E05Tw9ce
VGB5vUHxKJ0Tp4KZfzzzk8eBIkP7WdHdS.9zJp6hleFAQ02nnB.3lmw+3WQJ
vCU+uWoqJpKW2tLauUfyApjxpDYb3p4cFjJdbmAIify.kF061qsPqJf6zP2r
9NOj7r.ow.HqTyj9ESuyBYThMhYzHvQjUNlvw.o.KPhfFAjHHa3jxuhNSjhm
JJEZAPiAN3IBGa72ig8FilpcnICHbnst6yFonoBI6xaE0enV7QYPo61IuORU
yqCnJqJ4AcAEQKfGy35GgLxtkrGyZGOA5gVJqbPHKantTmnden9e0j61BIv7
5rlblRjeY9+.HIhfn.
-----------end_max5_patcher-----------

Equally, here’s a simplified version that lets you control it with messages (inspired by mesh when I first saw it).

http://www.rodrigoconstanzo.com/wp-content/uploads/2015/06/pattern-recorder.zip

Tears of joy will be shed upon seeing the help/reference file for the mtr object.

It will record numbers or lists and play them back in time. So you can run the grid key info into it and then send it out again on playback.

The pattern recorder in TPV is based around mtr. A bit funky that, but it works.