I’m trying to wrap my head around how to do autofocus in Max without prefixes.
If I have 2 instances of serialosc.maxpat (1 in patch A, another in patch B), selecting my grid in sosc A, and then selecting the same grid in sosc B deselects the grid in sosc A and mutes its first output. That’s great, cause now patch A is no longer receiving any commands from my grid. I can also use the 1 generated by the 2nd outlet when I get focus to turn on drawing for patch B.
However, sosc A’s input 1 is still receiving osc at this point, which is still drawing to my grid. The docs in the serialosc dev tools patch suggest I should be gating those messages when sosc A loses focus, but it’s not clear to me how I detect that event. Should I be creating some kind of larger communication between my patches that sends out the currently active port? Am I missing something about how serialosc.maxpat is supposed to work?
I’m barely literate in Max, but looking at the Terms devices, it seemed like they were doing their thing by changing the sys prefix. That’s not the suggested architecture moving forward right? In practical terms, I’m just trying to make small Max 4 Live devices that play nice with everybody else when it comes to autofocus without having to prefix each one differently. Thanks!
That works if I’m manually selecting “none” from serialosc.maxpat, but if the grid is unselected by selecting it on another instance of serialosc.maxpat, the 2nd outlet of the first instance of serialosc.maxpat does not send out a 0. See below:
Still struggling with this, does anybody have Max performance patches they wouldn’t mind sharing? Would love to see how you’ve handled switching between various Monome apps. Think I’m missing something fundamental here.
This all started off with me trying to use the v2 of Meadowphysics in M4L with autofocus. I don’t really want to mess with the internals of the Meadowphysics patch too much, so I was hoping to pull off autofocus without modifying the prefix from ‘monome’ to something else. For the life of me, I can’t figure out how to do this without writing something that’s communicating between devices, which feels like I’m making life hard for myself and missing something stupid.
I tested the code above and see your problem. it appears to be a bug with the current version serialosc.maxpat. I use the older one in all my M4L patches and I’ve never experienced this issue. try this-