Proteus Motion

Proteus Software Experience

A collection of software features designed for a one-of-a-kind hardware product.

Organization

Proteus Motion

My Role

Principal Designer

Proteus is a one of a kind software enabled fitness diagnostics and training robot. It uses 3D resistance—constant resistance in all dimensions to create the feeling of training under water. Our product has applications in sports performance training and physical rehabilitation with customers including professional sports teams, physical therapy clinics, and bio-hacking facilities. Proteus Motion’s mission is to become the universal standard for physical strength and power measurement.

Through my role as one of the software product owners, I have directly shaped the experience bringing desired functionality to our customers while impacting our key performance metrics and reducing hardware production and servicing costs.

Advancing the active experience

The core experiences of using Proteus are our three activity modes found in the Training Center. These include two training modes; Freestyle a “sandbox” style activity with no set structure and Workouts, a guided time-based training mode based on a playlist of exercises. The third mode is Performance Testing which is how Proteus assesses an athlete’s ability to generate peak power and acceleration.

Group Performance Testing

One of our most impactful activity mode updates was introducing group testing to Proteus. Before this release, testing was performed by one athlete at a time. This was incredibly limiting for many of our customers who train multiple athletes together or run all-day testing combine events involving whole teams of players. We hoped that enabling group tests would increase the rate of testing on Proteus which could have a positive impact on ROI for our customers.

Introducing this new way to test multiple athletes required altering our software architecture to remove the existing rigidity that forced trainers to essentially dual authenticate with a single client at a time. This had interesting implications for other areas of the software related to activity setup, accessing administrative functions, and even the initial authenticated “home” view.

prot_gt_flow_01
SW architecture update
prot_gt_flow_02
Three approaches for group testing

This feature built off of the original solo testing mode’s active user flow of running the tester through a series of movements performed for a set number of reps at a set resistance level. To make that original flow work for a group of athletes, I needed to provide a way to choose the desired number of testers to start the activity, allow the trainer to select the appropriate athlete to perform the assigned movement, sum of the group’s results in relation to each other, and provide access to their detailed reporting data (more on that later).

While working on the core group testing functionality, I proposed several updates to the original active user flow that would be shared between solo and group tests. These were meant to bring some requested quality of life improvements to the active testing states. This included making the onscreen instructions a little more clear, adding in multi-rep display for each tested movement, and rebalancing the data in the interstitial views following each individual movement. While we needed to cut these additional enhancements to stay within the project scope, they remain available as a jumping off point for when we next iterate on our testing mode.

On screen testing instructions
prot_testing_future_01
prot_testing_future_02
prot_testing_future_03
Movement data collection
prot_testing_future_04
Interstitial movement data view

Six months after releasing group testing, we saw noted a significant increase in testing overall.

15%

Of sites use group testing on a weekly basis

23%

Of all tests performed as group tests

32%

Increase in testing per site overall
Velocity Based Training in Freestyle Mode

Freestyle is our most popular activity mode due to it’s simplicity and unstructured usage. Our users will warm up, train, and do quickly check key performance metrics without needing to choose an athlete profile or predefined program. Due to that simplicity, it can serve as a platform for experimentation as well. Many of our customers ascribe to some version of velocity based training (VBT) which is especially popular with baseball oriented trainers. As our athlete user base is roughly 1/3 baseball and softball players, this was an opportunity to provide direct value and move into a training space typically occupied by camera-based devices such as Perch.

The basic mechanic of VBT is to move with maximum effort while staying within a prescribed velocity window to activate the desired training adaptation. If the athlete’s velocity moves outside the window, the resistance or weight is adjusted so that their movements again align to the window while maintaining maximum effort.

Building upon our existing Freestyle mode, I worked with our human performance subject matter experts to introduce VBT principles and functionality. To assist the athlete with maintaining maximum effort while staying within the prescribed velocity window, I included a simple gauge showing their live effort in context to their target. Additionally, I wanted to provide a nudge to correct the resistance by highlighting the UI with animation when they remained outside their target for too long. I made it simple for users to select the best preset velocity target for their desired training adaptation. To give experts more granular control, the double slider allows them to choose the velocity window ideal for their training need.

prot_vbt_01
Lacking velocity in VBT Freestyle
prot_vbt_02
Setting VBT velocity target

Contextualizing data

