Inspiration
In 2021, a common friend of our team was diagnosed with Dysarthria, a neuromuscular disease in which the muscles responsible for speaking are severely impaired, resulting in slurred or incomprehensible speech. As a result, our friend was unable to use speech-to-text devices in which he could write out his thoughts in a rapid manner. Our friend was left with no form of rapid verbal or textual expression, which prompted us to consider building something that could re-enable him with this, such as a stenographic tool.
What it does
SwiftSpeak is a stenographic input tool that transforms a click of a few buttons into syllables. Functioning similarly to a keyboard, SwiftSpeak only outputs syllables instead of individual letters, increasing the writing speed of a sentence significantly. Our product functions by taking in sequences of pressed keys, and then, using a self-developed algorithm, matching this input to a syllable, which is then outputted and displayed on your chosen display monitor.
How we built it
So the first thing we decided to build, was the infrastructure of the product. As our product is more directed to those with physical disabilities, we knew that we had to put ergonomics at the highest of priorities. Thus, we decided to model our product after the natural resting position of a healthy hand. Then, we made our product input with stenographic methods. As our keyboard is custom-made and wired, we had to develop our own driver by editing pre-existing ones. This was then sent to an application called Plover, which stored all the information in a chord-like format. These chords will be identified through an algorithm that examines both the stroke internal and the roll-over interval. This was then processed using a plug-in that we designed and finally input those words on the screen. .
Challenges we ran into
Some challenges that we ran into were all related to compatibility. Our biggest challenge was not designing or creating the individual aspects themselves, but rather integrating them in a way that works like an ecosystem. As our hardware was not based on the usual pre-programmed Arduino, we had to make our own new methods to detect a keystroke. Some ways that we did this included looking for the voltage and resistance themselves, and using a sudden predicted discrepancy of the two to act as a keystroke.
Accomplishments that we're proud of
Being only high schoolers, we have very limited opportunities to play and experiment with these kinds of technologies. Being able to create a fully functional software & hardware project that is genuinely able to help people, is very rewarding. We are also very proud of being able to integrate software and hardware. We did this by importing a Levenshtein-style algorithm, that serves as an automatic correction feature. Having software and hardware aspects in our project, we have exceeded our expectations for this hackathon, and this opportunity has allowed us to identify, examine, and tackle real-life problems.
What we learned
Our team has a very diverse skillset, though it allowed us to create more possible projects, it required us to communicate our skills and work harmoniously. From this experience, we were learning not only from the workshops but our own teammates. We taught each other a large variety of things in each other’s specialty. Through this, we were able to learn more not only about each other’s respective fields but also to integrate them together and create a robust, ecosystem-like project.
What's next for SwiftSpeak
As SwiftSpeak exits JAMhacks 7, we aim to push our product’s functionality to the general public. Seeing as we can address a highly pressing issue in our communities, we can integrate SwiftSpeak into local physiotherapy centers or public health centers to further increase the accessibility of our product, and thus, its impact on a larger community. We will start this out by reaching out to local physiotherapy centers within both the GTA and Waterloo, for both mentorship and implementation of our product.
Built With
- 3d-printing
- atmega32u4
- cad
- plover
- python
- qmk




Log in or sign up for Devpost to join the conversation.