Morse code typing for the iPad

Morse code can be a very effective way to type using only two switches. And now you can use it on an iPad, creating some new possibilities for people who are switch users. This post shows you how to set up and use Morse code on the iPad.

A photo of an iPad, showing the Morse code keyboard on the display. Two switches are connected to the iPad using the Tapio switch interface.

A photo of an iPad, showing the Morse code keyboard on the display. Two switches are connected to the iPad using the Tapio switch interface.
Morse code dates back to the early 1830’s, and has been used in assistive technology since at least the 1970’s to support typing using one or two switches. As switch access methods go, it has the potential to be quite fast– one study measured a Morse code typing speed of 12.4 words/minute for a person with a C2 spinal cord injury, using a sip/puff switch for the dots and dashes. Fast forward to 2019, and Morse code is having a bit of a moment. One question that comes up frequently is whether you can use Morse code to type with switches on an iPad — Yes, you can! Read on to learn how.

This post mainly covers the basics of setting up and using Morse code to type. This will get you started. Just be aware that there are some additional steps needed to fully integrate Morse code typing with accessing the rest of the iPad. If there’s enough interest, I’ll cover that in a second post.

Overview

Here’s our end goal with our Morse code setup: it should allow us to use 2 external switches with an iPad, so that we can use one switch to enter a dot, and the other switch to enter a dash. By combining switch activations, we can combine dots and dashes to enter letters and words. (Note that it’s also possible to use only one switch, but we’ll keep to the two-switch case for this post.)

OK, what’s our basic approach to setting this up? This is not like some other accessibility setups where we just download an app, or turn on a setting, and away we go. We’re going to combine several apps and settings to get to our end goal.

First, we’ll use the Morse code keyboard that is provided with Google’s Gboard app. The keyboard looks like this:
The Morse code keyboard in the Gboard app. There is a large key for dot, and a large key for dash. It also includes 3 predicted words at the top, and a few function keys at the bottom for Shift, space, backspace, and Enter. You tap the dot and dash keys on the Morse keyboard to enter text. So dot-dot-dot will come out as ‘S’, for example.

This gives us the basic Morse code decoding ability. But in our scenario, the iPad user has physical difficulty tapping on the iPad display, so this Morse keyboard won’t help as-is. We need a way to “tap” the dot key and the dash key using external switches that are easy for the user to activate.

So, next, we’ll set up iOS Switch Control so that the external switches can be used instead of physically tapping the onscreen keyboard. This relies on the Custom Gesture option within Switch Control Recipes. Once we create the recipe (we’ll show you how below), the switches will perform Morse code typing whenever Switch Control is on, and our recipe is active.

Some prerequisites

There are a few moving parts to set up before we get into the details of creating the recipe. Some of you may be regular Switch Control users, in which case you’ve done most of this already. If you’re new to this stuff, please let me know if you have questions about how to do any of these steps.

  1. Download and set up the Gboard app to display the Morse code keyboard.
  2. Set up the Accessibility Shortcut to turn Switch Control on and off (optional, but recommended). This lets you triple-click the Home button to exit Switch Control any time if you get stuck while experimenting.
  3. Connect your switch interface and configure two switch sources. Luis Perez’s post on recipes gives some tips for doing this.
  4. Get familiar with Switch Control and its Recipe feature if you aren’t already.

Create the recipe

We need to create a recipe within Switch Control that will let our switches “tap” on Gboard’s Morse keyboard. The video below takes you through the process from start to finish.

Here’s the basic idea of how the recipe works. Let’s call it “2sw Morse.” It uses two switches: we assign Switch 1 to “tap” on the dot key, and Switch 2 to “tap” on the dash key. We create each switch assignment using the Custom Gesture action. For example, for Switch 1 (the dot switch), we record a physical tap where the dot key is on the keyboard. Then when we hit Switch 1, it will perform the exact physical tap that we recorded. Pretty cool!

Test and use the recipe

