Egret, a leading e-scooter manufacturer based in Hamburg, is known for its commitment to innovation and quality.
Rising demand for fuel-efficient vehicles, alongside growing concerns about greenhouse gas and carbon emissions, is expected to fuel the adoption of e-scooters. In 2024, the global market for electric scooters is expected to reach 97.18 billion dollars.
Year
2024
Country
Germany
Team
4 people
Commits
1454
Development
17 weeks
Challenge
Egret transitioned the app infrastructure from Native to React Native. However, they soon discovered problems with OTA updates that needed to be solved urgently.
The main challenge for our development team was to understand the reasons for OTA update delays. Users experienced up to five minutes of delay during OTA firmware updates, during which the scooter could potentially turn off, posing a significant inconvenience and safety concern.
Each model of e-scooter has a unique Bluetooth module, thanks to which the application can receive and process information about the device. The next challenge was to remove inconsistency and enable the application to communicate with all scooters via BLE.
Process
The Egret project workflow underwent key stages from Discovery to Release.
Egret’s primary focus was addressing the time delay encountered during OTA updates for users. Our proposed solution involved developing a native module integrating all Bluetooth functionalities.
During the Discovery stage, we explored two main options to tackle OTA update delays. The first option was to fix the issues within the existing React Native library, `react-native-ble-plx`. However, this option didn’t provide the control and efficiency required. The second option was to develop a custom native module that allowed for more direct and robust interaction with the scooter’s hardware.
Four members of the Stormotion team participated, including a Tech Lead, a Developer, and 2 Project Managers. It took approximately 17 weeks to solve the problem with OTA and ensure BLE connectivity for different e-scooter models.
Pre-Project - 1 Week
Agile Development - 15 Weeks
Release - 1 Week
Solution
The solution was a native module that integrated seamlessly with the existing app code, now rewritten in React Native. This module included all the necessary Bluetooth functionalities, significantly enhancing the communication speed between the app and the scooters.
For the OTA update problem, we also performed reverse engineering on the original protocol handler and the corresponding app to understand the underlying issues. By extracting parts of the protocol's code, we manually tested and identified the necessary fixes.
Our team encountered a similar challenge with different BLE protocols and knew how to solve it. We created a generic protocol handler, generating the necessary protocol configurations to remove inconsistencies and enable the application to communicate with all models of e-scooters via BLE.
Success for Egret from a:
PM Perspective
The unpredictable nature of IoT hardware and varying firmware versions posed significant challenges. Our team tackled these obstacles by promptly addressing discrepancies and finding solutions using their technical skills and knowledge.
Development Perspective
By bypassing the limitations of the third-party library, our development team integrated the native module, overcoming the technical challenges and improving the stability and reliability of the app.
DevOps Perspective
We improved deployment processes with faster rollout times for updates and new features, ensuring a more agile response to any issues encountered post-launch.
Overall Business / Roadmap Perspective
The new version of Egret app has significantly enhanced the user experience, leading to higher customer retention and increased sales of Egret scooters. Currently, the Android app has a rating of 4.1. That’s a good result, but we’re planning to improve user satisfaction in future updates.
testimonials
shuffle through the slider. drag or swipe.