Awake

I was attempting to get Awake playing with the Digitone last night and ran into some trouble. I was sending clock and notes, but it seemed like maybe there was a clock issue… though I’m not exactly sure. Digitone would play the sequence, and then intermittently cut out a few notes, then pick back up, and then cut out again, at what seemed to be rhythmic intervals (a few bars), but was also not quite perfectly timed.

I did get it working with Fugu and Kria, so I know the Digitone was receiving midi from Norns properly.

Any ideas?

Hi @Xylr,
I had a similar problem and it was never solved. In this thread some of the things I tried are documented. It would be interesting to see if our problems are somehow connected.

1 Like

i’m not sure why you’d need to send clock?

if you’re just sending notes, there’s no need for clock.

sending clock would suggest you’re using norns as a leader clock, whereupon the midi device would have a sequencer (or something) following the clock.

try turning off clock?

1 Like

I don’t know why I am sending clock either. Great point.

@beat I will update you if I make any progress on this. I’m only connected to Digitone and the grid, and I am using a factory Norns. I’m pretty determined to get this working, so I will document my attempts well going forward.

Were you having problem with just the awake sequence, or other tracks playing back on the Digitone along with what you were sending from Norns?

I just sent notes and clock from Awake and didn’t experience any dropouts. Are you using a midi interface or via usb? I tried with both and didn’t seem to have an issue.

1 Like

I was using usb direct, but I can try a Mio2 as well. I was only having trouble with Awake… I didn’t try playing any sequenced tracks from Digitone simultaneously, but I was able to trigger notes while it was playing (if I understand your question correctly). As far as I can tell, all params were set correctly… but I’m going to be more thorough in documenting exactly what the setup is when I can get back to it tonight.

Kria and Fugu both worked properly.

Cool, let us know. I’m happy to try things again to see if I can confirm/deny. :slight_smile:

I just had an inspiring session with Awake controlling my Korg VolcaFM where I realized I can record the sequences of Awake into the Volca’s sequencer. Magic happens with the arp set to random.

I’m using an iConnect mio to get MIDI in and out of the Norns Shield btw. Works like a charm.

7 Likes

going to give this a shot today

edit: didn’t try this out today. instead added "crow out 1+2 + crow ii JF" to the existing awake.lua on my norns and got lost in that. where did you throw those local's off to anyhow?

1 Like

Here’s a version @noiserock helped me write with other output options. Maybe it can help you.awake.lua (13.2 KB)

1 Like

It was actually loads of help! Slowly finding my bearings but being able to mod here and there has been an absolute pleasure. Thanks @jasper_ryder , @noiserock

2 Likes

If one were keen to operate on clock divisions slower than 1:1, would this be the line to tinker with?

params:add{type = "number", id = "step_div", name = "step division", min = 1, max = 16, default = 4}

Should add that my use case involves Ableton Link.

Hey all! I don’t know if it has already been talked here (remember some clock issue quick fix on maiden…) But as I am running awake-rings under the last firmware on a norns-shield, I can’t find a way to make it respond to start and stop messages as a slave device. It responds great to the incoming clock (tempo match), the device is properly set in midi parameters… But Awake is always running, restless…
Is there something that I missed in the parameters, or is this something which need some code swapping on maiden? Thanks for any info you could give me!!

Sorry, I’m no help but would love to know how to do this with Awake. Just start and stop via midi…Is that a thing?

2 Likes

Me too. Same with other scripts, e.g. meadowphysics midi, which also don’t seem to respond to midi start/ stop as one might expect.

2 Likes

I’m working on something that tacks on functionality to Awake (and other scripts) and I’m having an issue that’s easily resolved with some minor changes to awake. Before I raise a PR I’d just like to sound it out as I know awake is often the first script people interact with on Norns.

The issue is that edit_ch and edit_pos are declared as locals so an included script is not able to modify them. The easy fix would be to declare them as globals and the alternative option would be to create a change_edit_ch function. The function would be my go to option but it only improves the code for my use case and it would also seem odd because it would need to return the current value of edit_ch.

Opinions?

1 Like

TL/DR: Just make them globals

initially in norns scripts we recommended avoiding globals by default. this is good general advice in lua code that is intended to be resued in any modular fashion.

but as of a a while ago (couple years?), each norns script is run in its own sandboxed global environment. so there is now no possibility of “leftover” globals from earlier scripts causing confusion, and little reason to avoid globals in the top level of a script. (they are even encouraged, since they are accessible from the REPL.)

i know this is an old question, but yes: start, stop and continue act like other incoming MIDI messages, in that scripts can easily add handlers for them.

however: awake and many other sequencing scripts use the main norns clock module, which has the option of being driven by MIDI clock messages (in addition to Link, internal timer, etc.) doing this requires no extra code in the script. but handling start/stop/continue does require adding extra code, because there isn’t actually a default meaning for these messages.

awake in particular simply doesn’t define a “stopped” or “running” state, or a “reset” / “continue” behavior. if anyone wants to add those things, it’s trivial to connect them to MIDI.

1 Like

Thanks @zebra, that’s the answer I was expecting. :slightly_smiling_face:

I’ll put through a PR as time permits

Is it possible to build into awake the “mx.samples” voices? It works really well in Plonky to choose a “voice” from the params menu.

2 Likes