# Teletype workflow, basics, and questions

I for one would love a Teletype Discord. There’s one for Norns so why not Teletype? I think it can offer all the benefits of a forum in a different, real time environment.

I would be into this study group also.

1 Like

So I got this idea for generating melodies on the teletype from motives.

Basic idea is this: If you break down an integer into 4 nibble you can store four numbers 0-15.

The first nibble holds a jump, centered round 8: 0 means rest, 8 means hold note, 7 means one step down in the scale, 9 means one step up, etc.

The second nibble is length of note, 0 means one step (in my case a M-cycle), 1 is two steps etc

The third and fourth nibble holds another jump and another length.

This (super short) motive is stored in A, the script playing the notes rotates A bit wise 8 location after each read to make it easier to strip out the correct parts of the integer.

In this short proof of concept instagram clip I have four integers stored in a pattern, TI.PRM determines to probability that a new motive will be read from the pattern and stored in A. With only four motives, it’s a little too obvious, but I figured it would be easier to follow:

https://www.instagram.com/p/CJbNMwpByZx/

Being able to do stuff like this is why I just love the teletype!

EDIT: Here’s the script:

``````#1
IF ! Z: A <<< A 8
IF Z: Z - Z 1; BRK
I & A 15; Z >> & A 240 4
IF I: J - + J I 8
IF || < J 0 > J 13: J RRND 6 8
TR 1 I; CV 1 N P J
``````

There are a few “magic numbers” and assumptions in there:

1. A holds the current motive (set from somewhere else)
2. Z is the number of ticks to next note, exposed in a global var to be able to re-sync
3. The script assumes you have a scale stored in current pattern
4. Line 5: “0” and “13” is the beginning and end of the scale (so in this case the scale goes from location 0-13)
5. Line 5: “6” and “8” is the range in which the melody will drop back when reaching the outer bounds
6. Line 6: adjust to send gate/cv somewhere else than buildin TR 1 and CV 1
8 Likes

This is just absolutely amazing. Wow!
It’s another reminder that I have to work with Bitwise OPs.
I was recently thinking a lot about scripting more musical motifs and sequences in TT. This is one brilliant idea.

Would you be willing to share the whole script? Would love to take a peek…

Yeah, there’s one small thing I’d like to clean up before sharing, but as always: my code is your code

5 Likes

Hey folks. Went ahead and started a discord for our study group. Here’s the link for anyone who wants to jump in!

10 Likes

I’ll see you there!

I’ve recently joined a few discords and I’m finding them fun and interesting.

Definitely reminds me of IRC on steroids.

Hey all. I posted some thoughts in the discord server about its specific purpose, nature, and rules. Posting them here just so everyone is in the know re: how the server will interact with lines, why it exists, and when it will self-destruct. Those thoughts are below. Feel free to join!

Teletype Q1 2021 Study Group

INTENT: The goal of this server is to help you achieve a specific goal (or set of goals) related to the Teletype, and to give you (and me) a place to have messy discussions about how to accomplish those goals. This goal will be referred to as your “thesis” or “theses”.(edited)

2
[9:36 AM]
TIME-BOUND: This study group will be a time-bound effort. At the end of Q1 2021, it will turn into a pumpkin. Think of it as a bar napkin where you’re going to do some calculations; and also as the bar where you do the thinking. Bounce ideas off the folks on the other bar stools.(edited)

2
[9:38 AM]
LINES INTERACTION: When you have completed your thesis (and you are the sole judge of that), please post your scene (or scenes) to the Teletype Code Exchange (or apprriate thread) on Lines (llllllll.co). I do not want this discord server to replace or supplement any function that lines is currently serving in any of our lives. I also do not want your final product to remain on this private server. Please share your scene so that the larger community can benefit from it. As such, the channels on this discord will be very specific (more on this in the next point).(edited)

