Intro: Use the MaKey MaKey to Make DIY Assistive Technology for Computer Access
In this Instructable we will be looking at how to use an innovative device called the MaKey MaKey to create customized, low-cost, DIY computer access interfaces for users with disabilities.
What is a computer access interface?A computer access interface is anything you use to interact with your computer. Normally this is simply a keyboard or a mouse, but for some individuals these devices are impractical or difficult (perhaps even impossible) to use.
Many commercial options exist that let people use their computer in various ways, but the vast majority of them are extremely expensive, hard to use and rely on relatively outdated technology and design principles.
In this Instructable, I will show you how to make your own simple, transparent interfaces out of common objects like aluminum foil and cardboard and an awesome $50 piece of technology!
Who is this Instructable for?This Instructable is meant for friends, family members and caretakers of individuals with some form of physical disability. While the techniques and technology introduced in this Instructable may be used to help individuals with cognitive disabilities, I have not had any personal experience with such cases.
Please rely on your personal intuition and experience with the user and, if possible, consult with a competent and compassionate expert before actually implementing technology with a user..
I welcome any experiences or advice you may be able to share about using the MaKey MaKey to construct interfaces for individuals with cognitive or physical disabilities. Please feel free to comment on this Instructable, and let me know whether the information I've presented could be helpful for such cases.
Intent and disclaimerThis Instructable is intended to help individuals become more comfortable with using technology to meet their own needs through hands-on learning, experimentation and making. It is no way intended to replace or improve upon commercially available technology.
Furthermore, while this Instructable advocates for the role of DIY technology as a means of empowering users in need, the help and guidance of a trained assistive technology professional is still very valuable. If you are able to, enlist the help of an assistive technology professional who is familiar with your user and supportive of your interest in DIY technology.
Step 1: Overview of the Process
- Learn about the MaKey MaKey and how to use it.
- Find out what the user wants to do.
- Find out what the user can do.
- Design or choose an interface that lets the user do what they want using what they can do.
- Build a prototype of your interface.
- Work with the user to test the interface.
- Think about how to improve the interface.
- Make the world a better place by sharing your work online!
We will go through each of these steps one by one in this Instructable, so don't worry about figuring it all out at once!
Step 2: Learn About the MaKey MaKey
Essentially, the MaKey MaKey let’s you use found objects (like fruit, plants and aluminum foil) as though they were computer mice or keyboards. You can connect a banana that hits the space bar for you when you touch it, or a pillow that clicks the mouse for you when you lay down!
In other words, the MaKey MaKey lets you make your own low-cost, DIY computer access interfaces out of familiar objects that you have just laying around!
Where do I get it?You can order the MaKey MaKey directly from the makers (JoyLabz) at http://joylabz.myshopify.com/products/makey-makey-kit.
It costs $50, and comes with a bunch of alligator clip wires, a USB cable, and some great instructions!
To make the MaKey MaKey do something for you, simply plug it into your computer using the included USB cable and grab some alligator clip wires from the box. Your basic goal is to connect one of the MaKey MaKey's functions (such as the Space Bar or Left Click) to one of the "Earth" connections at the bottom of the board in creative ways.
How do I use it?
One of the most popular way to use the MaKey MaKey is to connect your body to the “Earth” bar so that anytime you touch a MaKey MaKey function (with your finger, for example), you trigger it.
You can connect your body to the MaKey MaKey in lots of other fun ways, such as:
- Holding the metal end of an alligator clip wire.
- Clip an alligator clip wire onto a piece of metal jewelry.
- Dip your hand and an alligator clip wire into a bowl of liquid (or Jell-O, or soup, or an aquarium).
- Make a bracelet by wrapping aluminum foil around a piece of cardboard and strapping it onto your arm.
Still not making much sense? Check out this cool video from the MaKey MaKey folks to see how this all looks:
Using materials and objectsWhat makes the MaKey MaKey so fun is that you can put lots of different kinds of objects between the function you want to use and “Earth”. You’ll be amazed by what you can use! Try out some of these materials:
- Aluminum foil - cheap, easy to use and can be found anywhere!
- Copper or aluminum tape - can be easily found at most hardware, gardening or craft stores.
- Anything metal, such as coins, jewelry, tools, door handles, binding from spiral-ring notebooks and so on.
- Special conductive materials like conductive paint, fabric, thread and foam.
- Pencil lead - draw on a piece of paper until you have some thick, dark lines, then clip onto them.
- Foods like chocolate, bananas, Jell-O and fruits.
- Plants (real ones, not plastic ones).
- Pets, friends or younger siblings (be nice!).
What can the MaKey MaKey do?The front of the MaKey MaKey lets you access arrow keys (up/down/left/right), space and left mouse click with very friendly alligator clip wires.
The back lets you access W, A, S, D, F, G, mouse movement (up/down/left/right), right click and left click using bare wires, which are included the MaKey MaKey box.
Step 3: Try Out the MaKey MaKey
Make it workPlug the MaKey MaKey into your computer with the included USB cable, then take an alligator clip wire and clip it onto one of the Earth connections. While touching this wire, use your other hand to touch the bare metal of one of the MaKey MaKey’s functions. See if you can make it do a Left Click or hit Space for you.
Use an object to trigger an actionNow take another alligator clip wire and clip it onto one of the MaKey MaKey’s functions. Take the other end of this alligator clip wire and clip it onto something metal or squishy nearby. Grab a hold of the Earth wire again and touch the object you found. Can you make your computer do the same things as before with the object in place?
Experiment with materialsNow have some fun and attach both of your alligator clips to random objects around to see what works and what doesn't. Review the previous step to find a list of lots of different materials you can use with the MaKey MaKey. See if you can use at least three different materials!
What other kinds of objects can you find that work? Try connecting objects to the Earth wire. Mess around and learn what works and what doesn't. Have fun!
Step 4: BONUS: BacKey for MaKey MaKey
Turn the MaKey MaKey over - see all those four black walls sticking out of the back? Those let you plug in bare wires (included in the MaKey MaKey box) to access even more functions, instead of using alligator clip wires. Next to each of the holes of these black walls is a little icon or note telling you what function it is connected to.
Sometimes working with bare wires to access to the functions on the back of the MaKey MaKey can be a little frustrating, so I designed a kind of “backpack” for the MaKey MaKey that makes it easy to access everything with alligator clip wires.
The BacKey for MaKey MaKey clips onto the back of the MaKey MaKey and allows you to access every function of the MaKey MaKey using just alligator clip wires. Not only does this make it easier to use while tinkering, but it also makes for a more durable and reliable system.
Buy a BacKeyI'm currently working on setting up a way to sell these boards through Tindie, but for now if you would like to get an assembled BacKey board please send me an e-mail at zen.webb [at] gmail [dot] com.
I'm asking $10 for each individual BacKey, with discounts for bulk ordering.
Step 5: Identify the Needs of the User
Good examples of actions include:
- Moving and clicking the mouse to navigate their computer.
- Using WASD to move a character around in a video game.
- Using the arrow keys to move the cursor around in a document, or to play simple games.
- Opening and closing programs.
- Pressing a combination of keys to launch a more complex script or system function.
If you have some suggestions for things that people can do, please feel free to leave a comment on this step!
Augmentative and Alternative Communication (AAC) applicationsA very common task that people with disabilities may use computers for is communication. While the MaKey MaKey is a relatively specific, general-purpose device, it may be very useful as a way to trigger sounds on a computer so that a user can communicate more easily.
Here are a few programs I've found that let you assign audio files to any keyboard key you want, so you can use the MaKey MaKey to directly trigger sounds:
- Soundplant (free if using WAV files, $35-$50 to use MP3 files) - very impressive and cheap software that let's you easily assign sounds to keyboard keys. Interface can be enlarged easily, and all activity is indicated with visual clues. Highly recommended piece of software.
- JBuzzer (free) - a bit on the ugly side, but very simple interface. Allows you to assign any kind of audio file to any key on the keyboard. Worth trying out.
- BackToBasics (free to try, $20 to actually use audio files) - very tiny interface, but similar to Soundplant
Again, if you can think of good applications for the MaKey MaKey, or know of other programs that can be used for computer access or assistive tech applications, please leave a comment on this step and let me know!
Using the MaKey MaKey for gamingGames are a very rewarding use for assistive technology, as most of the time users with physical disabilities are forced to use special proprietary software that tends to be incompatible with modern games. Sometimes a user already has the tools the need to perform practical activities on their computer, but lack the ability to engage in activities purely for the fun of it (i.e. gaming).
Here are some gaming-related ideas you can try out:
- Most 2D platformer games are great because they usually only require movement keys (either WASD or arrow keys) and one or two other buttons (like Space or Left click). Try:
- More complex games like first-person shooters or adventure games generally require the simultaneous use of both movement keys and mouse movement, but otherwise just use mouse clicks and maybe a couple keyboard keys to play. Try teaming up with the user! You move the character around, and the user shoots!
- Check out what other users have done on the MaKey MaKey website.
Using keys and combinations to automate complex actionsFor some actions, using only the functions that the MaKey MaKey provides can be a bit cumbersome. Luckily, there are several programs out there that let you trigger complex scripts (sometimes called "macros") using any key or key combination you want.
For example, you can use the F and G keys to turn your system volume up or down, or use the space bar to zoom in/out (press once for in, twice for out).
Here are some programs to check out:
- AutoHotKey (free, Windows only) - extremely fast and powerful desktop automation program. Tons of usefulscripts are available, so you don't have to do any programming.
- Launchy (free, all platforms) - keystroke launcher that let's you easily find and open any program, file or folder on your computer. Even allows you to do complex things like launching bookmarks and doing simple calculations.
- Automator (Mac only) - an automation program for Mac. I don't have any experience with it personally, but you may want to check it out.
Operating system accessibility toolsThe Windows and Mac operating systems include a lot of really helpful accessibility tools that you may want to take a look at. They will allow you to do quite a few cool things on your computer without any special software, like text-to-speech, bring up an on-screen keyboard, open up a screen magnifier and much more.
Here are some resources you can use to learn more about your operating system's accessibility tools:
Step 6: Identify the Capabilities of the User
Print out the Body Mobility Chart attached to this step and work with the user to identify their specific physical capabilities.
Your goal is to find out what types of movements the user is able to perform without difficulty, so that you can build an interface around those movements.
Take short notes about the user’s specific abilities, and ask the user to rate how hard or easy it is to perform certain movements.
Step 7: Choose or Design a Solution for the User
Here’s where things really start getting fun. Now that you know more about your user you can start getting creative and finding ways to let them use what they can do to do what they want to do.
Remind yourself of what the user can doGrab your filled-in Body Mobility Chart from Step 6 and take a close look at what the user is able to do, and how difficult certain types of movement may be.
Think of ways to use materials and objects with the userRemember the different materials that you may have tried in Step 3 when you were playing with the MaKey MaKey and try to imagine where you could place those materials or objects so that the user can easily touch them.
Consider that the user will need to touch and move away from the object for it to be detected by the MaKey MaKey, and make sure that the user's natural resting position is not in contact with your materials.
Include the user in the design processIf you are having trouble sketching or designing an interface purely on paper, go and chat with your user and include them in the process! Maybe they have some good ideas for things to try, or have used or seen something similar that you can gain some inspiration from. Sometimes two heads are better than one!
it doesn't matter how good your interface is if the user isn't excited to use it! Try using aluminum and cardboard with the user to test out ideas for where to put contact points, and make simple sketches and notes so you don't forget what works and what doesn't.
Examples of interfacesI’m including a few examples of interfaces I have thought of. Feel free to use any of them, or parts of them, or just get inspired by some of the assembly strategies that are you can use!
If you come up with a neat interface and have some drawings and notes to share, please post a comment on this step and share your ideas!
Step 8: Make a Prototype
Using your design as a guide, gather all of the parts you need and put together a prototype. This can be crude and ugly, as long as it gets the job done. Sometimes as you’re making a prototype you find obvious problems or improvements that were not obvious on paper, and you need to buy other stuff to make it work, so don't invest tons of money too soon.
Start small and test as you go.Make just a few contacts (the metal/squishy things that the user needs to touch) and test them out on a table. Then maybe make a structure that holds the contact points, and play with it to figure out how strong it is and how to adjust it.
Think critically as you workCarefully consider how practical your prototype is for your specific user as you build it. Is it harder to use than you were planning on? Is it comfortable? Will it break easily? Can you remove it (and install it) easily?
Experiment with materialsThink of how you can use different kinds of materials to create more comfortable and reliable interfaces. For example, you can test your idea by taping aluminum foil onto cardboard to make a contact point, but the foil may rip over time. Maybe you can use a patch of conductive fabric sewn into a small throw pillow instead, or attach some more durable aluminum or copper tape.
Example: making a judo chop interfaceTo demonstrate the process of making a prototype, I've built a "Judo chop interface" from Step 7 and come up with some notes that may be helpful.
To make it easier to install and remove the interface, I decided to wrap aluminum foil around a piece of cardboard, which I can then strap onto the arm rest of a wheelchair or normal chair.
I quickly realized that when I lay my arm on the armrest, my elbow and part of my forearm are naturally always in contact with the armrest. Therefore, rather than attaching a wire directly to the user in some way, I could just use two separate contact points (made of aluminum foil) on my strip of cardboard and position them so that when the user lays their hand down, their entire arm is in contact with both of the contact points.
I used alligator clip wires to connect one of the aluminum foil contacts to a MaKey MaKey function, and another wire to connect the other contact point to Earth.
Step 9: Use the Prototype With the User
Meet with the user and show the prototype interface to them. Demonstrate and explain it before you install it with the user, and have the user play with it (if possible) to become more comfortable with it before it is installed. Ideally the user helped you design the interface in the beginning, and has been aware of what you have been working on for them already.
Listen to the user!Remember that the user is more important than the interface. If the user has concerns or discomfort, stop and address them right away. We saw in the previous step that sometimes small changes are necessary and obvious when you make a prototype that you had previously only seen on paper. The same will be true when you go to actually implement it.
It's OK to experiment and change things around, as long as you are comfortable with how to use the MaKey MaKey and you know what kinds of materials and actions work.
Evaluate the effectiveness of the interfaceOnce you've installed the interface and shown the user how to use it, you should observe the user for a while and try to get a sense of how effective the interface is.
Look back the user's needs (Step 5) and make sure that they are being met.
Check that the user's movements are comfortable and easy for them to do. Perhaps certain movements aren't as easy as you expected, or the user thinks that other movements would be easier or faster.
Tweak your prototype until the user is satisfied and is able to do what they want using movements that are easy for them.
Step 10: Improve the Prototype
Upgrade the materialsCardboard and aluminum foil are great for hashing out prototypes, but may fall apart quickly during repeated use. Your first upgrades should probably involve more durable conductive materials. Here are some that are worth the investment:
- Aluminum/copper tape - won't rip as easily as foil, and has an adhesive backing so you can secure it to structures more easily. Commonly found in the ductwork aisle at any hardware store, or in the gardening section. Aluminum tape looks like this, while copper tape looks like this.
- Conductive fabric - actual fabric with metal strands woven into it. Soft, washable and as durable as cloth. Pick some up at Adafruit or Sparkfun (several sizes and construction styles available). Sew this onto clothing like hoodies, gloves or pants to make interfaces out of things the user likes to wear.
- Conductive thread - sewable thread that conducts electricity. Use this to embroider beautiful patterns that work as MaKey MaKey contacts, or to connect patches of conductive fabric together. Can be bought for hand-sewing and machine-sewing from both Adafruit and Sparkfun.
- Conductive paint - literally paint contact points onto nearly any surface. One of the coolest recent innovations in the hobbyist tech world, and great for making playful interfaces. Can be bought in jars or in pens.
- Conductive foam - often used to protect electronic components during shipping. This material is great for making very comfortable and functional interfaces, and is readily available from a varietyofsources.
If you're feeling really adventurous, there are many more materials and techniques to explore over at Kit-of-No-Parts.
Upgrade the structureYou may also want to consider upgrading any structures you may have built for your interface to make it easier to install or remove, or hold up to wear and tear better.
An easy way to do this is to replace any cardboard bits with wood or metal. However, wood can be abrasive and metal can be uncomfortable when it's in contact with skin, so consider wrapping it in fun fabric or painting it.
Use velcro so you can reposition and adjust the interface for comfort or different uses. Try using velcro to attach the interface to the user's wheelchair, or under each conductive contact point so you can rearrange, add or remove contact points any time you want.
Tidy up the wiresOnce you know how far each wire needs to reach and where they all need to go, consider using zip ties or cable clamps to hold them all in place.
Hot glue and tape can work in a pinch, but will not hold up to repeated use or changes in humidity or temperature.
Try to keep all the alligator clip wires as short as possible. Coil up any loose wire so that it doesn't get caught on something by accident, and use zip ties to hold it in place.
Find a way to firmly attach your MaKey MaKey to the structure, but not permanently (you never know if you'll want to use it again in the future).
Use a long USB cable or a USB extension cable to connect the MaKey MaKey to your computer if you need to.
Example: improving the judo chop interfaceTo make a better judo chop interface, I started with a piece of scrap plywood and used aluminum foil tape instead of wrapped aluminum foil.
I drilled a few holes so that I could easily run zip ties through the board and attach it to an arm rest.
I used zip ties to attach the MaKey MaKey at the end of the board, away from the user's arm, and a USB extension cable to connect to my PC.
Step 11: Share Your Project Online!
By sharing your project you can make a real, positive impact on the lives and well-being of other people. And it only takes a couple minutes of your time!
Please consider sharing your experiences online in any of the following ways:
- Use the "I Made One" button to add a comment to this Instructable with some photos and quick notes about your interface, and your experience.
- Post a thread on the MaKey MaKey official forums. They even have a special section just for assistive tech interfaces! http://www.makeymakey.com/forums/index.php?board=7.0
- Share your project through social media (Facebook, Twitter, G+, etc), with a link to this Instructable so people can learn how to do it themselves.
- Make your own Instructable and share how you designed, built and used your interface! A little mention of this Instructable would be super nice, too ;)