"Senogrid" - demo of sonogrid triggering Senode

More of a demonstration or proof of concept than a real piece of music.

Senode is a personal favorite. It allows you to create musical graphs with branching and probabilities to allow you to have aleatoric processes but in a controlled manner. It can be as deterministic or random as you want it to be. However, it was hard to change things on the fly. It was more of a “set it and forget it” experience. Now, with the recent 1.0.3 update, it allows external control of the emitters and synth.

sonogrid is a very cool app for quickly exploring complex polyrhythms and polymeters. However, it doesn’t have a great provision for controlling pitch. It’s more of a straight rhythmic tool than a musical phrase generator.

I realized that sonogrid would be a wonderful way to control the stepping of the emitters in Senode; allowing you a quick and flexible way to traverse the graphs in a shifting and rhythmically interesting way. Giving you the flexibility of Senode’s musical networks with the easily adjustable rhythm programing of sonogrid.

The emitters in Senode are ultimately triggering iSEM, two instances of Zeeon and two instances of Mersenne, hosted in AUM with Eos 2 reverb and RE-1 Virtual Tape Machine.

Comments

  • Yes very interesting and two apps I’ve completely missed :)

  • Cool idea to put these two complements together!

  • Very cool stuff.

  • edited September 2018

    Nice! Love this made scientist stuff. It sure does motivate me to learn AUM more. And of course, Senode and Sonogrid.

  • Shit. What a brilliant combo. I didn't realize Senode added that feature. Thank you for this video. Now I must own it! Occurs to me that you could use this to get a rotation of notes from a specific step in Quantum. Point Q and Senode at the same synth and if you want step 4 in Q to rotate between 3 different notes (loop 1=C, loop 2=F...) you can set that step to a different MIDI channel which senode is listening on. So instead of triggering the synth, that step will tell Senode to advance (which will trigger the synth).

  • @kinkujin said:
    Nice! Love this made scientist stuff. It sure does motivate me to learn AUM more. And of course, Senode and Sonogrid.

    Thanks everyone!

    Yes, a big part of the joy of iOS music making is the modular approach to it all. Making music in novel ways stretches the brain. For me it's also about the realtime performance, so different approaches to rhythm and melody construction are especially exciting.

  • @syrupcore said:
    Shit. What a brilliant combo. I didn't realize Senode added that feature. Thank you for this video. Now I must own it!

    Senode is a lot of fun. It is the perfect balance of randomness and control. Since I’m building the graph, I can decide which notes are random and what the particular branching options are. Most apps that have random controls are too random; sure they might limit to a scale, but even that is typically too many possible options, resulting in music that sounds like it was randomly generated.

    So far it’s been a walled garden, and while I would love to have Link, being able to trigger by notes means I can start incorporating it into other pieces.

    Side note; really want sonogrid to have sync options too!

    Occurs to me that you could use this to get a rotation of notes from a specific step in Quantum. Point Q and Senode at the same synth and if you want step 4 in Q to rotate between 3 different notes (loop 1=C, loop 2=F...) you can set that step to a different MIDI channel which senode is listening on. So instead of triggering the synth, that step will tell Senode to advance (which will trigger the synth).

    Great idea!

    You could also have it randomly select from those three notes, with their probabilities scaled, etc. (the only issue there is that you can’t branch from an Emitter, only a node, so you need to include the note before if you want to randomly select things).

    Besides the Step (to next node) option there are other MIDI controls including Tick (which advances the Emitter’s clock, so the timings you put into a graph can be preserved) as well as token generation and clearing. I’ve done some half-baked tests of Senode graphs triggering other graphs for self-generating pieces.

    It’s also worth pointing out that Quantum could have replaced Senode in the demo I posted, as Q can also step through sequences based on incoming MIDI note triggers. Of course the branching is easier to do in Senode and, frankly, Q has so many control options that I would rather just have it in front and control it directly.

  • @aplourde - I like the way you think ;)
    Thanks for an inspiring vid

  • Big day for k. Just set up Senode in AUM triggering Sunrizer. It took me a few tries to get the AUM setup right but finally got it going. What a blast. Senode really speaks to me. And thank the Gorns for AUM! All this on an iPad 2.

    I must be dense because I didn't think this could be done until I watched the video above. Thanks @aplourde !

  • @Mayo said:
    @aplourde - I like the way you think ;)
    Thanks for an inspiring vid

    Thanks. I just saw another thread where you were asking about setup. Not sure if you've figured it out, but it's pretty straightforward:

    In sonogrid, go to the gear icon in the top right

    Tap the "MIDI Disabled >" line, then "MIDI Destination" and select Senode

    (Side note: sonogrid is an app that doesn't allow you to select its own virtual output, you have to select the destination app. Prior to 1.0.4 Senode was an app that didn't allow you to select its virtual input, you had to select the sending app. This meant the two apps couldn't speak to each other without an intermediary. Fortunately, Sebastian added Senode's virtual input to 1.0.4 so the two apps can speak to each other, but it's possible you might run into this issue with sonogrid elsewhere.)

    Now, to set the MIDI output for each track, select the instrument icon for that track. In the first screenshot that's the icon labeled "Sine"

    Tap the Channel setting to set the MIDI channel and scroll the note list on the side to set the note (to set notes, "Automatic notes" must be off; i.e. not yellow)

    With 128 notes, you probably can keep the channel the same for all Senode triggers and just adjust the note. Actually, with 16 channels, you could keep the notes the same and just adjust the channel, however, I would recommend adjusting the note instead of the channel as the note is shown on the main page of sonogrid, so you can see which tracks are assigned to the same Senode emitter.

    In Senode, select an emitter and select the "hamburger" icon in the emitter settings area (the green area above the keyboard)

    You can now set a binding to trigger a step in Senode. You can manually set the binding, or you can use MIDI learn, however, MIDI Learn in Senode is a bit backwards from most apps. Typically you enable Learn and then send the MIDI message you want the app to bind to. In Senode, you have to send the message first and then select +Learn. The button binds to the last message Senode received.

    Now, if you want to trigger external applications from the Senode graphs, you just need to set the emitter's Output Channel and then set the device you want to send to.

    While the Senogrid example only showed MIDI binding stepping the token through each node in a graph (the arrow icon: >), there are other bindings you can use:
    "+" creates a new token on the graph (it's possible to have multiple tokens per graph)
    "x" clears the tokens on the graph
    "eighth note/quaver" sounds any emitter with a token - allows you to perform ratchets
    "••" steps the emitter through a tick. This allows you to retain the timings you create in a graph as the they count out a number of ticks rather than just stepping to the next node. One other difference between Step and Tick: normally, if you have an open-ended graph (i.e. the last node doesn't connect back to an earlier node) and a token reaches the end, it will die and you will have to manually generate a new token. With the Tick binding the behavior is the same; reach the end and the token will die. However, with the Step binding, when the token dies off and a new step is received, a new token will be automatically generated.

    All of this allows some very interesting possibilities....
    Another proof of concept, here a Senode graph that self-triggers:

    Note 60 in the Sender graph emits a new token in the Receiver below. Note 61 clears the Receiver's graph.
    Note 62 emits a new token in Receiver 2. And note 63 clears that graph.

    Because of the routings and probabilities in the Sender graph, the triggering of the two receivers is variable.

    More sophisticated routings could allow song sections or pieces that evolve over time....

    BTW, if you want to try this, it requires a roundtrip though another MIDI processing app as you cannot set the Senode MIDI input as an output. Also, make sure the "MIDI keyboard input channel" is set to something other than an emitter's output channel. If not, and you select that emitter, you will create a MIDI feedback loop and crash the app.

  • Nice share!

  • @kinkujin said:
    Big day for k. Just set up Senode in AUM triggering Sunrizer. It took me a few tries to get the AUM setup right but finally got it going. What a blast. Senode really speaks to me. And thank the Gorns for AUM! All this on an iPad 2.

    I must be dense because I didn't think this could be done until I watched the video above. Thanks @aplourde !

    Then I guess you didn't see my previous video ;)

    (shameless self-promotion)

  • @aplourde - thanks for your generosity :)

  • @aplourde Thanks for the in-deep setting instructions of sonogrid and the self-triggering idea for senode, i‘m going to try this out myself some time :)

  • @aplourde Wow thanks for this lengthy tutorial!

  • @aplourde thank you so much! Fantastic information!

  • Very cool!

  • Oh wow this is dope!
    I tried controlling steppolyarp with sonogrid before to trigger sequences there but sonogrid sends out just a tiny bleep of a signal that it only plays the very first step in my spa sequence, since I couldn't figure out how to make it and longer midi notes ( even dropping tempo all the way to 15 didn't really do much) I gave up really trying to use it, maybe this will be a way to revive it

  • @reasOne said:
    Oh wow this is dope!
    I tried controlling steppolyarp with sonogrid before to trigger sequences there but sonogrid sends out just a tiny bleep of a signal that it only plays the very first step in my spa sequence, since I couldn't figure out how to make it and longer midi notes ( even dropping tempo all the way to 15 didn't really do much) I gave up really trying to use it, maybe this will be a way to revive it

    There's nothing quite like sonogrid for generating complex polyrhythmic and polymetric pulses. It's very cool.

    However, there are two issues with sonogrid:

    1- It currently has no provisions for syncing. So, if it's the only time keeper, or your other tracks are more loose / ambient it can work, but for tight sync with other rhythmic elements it's a bit of a dead end.

    The developer indicted that they would look into adding sync, but since the framework they used didn't have provisions for Link, etc. it was not going to be an easy process.

    2- This is especially problematic as it's very susceptible to timing glitches when you switch apps. Even if your iOS device isn't under a heavy load, app switching will typically cause some glitches. This is why, in the video, I take my time switching apps; going to the home screen, waiting a second, then going to the next app. Direct switching usually glitches.


    One unrelated thing to note, Quantum can also be driven by incoming notes, so you could substitute Quantum for Senode - or use both!

  • @aplourde said:

    @reasOne said:
    Oh wow this is dope!
    I tried controlling steppolyarp with sonogrid before to trigger sequences there but sonogrid sends out just a tiny bleep of a signal that it only plays the very first step in my spa sequence, since I couldn't figure out how to make it and longer midi notes ( even dropping tempo all the way to 15 didn't really do much) I gave up really trying to use it, maybe this will be a way to revive it

    There's nothing quite like sonogrid for generating complex polyrhythmic and polymetric pulses. It's very cool.

    However, there are two issues with sonogrid:

    1- It currently has no provisions for syncing. So, if it's the only time keeper, or your other tracks are more loose / ambient it can work, but for tight sync with other rhythmic elements it's a bit of a dead end.

    The developer indicted that they would look into adding sync, but since the framework they used didn't have provisions for Link, etc. it was not going to be an easy process.

    2- This is especially problematic as it's very susceptible to timing glitches when you switch apps. Even if your iOS device isn't under a heavy load, app switching will typically cause some glitches. This is why, in the video, I take my time switching apps; going to the home screen, waiting a second, then going to the next app. Direct switching usually glitches.


    One unrelated thing to note, Quantum can also be driven by incoming notes, so you could substitute Quantum for Senode - or use both!

    Great info man!
    I just got it about an hour ago and it's really fun! Deff able to come up with cool patterns just using the demos it came it and sending them to my auv3 in AUM!
    Pretty simple learning curve so far, I haven't quite figured out how to make one note repeat or sustain longer in a pattern before moving on to the next, and maybe you can't, but either way it makes some great arps and honestly I'm loving sending it to reason compact Europa with the Europa arp enabled!

  • Yup this thing is fkn fun!

  • Great demo. But I'm not seeing what sonogrid does that I couldn't do in Rozeta Rhythm.

  • @Wrlds2ndBstGeoshredr said:
    Great demo. But I'm not seeing what sonogrid does that I couldn't do in Rozeta Rhythm.

    I dunno I love rozeta haven't dug into sonogrid that much, but senode is freaking cool.
    I haven't set up the sonogrid to trigger senode yet but I just got senode today haha

  • @Wrlds2ndBstGeoshredr said:
    Great demo. But I'm not seeing what sonogrid does that I couldn't do in Rozeta Rhythm.

    Rozeta Rhythm is strictly a Euclidean sequencer; I.e. it creates the rhythms algorithmically, subdividing the length by the beat count. So if you have 16 steps and 4 beats they will always be spaced 4 steps apart. Five beats in 16 steps will give you 4 steps between the first two beats, then 3 steps between the rest. You can rotate the position of all the beats relative to the beginning of the measure, but not change the position of a single beat relative to the other beats in that sequence.

    Sonogrid is manual (it has no built-in Euclidean generator - that feature would be nice - but does have a randomizer), because of this you can place beats wherever you want for fills and lopsided beats). E.g. you could have 4 beats in the first 4 steps of a 16 step sequence and the rest of the steps blank. Beyond that fundamental difference, the UI for creating sequence grids, their step length and then changing that (adding steps, multiplying/dividing the length, subdividing pattern and step length, etc.) is unique and special and really leads to interesting polyrhythmic and polymetric beats.

    That said, as mentioned, it currently has no syncing abilities so it has to be the sole time keeper.

  • @aplourde said:

    @Wrlds2ndBstGeoshredr said:
    Great demo. But I'm not seeing what sonogrid does that I couldn't do in Rozeta Rhythm.

    Rozeta Rhythm is strictly a Euclidean sequencer; I.e. it creates the rhythms algorithmically, subdividing the length by the beat count. So if you have 16 steps and 4 beats they will always be spaced 4 steps apart. Five beats in 16 steps will give you 4 steps between the first two beats, then 3 steps between the rest. You can rotate the position of all the beats relative to the beginning of the measure, but not change the position of a single beat relative to the other beats in that sequence.

    Sonogrid is manual (it has no built-in Euclidean generator - that feature would be nice - but does have a randomizer), because of this you can place beats wherever you want for fills and lopsided beats). E.g. you could have 4 beats in the first 4 steps of a 16 step sequence and the rest of the steps blank. Beyond that fundamental difference, the UI for creating sequence grids, their step length and then changing that (adding steps, multiplying/dividing the length, subdividing pattern and step length, etc.) is unique and special and really leads to interesting polyrhythmic and polymetric beats.

    That said, as mentioned, it currently has no syncing abilities so it has to be the sole time keeper.

    Hey thanks very much for that. Your demo has me intrigued.

Sign In or Register to comment.