So I pivoted to making my own controller with force sensors attached to a spongey material underneath a flexible material that the user could push down in different spots on
Then I was able to use the varying sensor values for when the user pushed down in 7 different spots to get 7 different “keys” from the 3 sensors while still being able to know where the user is pressing. Since the mid point I added volume to the speaker with a LM386 audio amplifier as well replacing the power so the circuit could be plugged directly into a wall outlet.
The last touch which was something I had never done before was lazer cutting the box that I put everything inside of. I from an online box-generating site where I entered the dimensions and it gave me a .svg file. I then used illustrator to add the additional circles I wanted cut in certain walls for the speaker and wiring and export the file to use on the lazer cutter.
download code/fritz: codeAndFritz
]]>
After looking online I believed I could use an old ps/2 port keyboard to work with the Arduino by soldering wires to the correct pins and then using a library to get the key presses in my code. After a lot of struggling with getting the connection between the pins and wires, I decided to order the piece that will make this connection much easier, by plugging into the port and giving the output wires that go into the Arduino. This part hasn’t arrived yet so for this stage of the assignment I used the Serial input from the computer’s keyboard in order to show my idea.
^when I realized that this was probably not going to work
I found two text to speech libraries online for the Arduino, and incorporated both into my current project. The first library has the ability to take any string and will attempt to make the speaker speak it. It also has an adjustable pitch which I gave access to via buttons. To be honest, the outcome of this was a little disappointing. You can sort of tell what is being said, but its pretty hard to understand.
The second library I found had a bunch of pre-made words that it could say if initially written to memory. I use this library by having the speaker read the letters out that were typed. You can switch between these two modes with the switch on my breadboard.
To Do:
Currently, the volume is too low and I need to use an audio amplifier/bigger speaker to so that this will be audible in a noisy environment.
Once the ps/2 port that I ordered shows up, I will hopefully be able to interface with the ps/2 keyboard so that I don’t need to use the keyboard that the arduino is plugged into via USB. This will be nice because my final vision for this project is to not have it be plugged into a computer but standalone box with a keyboard and speaker and everything else tucked inside, including a power supply.
]]>
I want to make a mobile keyboard that reads aloud the words typed into it. If someone were to lose their ability to speak, this device could be an easy way for them to quickly communicate by typing what they want to say, since typing has become so natural to most people.
Hardware
The most crucial element of hardware in my project is the keyboard. After doing some research I believe that using a keyboard with the older PS/2 port I will be able to have my keyboard interact with the arduino. I will also need a speaker and power supply or maybe rechargeable battery (it would be nice to have it all be wireless).
Software
The trickiest part of the software process will probably be the text-to-speech. I have found a library on github that is used for arduino text-to-speech and an example of it being used online so hopefully I wont run into any issues with that. I’ve also found a library for the keyboard.
https://github.com/jscrane/TTS text to speech
https://github.com/PaulStoffregen/PS2Keyboard ps/2 keyboard
Order of construction and testing
1. get keyboard input
2. use keyboard input to make text-to-speech happen
3. figure out wireless power supply
4. craft some sort of container that hides wires, leaving just the keyboard and speaker exposed.
I’m not sure if this project is maybe too simple for a final project, but I like this idea because of the accessibility it could provide someone in need. It is possible that I will add to or modify this idea to better suit the assignment if needed.
zip: assignment5
]]>video: https://youtu.be/h3AtkzsaTRg
]]>