This was news to me too. Very useful, thanks!

You could write a script that reads IN and puts the value in the current selected in the pattern then trigger the script with the function keys. Advance the pattern and do it again.

All theory though as I’m many miles away from my TT.

Agh! That was something I was planning on working on. Nice!

1 Like

i started making a version for the grid integration firmware that is more fun to play with!

1 Like

SWEET! That was my plan also. You should definitely keep us updated, and/or make sure it’s included in @emenel’s TT github repo.

yea i will add it when i have a chance. i got a little flustered because i was trying to added ratcheting for each division grid cell, but couldn’t figure out a way to do it with the way that the DEL pre currently works D:

I think the issue is that the Teletype script will never know what the currently selected value in the Tracker is

It does! The selected cell is available for reading and writing through ‘P.H’

Those fellows thought of everything!

1 Like

For this scene I made a sequencer out of the bubble sort sorting algorithm, which my programmer friend Ollie introduced to me. It generates a random sequence and then as the sequencer steps through the 8 steps - it sorts the notes into order, 1 pair at a time. Once a sequencer is fully sorted into ascending order a new random sequence is generated. It turned out surprisingly musical! This is for just friends but could easily be adapted for CV and Gate.

In the video the mangrove is triggered when a note is ordered and I visualised the seuqence on the grid but I’ve not included that code here.

PN 0 is the random pattern
PN 1 is the reference scale

#1
IF C: SCRIPT 8
ELSE: C 1

#8
L 0 63: PN 0 I PN 1 RAND 16

#M
A P.HERE; B P.NEXT
JF.NOTE N P.HERE V 8
IF EZ P.I: SCRIPT 1; BREAK
IF GT A B: P.HERE A; C 0
IF GT A B: P - P.I 1 B

#I
P.L 8
M 200
JF.MODE 1

|0|0|0|0|
|---|---|---|---|
|5|2|0|0|
|38|4|0|0|
|50|5|0|0|
|38|7|0|0|
|36|9|0|0|
|57|11|0|0|
|36|12|0|0|
|12|14|0|0|
|35|16|0|0|
|53|17|0|0|
|33|19|0|0|
|0|21|0|0|
|11|23|0|0|
|9|24|0|0|
|0|26|0|0|
|16|28|0|0|
|36|29|0|0|
|48|31|0|0|
|26|33|0|0|
|23|35|0|0|
|31|36|0|0|
|2|38|0|0|
|36|40|0|0|
|33|41|0|0|
|26|43|0|0|
|14|45|0|0|
|11|47|0|0|
|38|48|0|0|
|19|50|0|0|
|62|52|0|0|
|0|53|0|0|
|7|55|0|0|
|19|57|0|0|
|23|59|0|0|
|60|60|0|0|
|55|62|0|0|
|59|64|0|0|
|50|65|0|0|
|59|67|0|0|
|19|69|0|0|
|23|71|0|0|
|2|72|0|0|
|19|74|0|0|
|43|76|0|0|
|28|77|0|0|
|47|79|0|0|
|9|81|0|0|
|35|83|0|0|
|47|84|0|0|
|14|86|0|0|
|19|88|0|0|
|5|89|0|0|
|52|91|0|0|
|55|93|0|0|
|29|95|0|0|
|52|96|0|0|
|50|98|0|0|
|2|100|0|0|
|35|101|0|0|
|0|103|0|0|
|47|105|0|0|
|38|107|0|0|
|59|108|0|0|
17 Likes

Hi there, i was watching this and wondering whether it could be done with teletype - looks simple but very interesting for stuttery unpredictable patterns. Its influenced by Ryoji Ikeda

1 Like

So it takes an incoming flow of triggers, skips some of them, and replace them with variable length gates ? Seems easily doable

yes with some sort of random / probability thrown in - when i saw the video i instantly thought Teletype triggered by Meadowphysics to an er301. I think the gate lengths have a rhythmic element, they are just not totally random, theres some magic code there.

You could set the gate lengths based on multiplying/dividing the clock speed in milliseconds…

yes, thats a good idea. Thinking in modular world, i think this maybe could be done with a uLFO or any lfo / oscillator with cv control of pulse wave modulation of a square wave. Add a negative offset and hit it with a trigger whilst CV’ing the PWM at the same time

1 Like

you can also do it with Maths https://www.muffwiggler.com/forum/viewtopic.php?t=71382&sid=97c606a30e511af04f39486cf7e69ff5

So, given the current firmware, and telex abilities, what is the most elegant and efficient/accurate way of setting ratcheting output based on incoming cocked triggers?

As in: I feed one of the inputs a clock, and I have TT produce script controllable ratchet/clock variations?

What are your best, tried and reliable approaches to that?

the scene discussed here is my best attempt so far. its not great because it eats up several scripts and variables. somewhere in a thread here recently, someone mentioned that there is a ratcheting op planned for a future firmware. I hope it comes along sooner than later because a simple syntax for ratchets would be incredibly useful.

Right: I made some pitches for that long time ago, but wanted to check in again since there was a lot of development happening, and I was not sure if I missed some progress on this front. Especially thinking of all the work done by @scanner_darkly and @sliderule!

I’m working on a scene where pattern 0 is populated by random values selected from either pattern 1, 2, or 3. (Just now it’s mainly an exercise - I’ll let you know how musically useful it is once I get it to work. :slight_smile: )

First I tried stepping through patterns 1,2,3 using the O variable to specify the pattern, and that worked. Then I thought that it might be an idea to use the parameter knob to choose the pattern.

The best way I can find to do this (and bear with me because four hours ago, I didn’t know what bit-shifting was) is this:

Y ADD 1 RSH PARAM 12

This works, providing a value for Y that can then be used here:

L 0 7: PN 0 I PN Y RAND 16

the issue I have with this, though, is that possible values of Y, are 1,2,3 or 4. 4 is not a valid option, though, and so is (presumably?) simply ignored. This seems kind of clumsy. Is there a better way around this?

you could use scale to get the Param value.

Y SCALE 0 16383 0 4 PRM

The above would scale the param knob to values 0-3 and store it in Y.

1 Like