A wearable that helps you discover your city by taking you to streets where you've never been before
Tags: Hardware, Wearables, Mobile, IoT, Design
About the project
Wander Compass is a wearable that sits around the back of your neck. This device helps you discover your city and breaks you out the routine of everyday life.
Wander Compass is a project created to help people break their habits and explore the city the live in. This device sits in the back of your neck and connects to your phone to track your realtime location in a private and secure way. Whenever you're approaching an intersection of streets, the device will vibrate on either the left side, right side or center back of your neck to notify you the direction of a street that you've never walked before.
The 3D printed body of the wearable was designed in Fusion 360. The PCB circuit was designed and assembled using Surface Mount Technology (SMT), allowing me to miniaturize the board's footprint and pack more functionality into it. The device contains three haptic motors, a power button, a 500mAh LiPo battery and a micro-USB port for changing. Thanks to the Bluetooth LE IoT stack that was used, a single charge lasts more than three weeks of use.
The data that represents the streets was created in GeoJSON using cutting-edge GIS technology. The project uses a series of components (described below) to guide to user through their city in real time.
Arduino (RedBear Nano)
Surface Mount Technology (SMT)
Bluetooth LE IoT
MapBox + Turf.js + GeoJSON
Socket.io + Express.js
Android Development (Java)
Shots of the final wearable. PCB sits in the back of the neck, two haptic motors sit in each of the tips and at the center back. Power switch and battery in the back as well.
The design of the wearable makes it super discrete to use in public.
3D model of the wearable in Fusion 360. Used a head dummy as my starting point and sculpted the shape of the wearable around it.
How does it work?
Wander Compass is a system of components. It contains an Android app, a server, a debuging web-panel and a wearable. All the components perform very timely and specific tasks described below.
First, the realtime GPS location is captured via the Android app. The coordinates are sent to the server via Socket.io where complex routing algorithms run and the server determines the orientation (left, straight or right) of the unknown street for the intersection where the user stands at in real time (i.e. the corner of Broadway and West 4th St). The server then pushes that orientation back to the Android app and is then pushed to the wearable via Bluetooth LE. The wearable then determines which vibration patterns to perform to notify the user that it is time to take a new, unexpected turn. The control panel serves as a debugging tool, allowing the visualization of the location data in real time.
System diagram of the main components. Intended to help illustrate the relationship between all components and their functionality
Close up of the SMT PCB. Contains the LiPo charging circuitry, motor drivers, power switch and the headers for the microcontroller. Size is approximately 1.5in x 2.5in
This project was extremely fun to develop. I used many disciplines that I really enjoy working with, and took a concept from an idea to a physical and working device. There were important challenges, such being able to determine what 'right', 'left' or 'straight' mean in terms of spatial GeoJSON databases – a continuous trial and error prototyping practice is what made it possible to develop and overcome those challenges.
The technology behind this project can be used for many other novel navigation-related applications. I am looking to develop it into other areas in the future.