Behind the Scenes: How We Improved Apple Watch Turn Signal Gestures

Hey everyone! I am Meixuan from the Software Team and it is my first time writing a blog post to explain about our product development process at Lumos. Let me try to keep it interesting and avoid getting too technical. 

When we first launched our Apple Watch gestures back in 2017, many people were very excited about it. It was a cool feature that Apple loved and the first of its kind. Whilst the reception of the feature was impressive, the reality was that it worked but wasn't always consistent. Thus, it was a bit of a hit or miss with our users. Positioning was used to detect turn signal gestures and so it had to be done exactly like how it was set up. That is quite a tall order when cycling since it is a dynamic activity after all.  

 

As Lumos grew bigger, so did the Software Team. We felt like we could do better with Apple Watch and so that's just what we did! Our developer was given this task and though he was a bit apprehensive about it as it involved a lot of physics concepts rather than pure coding, he dived head first into it with extreme enthusiasm and learnt about quartenions, angular momentum and CMattitude. Don't worry if you don't understand these terms as I too only acted like I did during our code review sessions. During those few weeks, our developer would also be flinging his hands around and talking to himself while reading the relevant articles and watching Youtube videos which was a little concerning. 
 
The first experiment built by him was to put it simply based on swing speed. One surprising flaw we discovered was that those wearing spectacles and those who had long hair would result in more errors than most. We realized it was because they'd be adjusting their glasses or brushing their hair away during a ride. 
Besides the new physics concepts, our developer was also inspired to experiment with Machine Learning models to improve its accuracy. When I say he got into it, he really got into it. We're very lucky to have him on our team. He looked into the various Machine Learning models such as Neural Network, Support Vector Machine and Random Forest. Again, terms that I just nod my head in agreement while listening to him ramble on. He would fall into his own world mid-conversation and then run off to his laptop to code when he had figured something out.

For the second experiment, we spent weeks experimenting with various models, going out to ride and recording each time whether a gesture was successful or unsuccessful to feed the models, then strenously testing these models. It then came time for real world testing - every developers nightmare and no longer were we in a safe, controlled environment, but had to go out and test it in actual real life conditions.

We realised we may have been a bit naive in thinking it was smooth sailing after perfecting it in the lab, but the real world brought us right back down to earth. We soon found that for the model to work effectively, we had to collect data for a variety of gestures to compare and not just the gestures related to Apple Watch. This made the amount of data required to have accurate turn signal gestures too much and also too difficult to obtain. It did feel like all hope was lost at the time. 

The breakthrough came when our developer thought of combining the two experiments together. He cracked the code by engineering the machine learning model in a way that filtered out the false positives recorded using our first experiment, allowing it to be much more focused and hence more accurate. In retrospect, it now seems like an obvious insight but at that point in time we were flustered with all the moving variables (pun intended).

We released our latest Apple Watch turn signal gestures in Beta and so far the response has been quite positive. There were a couple of user experience concerns that we ironed out along the way. We're pretty happy with the new upgraded feature and hope you'll like it too. We have now officially launched the Apple Watch turn signal gestures and you can try it now by downloading the Ride Lumos App on the Apple App Store.

Leave a comment

All comments are moderated before being published