Recently I suffered multiple keyboard-related Repetitive Strain Injuries. I tried several "forced break" tools to alleviate this condition but found I needed something smarter - I wanted a system that would help me stay "in the zone" when coding but still track posture info so that I could make frequent, small adjustments instead of just pausing after fixed amounts of time or typing. I also wanted a tool to help me track hand exercises I should be doing, which is why I brought in the Leap Motion sensor as part of this project.
How it works
posture.io is designed to be highly affordable - it consists primarily of a magnet-sensing TI SensorTag that is affixed via Velcro to the back of a standard office chair, along with a thin adhesive magnetic strip that is placed on the back of a standard belt. The posture.io system communicates over Bluetooth Low Energy with an OS X application that then coordinates posture scoring and alerting. A dashboard icon is used as an initial indicator of bad posture, however a break alert will be scheduled to the user's Outlook calendar if this warning is ignored. A user can additionally perform hand exercises (tracked by an optional Leap Motion controller) which are counted positively in the overall scoring system.
Challenges I ran into
Finding an office chair on Craigslist in FiDi the day before the Hackathon and getting it up to Midtown in one piece
Coming up with a reasonably robust algorithm to track "bad" posture
Porting an open-source SensorTag communication library from working with iOS to working on OS X
Learning correct Outlook REST API time format to create a scheduled break at correct future time
Creating bridging headers for Leap Motion's XCode SDK so it could be fully used in a Swift-based project
Accomplishments that I'm proud of
Created a working prototype that I hope will become something real and truly help improve the posture and health of developers and office workers everywhere.
What I learned
Read the source! One can't always trust documentation, especially around Swift to Objective-C interoperability.
Test, test, test! Edge cases abound
What's next for posture.io
Trying to find other interested developers who could help me bring this technology to folks who could use it
Log in or sign up for Devpost to join the conversation.