A project created at MLH (Major League Hacking) UofThack 2016. This is our first Hackathon!


Before the hackathon, all students in my grade were having fitness sessions for gym class. The coach asked everyone to do 100 proper push-ups every session. Some students could not do finish so many proper push-ups, and they often did it in the wrong body position. They kept practicing the wrong position while the coach is not watching them, without realizing they were doing it in the wrong way. So we want to create something that scans the body positions while doing push-ups and give real-time feedback.


The hardware is designed to detect body positions and body data. The hardware system includes: 6 bent sensors (detect body positions), 2 shake sensors (detect if you are shaking or not), 1 heart-rate sensor (detect heart rate), 1 temperature sensor (detect body temperature), 1 LCD screen (displays information), a buzzer (for warning) and 1 Arduino Mega 2560 Microcontroller (controls all hardware). All hardware are attached to a t-shirt by sewing.


We developed a pebble watch app, which the Bluetooth doesn't work really well while connecting to the hardware. Then we decided to program an LCD screen, to replace the watch. The algorithm basically works like this: All sensors give feedback data real-time to the microcontroller, then the microcontroller analyze the data and decide what to decide on the screen (warning message or basic information) and whether to let the buzzer beep. It also keeps all the data in the past and these information could be used for analyzing later on.


We would like to use a microcontroller with built-in wifi. We tried Photon first, but we could not make a stable connection with our devices because it doesn't support the wifi setup that the University of Toronto has. We then tried Intel Edison. We spent 16 hours exploring and setting up the Linux system running in the Edison. With the help of Intel Engineer Pearl Chen, we were able to set up the Edison and upload files to the web server. However, we didn't have enough time to set up a proper web server and make a web app. Instead, we were trying to focus on Bluetooth connection, we tried to program a pebble watch app, but the Bluetooth communication doesn't work really well. Then, 6 hours until demo, we decide to use an LCD screen and connect all the hardware by wire. It is really hard to attach all the hardware to a t-shirt. We basically learned how to sew in 6 hours, and we eventually got better! We did finish it and submitted it before the deadline.

Future Development

We found out that if we wear the shirt backward, it became a sit-up shirt! We will try to find better and more sensitive sensors to fit in

Built With

Share this project: