Orca - alternative firmware for white whale


@scanner_darkly Yeah, i figured that much, but didn’t want to clutter the post… The first trigger in some way affected all, whereas 2-4 didn’t do anything.


no problem, thanks for reporting it!

still working on updating the manual but some sections already updated, make sure to check out the new scale editing section - things are hopefully quite a bit more clear now, including how to copy between scales and transpose.


So, I took some time to try Orca out. And all I can say is: Thank you. I wasn’t a big fan of how things worked in the original firmware, don’t get me wrong, I still liked it a lot, but this Orca just nails about everything I would have wishes for. I’ll come back with a few questions as I dwelve deeper into the oceans. Thank you for your immesurable work!


Haven’t had time to look at the updates until today and I think Orca is in a wonderful place, now. The two scales take a little while to get to grips with, but I have it now. From great to greater!


yeah i think having separate A and B scales doesn’t complicate the interface too much - i still mostly use the same scale for both, but this adds a benefit of being able to select tracks and listen to CV B when in CV preview mode, which was not possible before.

i still need to finish updating the manual [hoping to finish early next week] but everything from the start and up to and including scales is already updated, and hopefully makes things quite a bit more clear.


Finna put that manual on my phone, have a sommelier pick me a wine, put the kids to bed, turn down the lights, look at manual, patch, empty said bottle and modulate myself to sleep by 11.


i know what you mean! there are several ways to achieve that.

if you use one of the trigger outs to trigger an envelope controlling a VCA you could use AND logic to have it trigger less often (especially if the tracks selected for the trigger use larger divisors). you could also mute / unmute manually. this make it more difficult to control the exact sequence though as it will likely skip some notes.

a better way is to clock it externally with some sort of a gate sequencer. meadowphysics would work great for that.

most interesting way though is to use Teletype - then you can clock each track individually (you might want to insert a dummy cable into the clock input as the external clock still applies). you can also mute/unmute tracks via TT.

to clock tracks: II OR.CLK #
to mute you will need to select the track first: II OR.TRK # and then use II OR.MUTE 1 to mute and II OR.MUTE 0 to unmute.


thanks a lot for the explanation, @scanner_darkly!
that helps a lot. lots of exploring to do with tt.


if you have meadowphysics and teletype try using 4 triggers via TT to clock each track individually and another trigger into the clock input on orca - i really ought to make a video of that!


looking at my meadowphysics right now :wink:


apologies if it’s been covered in this thread, but is there a reason you can’t set the reset value for each track via the teletype? that would be useful to programmatically switch rhythms, similar to how the orca manual describes using the phase and reset together.


the main reason is there is limited number of remote commands available to orca (16 in total) so some choices had to be made, my thinking was to do something that would compliment what is already doable. since you can’t reset with the white whale alone having only one input it seemed beneficial to add the ability to reset on a trigger as opposed to having orca reset after set number of steps. this would also work well with external controllers (great fun resetting with something like pressure points!). also, i thought you can still use the grid to edit things that are not available via teletype.

same thinking behind the rotate commands - you just rotate directly from teletype as opposed to controlling the rotation sequencers. and i didn’t implement mutate since you could just use teletype to assign random values anyway. but yeah, ideally would prefer to support everything!

just noticed the manual formatting was off in the teletype section - fixed!


got it, thanks for the response. might have to fork the firmware then. unless there’s an obvious way to do rolls for a particular trigger via teletype that i’m missing.

might be a moot point, manipulating the teletype metronome pretty much gets me where I need to be.


