Inspiration

As students, there always seems to be another lecture to watch, yet our energy levels are finite. We often find ourselves dozing off, using our phones, or looking elsewhere instead of paying attention to the lecture recordings. To improve our learning efficiency, we needed a way to wake ourselves up.

What It Does

Electurecute comes in two parts: the shock collar and the Chrome extension.

  • The Chrome extension detects when the site where NUS stores its lecture recordings is accessed in any tab and communicates with a background service running a local API.
  • The local API tracks the student's attention using the webcam. If the student looks away for too long, they will be shocked by the shock collar.
  • Closing the relevant tab deactivates the collar, preventing unnecessary shocks during normal browser usage.

How We Built It

The project consists of the following components:

  1. Electric Dog Shock Collar
  2. Arduino Uno Board
  3. Chrome Extension
  4. Script to Run a Local API in the Background

Challenges We Ran Into

We originally intended to track a user's health while playing the video game Valorant. If their health dropped, the user would be shocked. However, this plan fell through due to issues running the API script on Windows.

As such, we reverted to our backup plan, which was also our original prototype idea: tracking the gaze of users to monitor their attention during lecture recordings.

Accomplishments That We're Proud Of

  • Successfully hijacking the signal of an existing electronic device.
  • Ensuring the shock collar works for its intended purpose.

What We Learned

  • How to use pyserial to run Python code in conjunction with Arduino code.
  • How to write a basic Chrome extension capable of tracking user navigation.

What's Next for Electurecute

  1. Reducing Delay: Minimize the delay between detecting a distracted user and delivering the electric shock.
  2. Adjustable Intensity: Allow users to adjust the intensity of the electric shock via the Chrome extension.
  3. Bug Fixes: Eliminate bugs that lead to unnecessary shocks, such as when users are not watching lecture recordings or are paying attention.
Share this project:

Updates