This article is intended for escape room designers.  If you’re an escape room player, I’d suggest you skip this one to avoid having a genre of puzzles spoiled for you.

-SPOILERS AHEAD-

Many of us have played or designed rooms that include a typewriter with mixed up labels on the keys.  Such a typewriter effectively automates a simple substitution cipher, quickly giving players the experience of decoding a secret message.  I’ve seen these “code typewriters” on several lists of clichéd escape room props, so I thought I’d discuss of some ways to use this principle more creatively.  I’ll start with direct hacks on code typewriters themselves and broaden out later, so skip this first bit if you’re looking more for inspiration than technique.

Neat ciphers to use
Use a cipher like ROT13 or Atbash where pairs of letters encode to each other.  That way, hunt-and-pecking a desired message into the typewriter will output the ciphertext for a team to solve by typing it in.  Why is this great?  If your typewriter is set up this way, it’s very easy to create clues that are customized for a birthday or proposal group- just type in the custom phrase and put the resulting ciphertext somewhere they will find it.
Typewriter with letters encoded in 3-letter loops.
Even fancier than that, you can arrange so letters encode in 3 letter loops- F encodes to M, M encodes to L, L encodes to F.  Typing in such a message with give you ciphertext that, when typed in, gives you another piece of ciphertext which must be entered in again to reveal the message.  This requires clear clueing to work.  I’ve embedded ciphertext that requires two passes inside a message requiring one pass, so their first decoding said “I found a coded message that said XCYTH FLWP ROD SJAM.”
To expand this loop of letters concept, let’s create a loop that contains our whole message.  We can hide any word or phrase with no repeating letters— these are called isograms.  For the clue “Follow the path beginning with W” to reveal EARTH, you’d need W to reveal E, E to reveal A, A to R, R to T, T to H, and H to period.  Typing each letter as its revealed reveals the next one to type.  Weird! 

Alphabet Apple scrambled by swapping the buttons.  For use in a room, you'd need to disable several of its many functions to eliminate red herrings.
Beyond typewriters
One way to take this quick decoding experience further is by applying it to objects besides typewriters.  Here is a children’s toy that speaks letters aloud when they are pressed.  As you can see, I’ve swapped the buttons to make it function as a code typewriter that speaks the answer letters as the code is typed in.  Toss a resistor in line with the speaker to detune the voice and you’ve got a creepy sounding prop for a child ghost room.
Another way to take this further is to use inputs and outputs other than text.  For instance, adding letters to the keys of a keyboard allows text to reveal a recognizable song or vice versa.  This typewriter with textures glued to the key decodes textural clues into answer phrases.
Textural typewriter where each key has a unique material.
Further Afield
The really neat thing about code typewriters is that they speed up and streamline an exciting or attractive process.  You feel like a spy without having to actually learn how to crack a code or sit there painstakingly using a code wheel.  What other experiences and processes could you create a streamlined version of using props and puzzle design?  Mixing flavors as a chef?  Learning martial arts?

I’ll probably write a longer post about this later, but the main tenet here is that engrossing challenges get their players to do something interesting, not just be somewhere exciting or see something exciting.  Make players the main characters of the story!