Upon delivery of a prospect’s insurance policy they entered the “Onboarding” phase of our customer journey. This mainly consisted of getting this new customer’s online profile set up as well as familiarizing themselves with the digital experience for their owned products. Two concepts were developed to move customer’s through this critical customer phase.

Testing Insights and Recommendations

Prior to my arrival at Proteus, the performance data was assembled into very dense PDF Power Reports for the trainer to interpret and give to their clients as a takeaway. There were several critical issues with our reporting.

  1. Only two of the dozen or so tests in our catalog produced this report. For the remaining tests, users were only given some rudimentary metrics
  2. The actual Power Reports were so dense and complicated that most trainers could only reference a couple of top level metrics
  3. The Power Reports weren’t architected in an extensible or reproducible way, so it would require a lot of one-off design and development effort to create a report for each test
  4. Customers who created their own tests would never be able to generate a Power Report

At it’s core, this project was really about data interpretation, display, and distribution. Over nearly a year of smaller and larger releases we built out a new reporting platform complete with progress tracking, testing insights, and shareable training recommendations. Critically, trainers with their own custom tests could also leverage our interpretation capabilities, greatly empowering them to best train their clientele. We hoped that our new reporting platform would demystify test data interpretation and give trainers much desired utility, ultimately boosting the rate of testing across the board and by extension our data collection.

prot_reporting_ts_01
Overall test results by movement
prot_reporting_ir_01
Insights and training recommendations

While one of our main objectives was to distill the wealth of collected data into actionable insights for any trainer, we still needed to accommodate the needs of the top 5%. They expected to be able to dig into the metrics to generate their own interpretation and applications for it. I applied progressive disclosure mechanics throughout the experience to give most users what they needed, and the few experts what they wanted.

prot_reporting_mc
Expanded insights movement category
prot_reporting_movement
Expanded individual movement

The complete reporting views are accessible on the attached Proteus tablet as well as through the web client portal. For most athletes, beyond an initial interpretation by their trainer, they didn’t have as much use for all of the data-rich goodies we provide. I proposed a stripped down version of their training recommendations meant to serve as a “pocket training guide” while training in the gym day to day. This was a fully responsive web view so they could access it on any of their devices, but I primarily indexed on designing for mobile usage. Importantly, since many athletes don’t or can’t log into Proteus on their own, the “pocket guide” can by shared by the trainer via email or directly loaded by scanning an onscreen QR code.

The “Pocket Guide” for Training on the Go
prot_pocket_guide_frame_01
prot_pocket_guide_01
prot_pocket_guide_frame_02

After the main final release, we measured impact for the following quarter via our own metrics tracking system and a trainer survey I administer twice a year.

20%

Increase in testing at sites that were frequent testers

24%

Increase in testing across all sites

10%

Increase in trainers who reported Performance Testing as their most frequently used mode
Training Center Leaderboards

Creating a competitive and positive environment is important to our customers. We understood that they like to use our test data to compare athletes with each other and foster friendly competition. We also saw an opportunity to create more engagement and potentially increase testing by leveraging test data to populate local site-level leaderboards.

While not in use, Proteus’s home state is the Training Center which serves as a launch point for our training and testing modes. Furthermore, while in an unauthenticated state we display a looping promotional video as a screen saver. This video, while exciting, doesn’t serve much of a functional or marketing purpose in this situation. I saw an opportunity to use this space to deliver a little more value to our customers by serving as the space to display the site’s local leaderboards.

To reflect the key metrics leveraged in the reporting views shown above, I proposed various permutations of metrics, gender, athletic skill level, and timeframes. The team settled on serving up potentially eight leaderboards: peak power and acceleration, per gender, for the current month, and for the full year. To give customers control of how leaderboards were displayed, I made sure they had the ability to select different sourcing tests for each gender’s leaderboard, hide the boards from the Training Center, and opt-out any athlete that didn’t want their name displayed publicly.

In addition to the core feature requirements I used this project as an opportunity to refresh the long neglected Training Center to bring it up to spec with our updated brand guidelines and streamline the somewhat verbose activity mode descriptions.

prot_leaderboard_01
Leaderboards active on Training Center
prot_leaderboard_02
Leaderboards hidden on athlete’s Training Center

Reducing manufacturing and servicing costs

Building and maintaining a software enabled hardware product is expensive. If it moves it can break (and probably will break eventually). If the software relies on the hardware performing perfectly the stakes are even higher. Fortunately there are opportunities for software and design to reduce manufacturing costs by creating efficiencies at the factory or servicing costs out in the field by prolonging the life of a customer’s hardware.

