Envious!

(more characters)

Not at my teletype, but a few thoughts on alternate starting places

I haven’t investigated the rhythms mode in the just type beta, but per the instructions it seems this could perhaps be a logical application

More things I’ve not investigated, but the euclidean rhythm ops added to the 1.2 firmware might be useful here

If I have some time this eve I’ll give the Metro solution a swing

2 Likes

Thanks for this! I’d forgotten about the doc addendums. Will give this a thorough read thru this evening.

Put the notes durations (in ms) in a pattern and use DEL accessing those values ?

finding the smallest duration unit could be useful as well, since all of te duration would be multiples of it.

That was my idea also.

There are triplets and duplets in the Barton pattern. Hard to get to where needed with integer-based math?

@tambouri I spent some time TT’s eclidian rhythm operator last evening. Really fantastic for generating all sorts contrasting patterns. I will definitely continue to explore, but I was not able to generate triplet patterns.

If I understand correctly, triplets may not be a part of this system.

It depends.
If your smallest triplet value is 10ms, the smallest duplet value can be 15ms and there is no prob. Depends on the tempo you want to use, though.

I broke down the Barton pattern into ms values for each note length, with a base tempo of 60 BPM.

So a quarter note would be 1000ms. Triplet eighth note = 333 and triplet sixteenth = 166. For both triplet types, a bit of math fudging would be necessary to get on solid tempo. For the triplet eighths, we would need to add 1ms to 1 of the triplet parts. For triplet sixteenths, add 1 to 2 parts.

The pattern looks like:

1000
1000
500
500
333
334
333
250
250
167
166
167
250
250
250
250
167
166
167
250
250
333
334
333
500
500
1000
1000

Now, how to actually get TT code designed to make this work… that’s the challenge.

3 Likes

Ok. I believe I’ve come up with Euclidean Rhythm operator (ER) statements that could work for all but the sixteenth notes in the Barton Palindrome pattern.

The smallest value is a sixteenth triplet, so I came up with ER patterns of 24 steps.

triplet sixteenth - 1, 24, 0
sixteenth - ?
triplet eighth - 2, 24, 0
eighth - 3, 24, 0
quarter - 6, 24, 0

Still left with the sixteenth note being able to fit into the length of a bar comprised of 24 steps.

Edit: hmm… If I double the number of steps to 48, this may solve the problem. I’m not at TT, but will give this a thorough test later.

2 Likes

I didn’t have time to play with this last night, and now I’m back at my desk at work, but this is how I was thinking you could use the euclidean rhythm generator. Per my reading of the ER writeup and no actual testing on the teletype, so not unlikely that I’m missing something, but … hear me out :wink:

Using a clock 1/12 the length of the desired 1/4 note in your pattern the following could create triggers when the ER returns a 1. and you could shift through a pattern of fill settings every 1/8th of the piece which would be every 6 beats of the 1/12 clock

i believe ER FILL LENGTH STEP would work as follows

so a script might work something like this.

SCRIPT 1
P.N 0
X MOD ADD X 1 12 x counts 0-11
IF EZ MOD X 6 : P.NEXT move to the next pattern every 1/8note = 1/6 of the 12 count
IF ER P.HERE 12 X : TR.PULSE 1 execute a trigger if ER returns 1

So you would now choose a fill amt for every 1/8 of the piece. (1/8 as this seems to be the smallest scale that the division shifts). so you could put the following into Pattern 0 (split up into bars only to make it easier to see my thought process)

bar 1 - 1 1 0 0 0 0 1 1 1/4 note, 1/4 rest, 1/4 rest, 1/4 note
bar 2 - 1 1 2 2 3 3 4 6 1/4 note, 1/8 notes, 1/8t notes, 1/16 notes, 16t notes…
bar 3 - 4 4 6 4 3 3 2 2
bar 4 - 1 1 1 1 0

Repeat disclaimer, this is off the top of my head and likely has some issues. 1 thing I’m definitely unsure of is if ER 0 12 STEP would work to fill a pattern w/ no active steps to take into account the rests. And this doesn’t solve for duration yet

3 Likes

Very nice, @tambouri. You came directly to the 1 beat version of what it took me multiplepasses to get to.

Still required is some fancy pattern resetting to get the correct number of note values per full pattern, but that seems doable.

I fear for the squirrel running the clocking wheel, tho. :smile:

2 Likes

Im pretty certain that ER 0 12 works exactly as expected

1 Like

seeing a problem where the order of the commands I used are likely causing it to skip step 0 and advance before the first beat, maybe that’s cause this?

so maybe have a reset script and change up the order of the commands a little

SCRIPT 1 :
P.N 0
IF ER P.HERE 12 X : TR.PULSE 1
X MOD ADD X 1 12
IF EZ MOD X 6 : P.NEXT

SCRIPT 2 :
X 0
P.N 0
P.I 0

PATTERN 0 :
1 1 0 0 0 0 1 1 1 1 2 2 3 3 4 6 4 4 6 4 3 3 2 2 1 1 1 1 0 0 0 0

This way it should trigger the 1st step before moving to X = 1

1 Like

Nope - throws a ‘not enough parameters’ error

This line is a character too long it seems. Drat!

Solved by storing P.HERE in a var Z.

 P.N 0
 Z P.HERE
IF ER Z 12 X : TR.PULSE A
....

I think @GoneCaving is stating that ER 0 12 step should always return a 0. It does. (Or it should, if it doesn’t it’s a bug.)

The C source that underlies the op is here, you can see at the beginning of the euclidean function that it returns a 0 if fill is less than 1.

1 Like

Yep, that’s clearly what I meant. Post was from memory and without checking, but meant that a rest is certainly possible.

1 Like

The scripts @tambouri provided worked fine. I had to make a change for the long line and add an I script to define the pattern length.

Would it be more helpful to edit the top post to include the working code, or just enter it in a post at the bottom?

Thanks to all who helped in this. To me, this opens a lot of possibilities for handling rhythmic structures. Much better than relying on multiple clocking modules to get there. And… only 2 scripts. 6 scripts slots left open to handle the rest of a composition.

Amazing tools…

4 Likes

[quote=“carvingcode, post:21, topic:5188”]
Would it be more helpful to edit the top post to include the working code…?
[/quote]i think so

great topic

2 Likes