if you have the toolchain set up and still need to be able to select reset values instead of actually resetting then simply search for case ORCA_RESET: [currently https://github.com/scanner-darkly/monome-mods/blob/master/orca/main.c#L1759] and replace the block with the following:

	reset[iiTrack] = banks[cb].presets[banks[cb].cp].reset[iiTrack] =  abs(d) % 17;

with this change you select a track with OR.TRK and then OR.RST will set the reset value for the selected track.


Hey! Trying to get a refresher and a more detailed understanding of Orca at this point. Rather than just tapping madly at buttons hearing cool things happen I wanna get into the special moves like a Street Fighter II console :joystick:

The examples here with the little ascii graphics are for a single track, that much I gathered. So these are the events that will affect, for example, the top row if we’re doing this one row at a time. Starting in divisors, perhaps for clarity when looking at this sentence:"(the first tick is on the right to match how it’s visualised on the grid)" - I’m thinking “first tick” could also be phrased as “the current step”, or something closer to it? I realised halfway through asking that this is exactly the case but spent enough time deciphering that super simple concept to start commenting :smile:

So perhaps being overly clear would involve stating something like “Each page displays and allows you to edit the selected parameter for all of the four tracks, individually. While the following is true for any of the four tracks, let’s just start by adjusting the top track, by using the fourth row of buttons from the bottom of the grid. Start by pressing the top left button to access divisors.”

/…/ “Now press the far left button second to top to access the phase page” /…/ etcetera

Just some examples to lead the way.

Some worst case readings might have the user thinking that each of the top three tracks represent clock, track and reset events respectively. Add attention deficit disorder to taste :smiley:

Also if I somehow mess up scales from their original settings is there some recall to keep tabs on?


first of all - thank you for the feedback, it’s really helpful - it’s hard sometimes to account for my own bias when writing docs, so specific comments on how to improve it are very welcome!

i should change that “first tick”, agreed it’s confusing. basically what i was trying to say - in the graphs the time axis goes right to left, to match how it’s displayed on the grid. “the current step” is not really applicable here because the graphs are meant to illustrate the influence of different track parameters, and the current step plays no role in that. i’ll update this when i update the rest of the document (there are still a few sections i need to edit / clean up), hopefully sometime this week.

i think i should also do another video, “quick start” or something similar, and go into more details on building a sequence from scratch.

there is no “undo” for scale editing, what i usually do is use 2 presets - if i get something interesting that i might want to come back to i just copy it to the other preset and edit there. if i don’t like the edits i can just go back to the first preset, or copy it again and start over. if your scale is stored to flash as part of a preset you can restore it by double pressing the preset (this will restore everything though, track parameters etc, not just scale). the idea was that you can have your presets prepared, then when you perform you can mutate the sequence in whichever way and then reload it on the fly when needed (and you can reload a preset using teletype too…).

oh, and you can also store your scale to one of the shared scales - those are basically user defined scale presets!


Yeah I think a video like that would be really cool. Not to scare anyone potentially hesitant away, there’s so much going on in a good way. Occasionally when I do get a grip on it it is possibly some of the most rewarding sequencing I’ve done on hardware. In the current patch I blame some lost sweet spots on my overall patching but plan on going over everything with the Orca manual next to it. I’ll try and take some notes along the way whenever I don’t “get” the manual. :blush:


one thing i’ve been meaning to try is using orca as an arpeggiator. i thought i’d need to add a transpose remote command, or something like that but it’s actually a lot simpler, you just have to use a unity mixer to mix a sequencer or keyboard output with the orca output. here i’m using intellijel triatt for both CVs.


you probably want to set the global reset when using it like that (although the free running mode can be fun too!) as it can change the arpeggio quite a bit:


in this video i’m changing the global reset with an arc, something that is not in the official version yet - i’ll add it to the next version.


Had the chance to spend many hours with orca over the weekend. It’s a lot of fun and a real improvisation tool.

One thing I’ve not found yet: what is the best method to enter in and play a set melody, prior to using orca to mix it up?


i’ll add this to the manual as well (and will try to make a demo video this weekend). btw, also added a quick start section yesterday https://github.com/scanner-darkly/monome-mods/wiki/Orca---manual#quick-start, and hoping to go over the rest of the manual this week to make it a bit more clear and use consistent terminology.

so here is what you need to do:

leftmost column - track parameters

  • [row 1 | divisors] set to 1, 2, 4, 8
  • [row 2 | phase] set all to 0
  • [row 3 | reset] set all to 0
  • [row 4 | chance] set all to 0

second column from the left

  • [row 2 | triggers and weights] select this page, the right 8 columns in the bottom 4 rows are track weights, set them to 1, 2, 4, 8

third column from the left

  • [row 1 | rotate scale seq] double press to clear the rotate scale sequencer
  • [row 2 | rotate scale seq] double press to clear the rotate weights sequencer
  • [row 3 | mutate seq] double press to clear the mutate sequencer
  • [row 4 | global reset] double press, this will reset all internal counters to 0, not really needed but do it just in case, and set global reset to 16 - again not strictly needed but this will allow you to use rotate/mutate sequencers later

at this point it should step through notes 1-16 consecutively. you also want to make sure your CVs use all 16 notes - this is done by selecting all 4 tracks for each CV in the 2 righmost columns, top 4 rows https://github.com/scanner-darkly/monome-mods/wiki/Orca---manual#cv-a--cv-b

so now whatever scales you have selected for CV A and B become your sequences. let’s talk a bit about scale editing. the scale edit page button is [col 2, row 1]. one thing to remember - single press on the scale page button turns the CV preview mode on and off. CV preview mode is where it just keeps playing the current note (sometimes it’s easier to edit this way), so if that’s what you’re hearing instead of a full sequence just press it again.

on the scale edit page in the 4x4 note block on the left you should now see it stepping through all 16 notes. now you can edit your sequence, it’s like a vertical piano roll with 4 notes available for editing at any given moment. switch between the groups of 4 notes using the 4x4 note block.

since you have 16 scales available per each preset, this means that you have 16 sequences which you can assign to either CV (or both)! there are 64 presets, so you can have up to 64x16 = 1024 sequences in total, all storable to flash or USB drive. to select a scale press the scale edit button and while holding it select a scale in the bottom 2 rows, the bottom row is the scale for CV B and the one above the scale for CV A.

once you are comfortable with the above try some fun things:

  • if you only select tracks 1, 2 and 3 for a CV it will only step through notes 1-8. if you double press track 4 in the CV track selection it will now step through notes 9-16 instead (press it again to deselect). if you only select tracks 1 and 2 it will only step through notes 1-4.
  • you can also use global reset to shorten the sequence to any number of steps between 1 and 16
  • remember you can easily copy and transpose scales. so you could create a sequence, copy that scale to another, transpose it and assign it to CV B. now CV B plays the same sequence as CV A but transposed. you can also copy to another preset and then transpose, so now you can easily shift the whole sequence up and down by simply choosing a preset. this is a good way to use it as an arpeggiator (especially if you use teletype to switch between presets).
  • try changing track weights and see how it affects the sequence

hope this is not too confusing! the scale editing page might need a bit getting used to but once you figure out how it works it shouldn’t be too bad.