So far, we’ve successfully created a 2sw Morse recipe, but it won’t do anything unless Switch Control is on, and the recipe is active. We’d better test it to make sure it works (fingers crossed!).

To test the recipe, the easiest way is to set it to launch automatically when Switch Control turns on. Use the Launch Recipe setting as shown below:
A screenshot from iOS Switch Control, showing how to set up a Recipe to launch when Switch Control turns on. The Launch Recipe setting is set to our new two switch Morse recipe.

Then, make sure your 2 switches are connected. Open up a typing app like Notes and tap the text area to get the Morse keyboard to show on the screen. Do triple-click Home to turn on Switch Control. Once Switch Control is on, your switches should act like dots and dashes. Hit the dot switch, and wait a second. An E should appear in your text. Hit the dash switch, and wait a second. That should give you a T.

This video shows Morse typing in action:

Try it! And please do let me know if you have any questions or problems.

Getting going with Morse code

If everything has gone well, you’ve now got a way to type on your iPad using Morse code and 2 external switches. To really make this useful, you need to go a bit further to really learn the code and adjust the settings to support comfortable and fast typing. Google has developed something called the Morse Typing Trainer that may help with the learning part. And the Gadget Hacks post gives a really nice description of the Gboard Morse settings; these can really make a difference, especially the character timeout.

How long does it take to learn Morse code anyway? I’m no expert on this, but in the Levine study I mentioned earlier, it took people about 2-3 practice sessions/week over 2 months to use the code with 90% accuracy without a cheatsheet. So it does take some time, but not all that bad.

Putting it all together

While the 2sw Morse recipe is active, the switches will perform Morse code typing. When we exit the recipe, the switches revert to their normal actions of stepping through and selecting items on the iPad display.

So, typically we’ll need a way to turn the 2sw Morse recipe on, when we want to type, and turn it off when we’re done typing. It would be great if iOS could do that for us, when it shows/hides the keyboard. But it can’t, at least I haven’t figured out how to get it to do that yet. There are a couple of different approaches to getting in and out of recipes within Switch Control, but that gets a bit beyond the scope of this post. I may cover that in a future post.

Thanks to Jason Beck from the Adaptive Design Association for his help with figuring this stuff out, and to Darren Gabbert for prompting me to think about it.

Do you think you or someone you know would benefit from using Morse code to type?

Let me know if I can help in any way!

6 thoughts on “Morse code typing for the iPad”

    1. Thanks, Paul! If nothing else, it’s a pretty simple and inexpensive way to demo Morse code and let people try it for themselves.

  1. Heidi: Thanks for posting this. Morse code is a much-neglected resource for augmentative communication and now that there’s a free app available, it’s easy for people to try it and see if it works for them.

    Two points: The Gboard Morse keyboard does not have a 1-switch option. We asked them if they could add it, but apparently it’s a major change to the code so they balked. I bet if the AT community really embraces Morse, we could get them to do it.

    For Android users, setting up the switches in Morse code is quite a bit less complicated than for iPad. Getting the Morse to work seamlessly with switch access navigation, however, is just as complex. Right now, a DIY hardware solution (https://experiments.withgoogle.com/morse-switch) is our best option.

    1. Thanks for your note, Susan. Regarding 1-switch Morse on iOS, you actually can do it via Recipes and Custom Gestures. The key is that Switch Control allows you to define a Custom Gesture for a “regular” switch press as well as for a “long” press. So in the 2-switch Morse case that I described above, you have 1 custom gesture for 1 switch (dot), and 1 custom gesture for the other switch (dash). In the 1-switch case, you’d have the dot custom gesture for regular press on Switch 1, and the dash custom gesture for the long press on Switch 1. Same gestures, but they are assigned slightly differently to switch actions. So it works like “classic” Morse code, where a short press is dot, and a longer press is dash. So in iOS, at least, you have the option to do either 2-switch or 1-switch Morse. Pretty cool!

Leave a Reply

Your email address will not be published. Required fields are marked *