Inspiration
When thinking of ideas for what to do for this hackathon, I decided that I wanted to do something that was useful. I do a lot of messing around with Arduino and hardware, but I never design something for the purposes of helping people. I knew what I had brought going into the hackathon, and one of my earliest ideas was using a joystick to help people with little motor function. My thoughts then shifted to what it now is because I decided to work with audio.
What it does
This device is made for people with speech deficiencies or impediments that want a quick and easy way to say frequently used words with no typing or writing. When switched on, the screen displays multiple word and phrases categories. holding the stick in the direction of the category will select it and you will go to a screen with options for words and phrases to say. When a word is selected, the word will be played as audio through the headphone jack and in the case of all categories except the numbers category you will be returned to the home screen. Adding new phrases is a straight forward process that allows for customization and more accessibility to users.
How I built it
I built this device by first prototyping each module of the project by itself with an Arduino Uno until I knew they would work. Then I made a working prototype of everything together on one breadboard and built the GUI on the Oled screen by testing positions colors and values on this breadboard setup until I was happy with it. In my program, I used a large amount of user-defined functions to organize my thoughts and make switching the displayed information quickly.
Challenges I ran into
I ran into a lot of issues early on in my testing of the mp3 module. I spent close to three hours trying different pinouts and configurations for the wiring. I'm still not sure what the issue is, but after taking a short break and trying again, the module has been working fine since then. Another issue that I ran into while designing this project is the Arduino Uno program storage. At one point I attempted to run the code and received an error that my program took 103% of the Arduino program storage and that it wouldn't be uploaded to the board. My solution for this was that I had to delete words and phrases until eventually, I was barely under the maximum program size. My hardest challenges stemmed from me working alone on this project. I was struggling to stay awake as it got earlier in the morning, and I still had much work to do. I feel that with a group I may have been able to make a more professional project with a more efficient program and a better looking final product. If I had the time or a partner I would have liked to 3D print a case for the project.
Accomplishments that I'm proud of
I am very proud of my project, but I am especially proud of the protoboard that I soldered together. This is because I started working on it around 3 am, barely awake and having trouble identifying problems. I have soldered PCBs and protoboards in the past, but they always require long debugging sessions and still work intermittently. This project, however, works just as good as the version on the breadboard and required very little debugging.
What I learned
In high school I competed in a lot of engineering events. Because of this, I knew generally what this experience may be like. However, in the past, I never competed while sleep deprived and alone. This has shown me pressure like I haven't seen it before while I tried to compete with teams of five that were taking turns sleeping on the floor. I have learned that whenever possible I will try to find a team to work with and that it's not a bad idea to bring a blanket and pillow to hackathons.
What's next for Voice Box
I built the Voice Box in a way that allows it to easily be repurposed. It acts almost as an Arduino Uno shield, easily attached and removed from the processor with a set of pins. The screen, joystick, and mp3 module are also all removable. Because of this, it becomes a platform with flexibility on parts and repairs. Not only is it modular in hardware, but it can also be modular in purpose. At the core, the Voice Box is an Arduino Uno with an attached joystick, OLED screen, and mp3 player. The uses for this sort of setup are almost limitless such as a primitive gaming device or a fully functioning mp3 player with a custom UI. Adding hardware would also be simple, and increase the amount of possible uses.
Built With
- 3.5mm-jack
- adafruit-gfx.h
- adafruit-ssd1351.h
- analog-joystick
- arduino
- dfplayermini
- dfrobotdfplayermini.h
- oled-using-ssd1351
- softwareserial.h
Log in or sign up for Devpost to join the conversation.