Simplifying and Speeding Up Configuration of Weather Stations
Altoros helped a provider of measurement/control systems to simplify configuration of weather stations via mobile devices.
Summary
The customer turned to Altoros to build a mobile application for setting up and maintaining weather monitoring devices right in the field. As a result:
- Configuration of weather stations sold by the customer takes less time and can be performed via an iOS/Android mobile phone or a tablet.
- While syncing configuration changes in real time, the solution accelerated data transfer via the Bluetooth protocol by 4x.
- The Altoros team enabled the customer to shorten time to market, reduce costs, and focus on its core products.
The customer
Located in San Francisco, the customer produces devices and software for weather monitoring, fleet management, vehicle diagnostics, and marine/boating use. Hundreds of its products are utilized by meteorologists, farmers, boaters, educators, truck drivers, and industry professionals around the world.
The need
When installing the customer’s weather stations in the field, a technician needs to set up gateways, nodes, and sensors. The company wanted to develop a solution that would simplify the process of on-site installation, configuration, maintenance, and debugging of sensor systems via mobile devices.
The challenges
During the project, the team had to address the following challenges:
- Real-time data synchronization. Efficient data exchange between all modules was needed. The goal included displaying any configuration changes in real-time across all mobile devices connected to the stations.
- Speeding up Bluetooth connection. For sending configuration data wirelessly, the team relied on the Bluetooth Low Energy technology. At the same time, the speed of updating device firmware should not be a bottleneck for field installation. Therefore, customization of the protocol was required to accelerate the process as much as possible.
- Energy saving. As some of the customer’s weather stations are powered by solar cells, the maximum energy efficiency was critical. Although Bluetooth Low Energy reduced energy consumption, optimization of interaction between stations and mobile devices was still needed.
The solution
To enable real-time data synchronization, Altoros integrated Firebase—a backend-as-a-service solution—chosen by the customer. The platform supported the offline mode by queueing all configuration changes and uploading them immediately after reconnection. In addition, it enabled simultaneous access of several technicians, allowing them to make configuration changes from multiple devices.
The basic data exchange model using Bluetooth involves confirmations for each request—to make sure that information is recorded properly. Although this approach ensures data integrity, it slows down the process. The developers at Altoros performed a number of field tests, calculating the optimal time for sending requests that guaranteed successful “writes” without confirmation responses. In addition, the Altoros team combined requests in batches to reduce the number of data transfer requests. As a result, the speed of data exchange via Bluetooth was increased by 4x.
The engineers at Altoros built a custom framework on top of Bluetooth Low Energy to support a specific communication protocol adopted by customer’s devices. It made them work faster, saving both time and energy during data transfer.
The outcome
Partnership with Altoros enabled the customer to focus on the development of its key products, reducing time to market and cutting down on expenses.
Now, the company’s weather stations can be configured in a few simple steps via any iOS or Android mobile device. This improved customer adoption of the core products (i.e., weather stations), eliminating the need to use any specific handheld devices and reducing the time needed for field installation.
In addition, the mobile application developed by Altoros has enabled technicians to respond to any changes and malfunctions immediately.
After the app's successful launch in the US, the customer is planning the localization of the app for European and Asian markets.
Server platforms
Amazon S3, Jetty
Client platforms
Android, iOS
Programming languages
Java, Swift, Objective-C, JavaScript
Frameworks and tools
AFNeworking, Firebase, Core Bluetooth, Google SDK, Crashlytics, UI Automation, Robotium, Android Debug Bridge, Google Play Services, Core Location
Databases / ORM Frameworks
SQLite, Firebase, Core Data