Software Assisted Unit Calibration

The first project I worked on at Proteus Motion was an internal initiative to reduce the amount of time required to calibrate our hardware at our manufacturing facility. This was an opportune time to address a major inefficiency in our manufacturing and delivery process, since we were just starting our first at scale manufacturing run for our hardware product. In order to ensure that each Proteus unit had a consistently correct “feel” to the generated 3D resistance, all three electro-magnetic brakes needed to be calibrated prior to customer delivery.

I worked with the software and hardware teams to understand the current tedious and error-prone process (performed in a hot 90º+ factory). This process required many readings from a force meter to be transcribed into a complex spreadsheet to generate the required force coefficients for each brake which then needed to be manually re-entered into each unit’s settings.

Our cross-functional team’s solution was to build a custom handle with a built in force meter that transmitted the readings directly to the software via bluetooth. After mapping out the entire process, I designed a straightforward software guided approach that drastically reduced both the learning curve and time spent performing the calibration and eliminated any user error related to transcribing values from a spreadsheet back into the system.
This was a great introduction into the complexity of the hardware aspect of our product and working across domains. Critical to scaling up our ability to deliver units, we reduced the calibration time by around 87%.

Minutes spent calibrating each unit

120 → 15

SW enabled calibration process
prot_calibration_flow
Guided calibration experience
prot_calibration_01
prot_calibration_02
prot_calibration_03
prot_calibration_04
Sensor Orientation Wizard

Thematically related to the factory calibration initiative, I designed a customer-facing wizard to ensure unit orientation. Proteus needs to be oriented from time to time to ensure that it is correctly aware of the handle’s position in 3D space. This is critical to tracking and recording position data, which is foundational to deriving most performance metrics. Upon a hard reset, Proteus’ firmware “forgets” it’s orientation state, so it requires a manual triggering of each of the three sensors responsible for reporting the handle’s position.

We knew that not all customers bothered to follow our prompts to orient Proteus upon powering up, which resulted in anomalous readings. This in turn resulted in unnecessary customer support tickets putting a strain on that team’s resources.

Our solution was to mandate orientation by guiding users to complete the process efficiently while at the same time removing the option to skip steps by only advancing forward after triggering the required sensor. Our guided orientation feature created efficiencies for our Field Operations team through its ability to identify hardware issues such as a malfunctioning sensor and automatically generate support tickets on the customer’s behalf.

Orientation Wizard flow
prot_orient_flow
Orientation upon system boot
prot_orient_01
prot_orient_02

After enabling the Sensor Orientation Wizard for all eligible customer sites, we saw a nearly immediate decrease in sessions performed in an non-oriented state.

Percentage of sessions performed in a non-oriented state

22.3% → 6.5%

Damage mitigation in Freestyle Mode

As a product designed to be used by a broad spectrum of athletes, the hardware is fairly resilient but is still subject to regular wear and tear. If Proteus’ handle is forcefully moved to any extreme of its range of motion, damage can occur over time. This will ultimately result in incorrect position data readings or full loss along an axis of movement. It can be disruptive to our customer’s workflow or business and also costly for us to send a repair technician on site to address the issue.

We knew that the majority of sessions takes place in our sandbox-style Freestyle training mode. Therefor this mode was the best candidate to introduce a couple of updates aimed at reducing end-range impacts. To preemptively prevent this harmful behavior, I suggested that we needed to help position the athletes such that they were less likely to hit any of the end-stops. We built an interrupter modal that provided guidance on where to stand and only dismissed when it detected handle position in the acceptable distance window. While in usage, if our software detects the handle approaching within roughly 1.5” of an end-range at a speed greater than 1 m/s it will trigger a large message directing the users to move away from or toward Proteus to avoid hitting the end-stop. We accompanied this with an annoying noise and an overt visual cue showing where the potential damage was occurring, inspired by first-person shooter video games.

prot_freestyle_es_01
Get into the correct starting position
prot_freestyle_es_02
Hitting the base (left side) end-stop
prot_freestyle_es_03
Hitting the linear (away from Proteus) end-stop

We saw significant success from implementing these measures and anticipate this helping prolong the lifespan of hardware components and reducing maintenance costs over time.

Average occurrence of end-stop collisions per Freestyle session

22.5 → 2.5

© 2023 Will Gabrenya