Morse code input for Android with Arduino
Morse code may not be as widely used as in its heyday, but it still certainly has its adherents. One avid user is Tanya Finlayson, who has been using this as her method of communication for roughly 40 years. Now, with the Gboard phone keyboard supporting input via dots and dashes, the world of Android computing has been opened up to her as well.
In order to get button presses to the phone, Ken Finlayson used an Arduino Leonardo to read inputs from a trio of buttons, indicating dot, dash, and mode select. The third button allows for phone navigation in addition to text input. Because of its built-in HID capabilities via the ATmega32U4 chip, the Leonardo is a great choice for this application, demonstrated in the video below.
Many people cannot use keyboards and touchscreens to control their digital devices. Instead, they use custom hardware switches that emulate typing, swiping, and tapping. The Android operating system provides software that allows these switches to control Android devices, and recently Google provided a new Morse Keyboard within the Gboard keyboard for people who find this method easier for text entry.
This experiment is a DIY hardware adapter that enables assistive tech developers to connect existing switch based input systems to their Android device. Once connected, 2 switch assistive systems (with an additional switch for mode switching) can control both the standard Android accessibility functions as well as text entry through Morse on Gboard.
This experiment is built using Arduino and is compatible with most standard assistive 2 switch systems with 1/8” mono outputs.