Teletype - Programming a keyboard to send stored commands


#22

I can give programmed keys a go. But yeah, typing with a vortex keyboard on Teletype currently requires some amount of deliberateness in your typing.


#23

did you have a chance to try the latest test version?


#24

I have not yet, I’m sorry! My modular time has been a little engrossed with my little side project of making & selling Teletype boards, Slashes, and Offworlds for the community :slight_smile: When testing Teletype right now I’ve been using my 3.0-rc5 w/ 15 ms polling custom build, which semi-works but I will give the test build a shot. Sorry for neglecting that.

I have a class tonight after work but could give a shot after that possibly, and definitely Thursday night. Will report back, sorry for the delay.


#25

no problem! tbh not sure it will even work but would be good to find a fix.


#26

I think this could just be part of the Teletype firmware?

where in LIVE mode a specific key combinations would automatically paste and execute lines of pre-written code…

There would be a need for “editing” screen, where users can write the specific lines of code to be associated with a particular key combinations. (kind of like executing the scripts from the numeric keypad)


#27

A way to treat the keyboard like the grid might make sense? So listening for keycodes or keycode combos in live mode.

Maybe using caps lock as a “macros active/inactive” toggle so you know when you can type freely or not?

To me this brings up the timeline/shadow scripts discussion. More space to define macros in script is also relevant.


#28

@scanner_darkly @xenus_dad I updated to the version linked to and wasn’t able to reproduce any sort of lost keystroke with my vortex core!


#29

Yes, I was thinking about the same thing!
I imagine writing these script lines would end up a bit like a “timeline”, but one that could be accessed one line at a time, nonlinearly by the various keybaoard key combinations.

OR
now that you mentioned it: the grid… so like a list of 128 lines of code where each can be played by grid pads…

Can you imagine playing earthsea, except instead of the note values you could sequence the lines of code?

:eyes::thinking:


#30

I’ll give a shot tonight. I type fast :slight_smile:


#31

@scanner_darkly, this is also perfect, for me. It’s like having a whole new module! Or a working keyboard :slight_smile:

Does this come with potential performance side effects?


#32

awesome, thanks for testing @jlmitch5 and @xenus_dad!

this version doesn’t have any changes in how often keyboard is polled, so no effect on performance. the fix is described here.

i’m pretty sure the version i posted should have everything from 3.0 but i’ll make another build tonight using the official 3.0 just in case and post it in the other thread.


#33

re: assigning arbitrary commands to shortcuts - this is basically scripts, with the ability to assign shortcuts to them, which necessitates having more scripts or the timeline feature (as scripts 1-8 already have shortcuts assigned to them).


#34

That is exactly the case.


#35

this would be a much bigger change (imagine the UI you’d need to support the editing mode), but it gives me an idea. what about a variation of SCRIPT op where you could execute a specific line in a script, something like SCLINE script line? then you could code a scene with earthsea like grid UI triggering specific lines, or even create a sequencer where you sequence which lines to execute.


Teletype 3.+ feature requests and discussion
#36

That sounds great!
It seems like something that would fit very nicely within the general TT logic/ethos.

As far as UI for the grid triggered commands. In my head it just looked like a vertical scroll of numbered lines (or they could be numbered as coordinates of column/row: 1.2, 1.3, etc.). As you scroll up and down to enter the command lines, the given number lights up the corresponding button.


#37

that feels like a pretty special use case tbh, i’d rather have some more generic way of doing this, which to me is just scripting a UI using the existing grid ops. you could implement a sequencer or an earthsea style keyboard with just init and metro scripts, which leaves you with 48 possible lines.


#38

Counter: if you added or deleted a line to a script you had targeted elsewhere with SCLINE it would break the references throughout the rest of your scene.

I don’t know if it’s possible to have arbitrary (can’t remember what they’re really called but the) : operators, to ‘name’ a line. Almost like function/method names.

FOO: TR.PULSE 1

and then call EX FOO or something to execute.

I am assuming there are very good reasons why Teletype doesn’t support named functions. But, referencing a specific number line in a script seems to be asking for things to break.


#39

Eagerly awaiting the GOTO op :wink:


#40

We can make rocket ships!

Actually could probably make rocketships with grid ops and L now.


#41

good point, i would argue though that in a limited script space it’s easy enough to find all instances / edit appropriately (could also be done automatically but that would likely cause more issues than solve). also, for some use cases you would simply use scripts as collections of lines, so you would just edit specific lines without moving them. also this fits nicely within the existing system as it doesn’t require any major changes (although the execution context will need to be carefully considered).

regardless, having functions would be very useful. relevant thread: