Inspiration

As fellow engineering students, we understand the difficulty of having to study for hours on end. From past experience, we realized that this challenge can be overcome using the Pomodoro study technique. This study method involves studying in 25-minute blocks—taking a 10-minute break between each study session. We aimed to create a fun and interactive design that incorporated this study technique, which led to the creation of F.L.A.S.H., the study bot.

What it does

F.L.A.S.H., short for Flashcards, Learning, And Study Helper, is a study bot that helps students study using the pomodoro study technique. Its main functions are divided into two categories: study periods and break periods. At the start of a study period, F.L.A.S.H. starts a 25-minute timer and counts down until the period ends. When the break period starts, the player is prompted to start playing a game. This game consists of multiple-choice questions on flashcards. The user earns points by correctly answering questions, allowing them to track their learning progress.

How we built it

We designed a small robot with two LCDs—one for the face and one for the body. The face LCD displays a timer during study periods, and emoticons during break periods. This LCD was programmed using C++ and an Arduino Uno. The body LCD is blank during study periods, and shows the game's flashcards during breaks. This was programmed using Python and a Raspberry Pi.

To give the user the option to pause their study period, we incorporated a touch sensor, enabling them to easily pause and resume their study sessions. The game required a method to select one of the four options shown on the body LCD. The hardware chosen was a joystick, as it allowed for an easy scrolling and selecting mechanism.

After the hardware was mostly completed, we measured them to determine the dimensions of the robot's physical body. After planning and sketching our design, we modelled the robot in SolidWorks. These models were then 3D printed and used to encase the hardware components.

Due to time constraints, the robot's base was quickly constructed using cardboard. This base serves two purposes: 1) providing stability for the robot to stand and 2) housing some of the wiring components.

Challenges we ran into

The first issue we ran into was our inability to display the Raspberry Pi OS on our 4" LCD screen. The screen would turn on, and could display the screen of the device it was connected to, but it would not work with our Raspberry Pi. After hours of trial and error, we realized the issue could be solved by resetting the microSD Card, and we were finally able to display the Raspberry Pi OS.

Another issue we encountered was being unable to connect the Raspberry Pi to the school's internet, which was essential for downloading the required software. The Raspberry Pi was not able to connect to the internet wirelessly or by using an ethernet cable. In the end, we were able to connect the Raspberry Pi to a device that could share the school's internet connection with it.

When 3D printing, we had trouble successfully printing the first layer. These issues were due to an unlevelled bed and a lack of bed adhesion. The bed was properly levelled using a spirit level, but there was no glue to facilitate bed adhesion. Instead, two additional adjustments were made: we increased the bed temperature (promoted stronger adhesion) and the fan speed (cooled the printed layers quickly to reduce warping). Eventually, we succeeded in printing the first layer and completing the rest of our design.

Accomplishments that we're proud of

We are incredibly proud of our ability to overcome all of the challenges we'd encountered. Despite facing many obstacles, our team persisted and built a functional, interactive study tool. Ultimately, we are proud of the study bot we created—F.L.A.S.H.—which integrates the Pomodoro technique with a fun and engaging game to enhance students' focus and learning.

What we learned

Throughout this project, we gained valuable insights into both technical and problem-solving aspects. Overcoming technical issues, such as displaying the Raspberry Pi OS on the LCD and 3D printing our design, taught us the value of trial and error. We learned how critical it is to troubleshoot step-by-step and stay persistent even when the solution isn't immediately clear.

We learned how to integrate various hardware components such as the LCD screens, joystick, and Raspberry Pi, with custom software to create a functional and interactive robot. This experience deepened our understanding of how software controls hardware in a tangible way.

From leveling the 3D printer bed to solving connectivity issues, we learned how to adapt to and overcome unforeseen challenges. We became more resourceful by finding creative solutions, such as connecting the Raspberry Pi to the internet through another device.

Working on this project as a team taught us how to collaborate effectively, communicate our ideas, and combine our skills to achieve a common goal. Each challenge we faced provided us with opportunities to learn from each other and improve our teamwork skills.

Overall, this project was an excellent learning experience that enhanced both our technical abilities and our approach to problem-solving.

What's next for F.L.A.S.H.

F.L.A.S.H. could further improve by detecting movement and noise disruptions to prompt the student to refocus, ensuring better adherence to the study technique. This would involve integrating an Arduino microphone and an ultrasonic distance sensor. With this microphone, the robot can also detect and respond to verbal answers during the games, making the experience more interactive and engaging.

Share this project:

Updates