2
[9:45 AM]
HOW IT WORKS: First, please complete the official monome teletype studies (and it’s ok if this is your only goal! We are here for you, and that is a wonderful accomplishment!) . Each time you complete a study, post a quick message in the #monome-studies-progess-check thread so we can give you high fives! Also, use that thread to hash out any questions that you have re: the studies. Post a video of your working scene, if you so desire!

Once you’re done with the initial studies, it’s time to decide what your thesis is going to be. The sky is the limit, but I’d encourage you to pick a specific scope for your thesis, so that your goals are clear and so that this community can help you get unstuck when necessary. When you have a thesis in mind, please create a text channel on this discord server. Title it “your name/handle-project name”. For instance, mine is “mattlowery-chrono-pal”. In this channel, post a detailed description about your thesis, what you want your scene to do, and perhaps even the pieces of the puzzle that are currently baffling you.(edited)
[9:48 AM]
COMMUNITY: Here’s where I think this server will really shine. Community members, it’s on all of us to rouitinely scan the thesis channels and offer help, encouragement, and insights from our own teletype experiences. Please be kind and considerate. Offer advice, but respect the author’s ultimate authority in creating what is essentially a tool to further their own unique creative journey.(edited)
[9:51 AM]
LINES RULES APPLY: The code of conduct present on Lines will be strictly enforced here. Please be pleasant. I would imagine that the opportunity for nastiness would be very small here, being that our scope is so specific. But the internet surprises me all the time. Listen: be kind. Anything less will not be tolerated. There’s enough bullshit in the world. Let’s play it cool here.

5 Likes

Firefox keeps saying invite link is invalid. I’d love to join…

2 Likes

Ok, I refreshed the link above. Give it. Try now.

1 Like

Edited with script code

1 Like

Thank you!
Unbelievable – This script is crazy.
I would be lying if I said I understood it completely.

1 Like

The real fun begins when you change A “behind the back” of this script, if you haven’t already, you should try it!

1 Like

I’m currently on Part 2 of the Teletype Studies and have encountered something bizarre. It is more than likely user-error, but wanted to ask for guidance.

I’m in the “Repeat this: this this this this” section and up to now, all has worked fine up until now. Here is my issue: after going into Edit mode and adding TR.PULSE A to the M script, I can’t get metronome to behave properly in Live mode.

The value of M was set to 1000 so I reduced it to 200ms with “M 200” as directed and now the triggers have stopped and it is permanently on… No led flashes, no triggers opening/closing the VCA. Any idea what I should check?

Thanks!

Edit: I checked the value of TR.TIME A and it was 500, which I would think was causing this issue… Should I change it to different value each time I change the metronome value?

I’m pretty sure the high TR.TIME A value is indeed causing trigger to stay open. If you just need triggers I suppose a short TR.TIME should be fine, I’ve used the triggers with a higher TR.TIME to keep gates open longer. In that case you could for example set the TR.TIME as a ratio of the M value when you change it.

1 Like

Thanks for that. I had guessed at something like that, but as I’m just starting out, I don’t know how to do that. Hopefully I’ll learn as I proceed.

1 Like

If you change the M interval value within a script that would be a place to update the TR.TIME value as well. If you change the M value live you could update the TR.TIME the next time the metro script runs, if you can access the M value from a global variable. I believe T is used generally for this purpose if I’m not mistaken. Then it makes sense to set the M interval as T initally after T has a value.

1 Like

Just guessing but would the command to relate TR.TIME and M (make trig time equal to metronome value) be simply: ‘TR.TIME M’ ?

I only ask because I’m curious if I’m picking up on the language and the above is similar to ‘CV 2 CV 1’ since that is how you make the value of CV 2 equal to the value of CV 1.

Thanks!

Almost, you’d need to specify which output as well.
So `TR.TIME X M` (replace X with the output) should set the trigger time equal to the metro time. Not sure if it will retrigger, I think it’s probably safer to set the trigger time a bit shorter. But you’re totally right you can get the metro time with M. I wasn’t sure if M was accessible as a global value had to look it up. This really helped me in addition to the studies: Teletype manual

2 Likes

Seems the invite may have expired again