So is there a way that this sequence trigs a trig OUT (A, B, C or D) and not a cv out ? :no_mouth:

you link all of that with scripting

however I haven’t done it myself, nor am I sure whether the CV outs can be bullied into only spitting out gates

I guess it depends what you plug it into whether they can be used for other purposes

Yes, you can definitely do that.

The real question is how :innocent:

I would imagine you can use the CV outs as gates if you send alternating V 10 and V 0 commands (provided you did not set slew to anything other than 0 on that channel). That should result in a gate-like behavior.

1 Like

@M4R71N here is an example.
I have a 60 step sequence in the P.N 3 (the rightmost pattern in TRACKER), and then I have a script which advances through that pattern (using P.NEXT) and checks if it is a 1 or 0. IF it is 1 then it sends a TR.Pulse to trigger output 4 (or you can call it D).
Hope this makes sense… :smile:


2 Likes

the conditional statement is what I was missing (but couldn’t be arsed to figure it out at the time)

thanks for the tip @laborcamp !

1 Like

@glia yes, the IF/THEN commands were not clear to me from just reading the manual. I carefully looked through all the scripts in the factory scenes, for actual use examples, which clarified to me how to write a proper IF/THEN command.

This works for me – I have a tracker sequence of a few 10s in a row, followed by a few 0s and the following one line script

CV 1 V P.NEXT

The only out from the TT in my case is CV 1, going straight into a VCA, and it works perfectly as a gate.

Edit: If you’re dealing with multiple scripts/patterns, you can add P.N 1 (or whichever pattern you’re using) before the aforementioned line in your script

1 Like

Continuing the discussion from Monome Teletype and Walk:

Totally, thank you very much i will try that tomorrow !!! I am slowly starting to get my head around all this.

Ok and other little question, easy one i think, what is ā€œIā€ page for? Manual says ā€œI is the init script, which is executed upon scene recallā€, ok, so is it for general stuff like… i don’t know what exactly. so if someone could explain what kind of stuff they put in it i would be extremely grateful.

I is typically useful when you want to explicitly set certain parameters like M (metro time), or set ES_MODE if your scene is about interfacing with earthsea. The general idea is to allow some meta changes when jumping between scenes.

As you can recall scenes directly from a script or live mode, this facilitates complex setups where multiple scenes could be part of one ā€˜composition’. For example you could set up one scene that recalled a different scene whenever Trigger 8 was received, then save this scene to multiple slots but alter which scene was recalled on Trigger 8. You could have different data saved in the patterns but also change tempo or slew values along with that other data by using the I script.

On the Tracker, the name comes from the visual metaphor of the display rather than any strict adherence to tracker mindset. Tracker Mode is really just a ā€˜view’ of the pattern data. This data can be manipulated directly via scripts or live mode, but we found it’s handy to have a visual reference as well as a graphical method for entry. Plus ā€˜tracker’ mode sounds better than ā€˜spreadsheet’… hah!

Using Tracker Mode as a Tracker is relatively simple though, and the included scene could easily be expanded and customized to fit your needs.

The main thing I would say about it is that the data is entirely abstract, and depends on the script that is advancing the data being read out. You can use N values if your script converts them, or you can use direct 12bit values 0-4096 if you want to set arbitrary CV output. Of course the 1s and 0s can be used for triggers, or expansions on this where 0 is off, 1 is on, or 2 is pulse are possible.

It’s just data! You can use it however your imagination allows.

Can I get a Cliff Notes explanation of the Q? It seems that one defines a set of values, then when you type Q it will call the values, but only as you keep adding new values. I don’t understand the concept or use.

Hum i’m also asking myself if there is any way to use Teletype as a clock multiplier/divider or something like a trigger repeater/delay. I can’t find my way out to ā€œduplicateā€ the incoming trig.

What specifically are you trying to accomplish?

I want an incoming trigger to be repeated to make trills for instance, or maybe unsteady rhythms, and make it happen with a certain amount of probability ( i got this part covered ).

So. I got this going with the Triumvirat. One really big problem was the really very much too short cable for connecting the modules, as it allows only one way to put the modules in the case (the Trio left of the TT). But I found a good solution, and will maybe make my own cable.

I just tinkered with the preset patches espacilly those controlling the Trio, and I almost forgot to go to sleep. So much huge potential. Will tinker more. The perception of my whole modular just shifted immensly.

@M4R71N

There are number of things you can try.
Easy one would be to first play with delays:

DEL a : execute

which you can place for example on script 1, so every time you send a trigger to that input, it will execute that script:

TR.PULSE 1
DEL 250 : TR.PULSE 2
DEL 500 : TR.PULSE 3

etc.

so in the above case your single trigger will produce 3 triggers coming out of three TT outputs.
but you can scatter them coming out of the same output as well, which will produce a mini sequence of triggers, each 1/4sec apart:

TR.PULSE 1
DEL 250 : TR.PULSE 1
DEL 500 : TR.PULSE 1

Add RAND instead of specific time values, and you will have a more unpredictable timings:

DEL RAND 1000 : TR.PULSE 1
DEL RAND 500 : TR.PULSE 1

Playing with these can go a long way.
ALSO, you can patch an output of your TT trigger to another TT input, where you can have additional scripts, so say your TR.PULSE 2 output is actually patched to input 2 on TT, where you have another script that produces additional pulses, with different values, etc.

——

Then there is the internal TT metronome M.
Possibilities of using this for your objective are endless, but just to get you started:

put this in script 1:

M RRAND 100 1000
M.ACT TOSS

put this in script M:

TR.PULSE 1

What will happen is that now you will have a very chaotic output of triggers coming out of output 1. The scripts first sets a random time interval for the metronome, each time you send a trigger to input 1. It will be somewhere between 100milliseconds and 1 sec. Then it turns the metronome on or off, depending on whether TOSS will produce 1 or a 0, so the metronome will effectively be turned on and off randomly. And when it is on, it will spit out sequence of pulses, at that random time value, until next trigger to input one randomizes the time interval and/or turns it off again.

This will be crazy and random, but you can be very specific too. For example.

put this in script 1:

M 500
M.ACT 1
DEL 2000 : M.ACT 0

put this in script M:

TR.PULSE 1

So, each time you send a trigger to input 1, it will turn the metronome on, which will spit out a sequence of pulses for 2 sec. at 120BPM (every half a second).

Am not sure if this is what you are looking for, but these are some examples where you can start playing with structures and patterns.
Hopefully this helps.

5 Likes

This is a great run down!

If you really want to do clock multiplication, you can use the TIME function to count the number of time between pulses, then divide this time by a constant. You can use the RSH rightshift function for easy divisions of 2^n (for musical intervals):

1:
M RSH TIME 1 // divides the time since last input in 2, then sets the metro time to this value
TIME 0 // restart the timer count for the next interval

M:
TR.PULSE A // sends pulses at twice the input rate

The above creates a simple clock multiplier at x2 rate. You could use this same structure with different RSH values, or use more abstract math like a direct MUL or DIV for non powers of two. You could even add offsets with ADD or randomly select a different multiplier with eg: MUL TIME RRAND 1 4 which would choose between multiples of 1 through 4.

Note with the above that the metronome is free running and not explicitly linked with the incoming trigger. If you want a new input to reset the counter you could slightly expand it by resetting the METRO time and generating a trigger immediately:

1:
M RSH TIME 1
TR.PULSE A // create a pulse immediately on input
M.RESET // reset the Metronome counter to sync to the incoming trigger
TIME 0

M:
TR.PULSE A

6 Likes

thread is getting deep
(in the best way possible)