All of the main devices and sensors that are used in Helmetx
A back view of the helmet that shows the ultrasonic sensor, which detects approaching vehicles, and the logo.
An LCD message to the cyclist that there is an approaching vehicle behind them.
All of the electronic components of the helmet being tested before they were assembled onto the helmet.
Helmetx being worn by an avid biker.
As avid cyclists who are interested in wearable tech, this idea came naturally to us. After stumbling upon a news article, we were shocked to discover that nearly 8000 canadian cyclists are seriously injured each year. 1 in 3 of all cyclist deaths occur in poor lighting conditions. We knew that we could create a product that could help mitigate the amount of cycling injuries. From there, we thought of Helmetx and many more features that could optimize the cycling experience.
What it does
Helmetx is a multifunctional cycling helmet with many safety features. The helmet’s main feature is a stunning LCD screen, which allows cyclists to view biking metrics, such as speed and acceleration. Cyclists can cycle through the metrics by pressing the button at the side of the helmet. The helmet uses an accelerometer to measure the acceleration and from there, the speed was able to be derived and displayed. Additionally, if the helmet’s ultrasonic detects an oncoming vehicle, the LCD will display a warning message with the vehicle's proximity to the user. The lights around the helmet will also flash to alert the vehicle. To manually control the lights, cyclists simply have to press one of the side buttons on the helmet. The LCD can also display directions to the cyclist’s location on the screen.
How we built it
We divided our team into two separate teams: hardware and software. The hardware team was responsible for all electronics related aspects of the project and the software team worked on our code and the Google Maps direction API. On the hardware side, after brainstorming our idea, we did a lot of research into what features this helmet should have and which devices would be best for the task at hand. Then, we got started by testing out different sensors individually and then combined them into our main program. We did a lot of tests along the way and once all our features worked, we assembled the electronics onto the helmet. On the software side, we researched the Google Maps API and how to use it. We wrote code which extracts the directions and then outputs an integer representing the type of turn. Then, the code on the helmet converts the integer back to the appropriate direction and displays it on the LCD screen.
Challenges we ran into
Building Helmetx came with many challenges, but we were always able to solve them! Our biggest challenge as a group was learning how to use the Raspberry Pi and the Google Maps API, which was new to each member in the group. As such, we had to do an immense amount of research. On the hardware side, we had an issue with the LCD screens. When we first started to prototype with the hardware, we attempted to use 128x128 pixel LCD screens. After researching troubleshooting methods to fix the screens, we swapped to using a 16x2 LCD screen. On the software side, we had many technical issues with using certain APIs. After much trial and error, we switched to using the Google Maps API.
Accomplishments that we’re proud of
Overall, we are proud of how we were able to take on a project that was out of our comfort zones, face the challenges that we approached, and create a working end product. As a team, we entered the project with many uncertainties but we were able to come out victorious. We are most proud of how well we all worked together and how our skills complemented one another.
What we learned
Our team learned how to use the Google Maps API to direct the Raspberry Pi. Both of these systems were quite new to us, and required a significant amount of research before we could start playing around with them. At the end, we were able to develop a method which involved extracting directions and outputting them as an integer which represented a specific type of turn. We also learnt how to incorporate different sensors into our main program.
Going forward with this project, we would like to improve on the screen and look into the possibilities of incorporating a transparent display. We definitely want to incorporate additional sensors to provide the cyclists with more metrics and explore the possibility of having an onboard camera to record rides. We would also make use of a 3D printer to print a proper casing for our electronic components. In the future, we will make use of bluetooth or internet connectivity with the phone and Raspberry Pi to have accurate and updated directions based on GPS data.