BLE Reliability & Connectivity Engineering

BLE Reliability & Connectivity Engineering

You have a device and need a companion app. Or an app with a BLE problem your logs can't explain. Since 2017, we've integrated 20+ connected devices across e-mobility, fitness, and IoT, and learned that unresolved connectivity issues don't stay quiet. They end up in your app store reviews and undermine trust in your device.

Contact us

You Need a BLE Engineering Partner If...

1

You're launching a connected product

You have hardware and need a companion app, or your OEM app doesn’t have a premium feel. You need a mobile team that understands the device side, not just the UI layer.

2

You're experiencing BLE issues in the field

Users report dropped connections, slow pairing, or OTA update failures. The problem exists, but your engineers can't explain it. You need diagnosis before you can fix.

3

You're scaling to a new hardware generation

A new device model or firmware version needs to coexist with your current app and not disrupt existing users or split the codebase.

4

Your hardware vendor's documentation is incomplete or wrong

The protocol spec is missing commands, has incorrect byte order, or simply doesn't match what the firmware actually does. You need a development partner who can reverse-engineer the protocol and find out what's really happening.

BLE Technical Challenges We Solve

BLE issues rarely appear where you first expect them. The most challenging problems are often not in the mobile application code, but in device firmware or unreliable documentation. At times, reverse engineering is required just to determine why a device behaves differently than expected.

Sergei Shemshur Sergei Shemshur, React Native Developer @ Stormotion

BLE Security That Only Looks Secure

If your device pairs over BLE, there's a good chance anyone within radio range can connect and issue commands – without your app, without your credentials, and without triggering any error. We've found exploitable gaps in products that had already passed internal QA. We identify exactly where your access control breaks down and add application-level authentication on top so only authorised users can operate the device.

Pairing & Reconnection Instability

Pairing fails silently, returns the wrong error, or behaves differently depending on who initiates it. On Android we handle the bonding handshake directly; on iOS we design around CoreBluetooth's system-level flow. Either way, we make sure the user always knows what's happening and why.

Dropped Sessions & Inconsistent Data Transfer

Some device models send duplicate data bytes, shift values to wrong positions, or drop the connection under specific conditions. We collect enough real traffic samples to identify the pattern, then handle it in the mobile layer without waiting for a firmware fix.

Hard-to-Reproduce Field Issues

When a bug only appears in the field, we use an nRF52840 sniffer with Wireshark to capture raw radio packets. It helps us reveal advertising format errors, undocumented command sequences, and byte-order mismatches.

Undocumented or Incorrect Protocol

Vendor documentation is often incomplete, outdated, or simply wrong. We've found reversed byte order, missing command sequences, and protocol version drift by reverse-engineering the vendor's own reference app when the spec ran out.

Cross-Platform Inconsistencies

The same device can pair on iOS and fail silently on Android or vice versa. The root cause is almost always in the pairing layer, where each OS behaves fundamentally differently. We maintain separate platform-specific bonding logic behind a single interface.

High Battery Consumption

Aggressive BLE scanning is the biggest mobile-side drain. We select scan mode based on context – high-power only during active search, duty-cycled for background reconnection. We also replace polling with GATT notifications wherever the device supports it.

OTA Firmware Updates Failing or Timing Out

BLE throughput is low and device-side inactivity timers are unforgiving. A large firmware image chunked into small packets can easily exceed a 5-minute device timeout, especially when the transfer cadence is inconsistent. We rebuild OTA pipelines from scratch, cutting per-chunk latency from 120ms to 50ms and completing transfers that were previously impossible.

Our Recent Projects

E-scooter companion app

E-scooter companion app

EV & Mobility

IoT & Connectivity

Germany

Egret's app was struggling with OTA firmware updates timing out mid-transfer due to an unreliable BLE layer. We replaced it with custom native modules in Kotlin and Swift to cut transfer cadence from 120ms chunks to 50ms. Since the rebuild, we've integrated 7 scooter models, which required reverse engineering of undocumented protocols.

View case study
Marine battery management app

Marine battery management app

IoT & Connectivity

USA

The Norsk Guardian app connects to lithium-ion batteries. We integrated the BLE communication and built a reliable connection that can perform even under severe marine conditions. The app monitors voltage, temperature, current charge, and sends warnings before critical circumstances arise.

View case study
BLE-connected fitness app

BLE-connected fitness app

Fitness & Wellbeing

IoT & Connectivity

Germany

SportPlus manufactures connected fitness equipment and wanted to replace its OEM app with a branded one. We built a BLE-based app that connects to fitness hardware with 4 types of BLE protocols across various equipment models. To deal with this complexity, we designed a general protocol handler and introduced a CMS for customer workout content.

View case study

Need a dev-partner

Who gets things done?

Contact us

Testimonials

"Stormotion stood out because of their focus on Bluetooth-connected products. They weren't just app developers, they understood the unique challenges of building mobile app experience for hardware products. Their collaborative approach, technical expertise, and ability to quickly grasp the vision of the North Guardian app made it clear that they were the right fit."

"I had meetings with 30 different agencies and the team at Stormotion gave me the most confidence to go forward. With them you feel like you've got a kind, knowledgable & conscientious team behind you. So I was 100% sure that they're going to be able to deliver our project!"

"Stormotion has really delivered on their promises. They’ve been very transparent about their progress, flexible in reacting to changes, and solution-focused in overcoming challenges. If they didn’t know something, they would find out, which gave us great confidence in their ability to go the extra mile."

"We originally got in touch with Stormotion from our original app developer. And very soon we found real value in choosing Stormotion, because they previously had real valuable experience on the field – digital apps working in the realm of EV charging. So, it was really a no-brainer for us to to go with them."

"If you're thinking of going to Stormotion, you're going to have a very easy team to talk to, to communicate with, to understand what you want to do. They will tell you if you're barking up the wrong tree and are going to waste your time and money. I'd say "give it a go!" and I thoroughly recommend Stormotion."

"Trust Stormotion. Work with them on your road map, on your technical debt. Also, expect feedback because the team is eager to do this. It's what I value and, I think, many startups value."

"Given a tough budget and a lack of knowledge in our own engineering team, we quickly came to Stormotion. We had already worked together on previous projects, and I knew that, based on React Native, we could have one engineer responsible for it. That was just amazing because I could really focus on our customer side, knowing that the mobile application for the testers was in very good hands."

"I highly recommend Stormotion as a service provider for app development. They're young, flexible, dynamic, creative and very fast. The cost of planning and implementation is also reasonable. As they use "pay as you go", have a good plan first – then the result also will be satisfactory."

"The Stormotion team quickly became our team for everything Native app-related. It would be hard to name all the things that we built over the many years we worked together, but overall, I think we had a good partner who was able to adapt the way we worked, and the way they worked. So that we could ultimately build a product that had the quality that we wanted and with the speed that we wanted."

"Working with Stormotion was a blast! The Project Managers, and especially Alex, are always there for you when you need them to go the extra mile. And it's very easy to communicate with them. Whether it's something urgent or whether it's a bigger task, like building the structure of the architecture, I always felt like I was treated very well. Stormotion delivered a great app experience from day one."

Technologies

All

Native iOS

Native Android

Cross-platform React Native

Core Bluetooth

Android Bluetooth API

RxAndroidBle

react-native-ble-plx

react-native-ble-manager

Our Collaboration Models

Pre-Project

  • Discovery Stage

  • Planing

Agile Development

  • UX-Prototyping

  • Design

  • Development

  • QA & Testing

Transition

  • Maintenance

  • Handover

  • Next Iteration

You get full ownership of your BLE mobile layer from the first connection to production reliability.

And we take full technical responsibility for the mobile BLE integration from protocol audit and architecture to post-launch support.

Depending on your stage, our collaboration can include:

  • BLE protocol audit and architecture planning
  • Native or React Native BLE implementation
  • OTA firmware update pipeline
  • Hardware vendor coordination and feedback loop
  • Field diagnostics and post-launch support

Our Development Process

use arrows below to SHUFFLE THROUGH THE SLIDER

  • Discovery & Audit

    We review all available firmware documentation, GATT profiles, and any existing mobile code. We test the physical device: connect to it with nRF Connect, map its services and characteristics, verify advertising data, and flag discrepancies between the spec and observed behavior.

  • Architecture Design

    We define the BLE layer structure: connection lifecycle, pairing flow, characteristic access patterns, error handling. If there’s a need for multiple protocol versions support, we design the abstraction up front. We also decide at this stage whether native modules are required or whether a cross-platform library is suitable.

  • Prototype/PoC

    Before building into the full app, we validate the most uncertain parts – pairing, OTA, or a complex protocol flow – in a stripped-down test harness. This surfaces firmware bugs and protocol edge cases before they are buried inside production code.

  • Build & Integration

    Full implementation across Android and iOS. While we are working in React Native, native modules are developed in parallel with the UI layer. We communicate with the hardware vendor and translate any discovered firmware issues into precise defect reports.

  • Validation & Testing

    Integration testing against real hardware across multiple device units. We test connection, pairing, data flow, reconnection after drops, OTA update flow, and cross-platform parity. Field-replicating tests (multiple simultaneous Bluetooth devices, distance, interference) are run where the use case demands it.

  • Launch & Support

    Post-launch support includes field issue triage. We use BLE sniffing where mobile logs are insufficient and iterative addition of new device models or protocol versions as the product line grows.

FAQ

We built our app in React Native. Can you help without rewriting everything?

Yes. The most common approach is to keep the React Native UI and business logic intact, and replace only the BLE communication layer with native modules on Android and iOS. This is a targeted change that addresses the reliability and performance gap without a full rewrite.

What makes BLE harder than standard mobile API integration?

Three things. First, the protocol is defined by the hardware vendor and is often incomplete or incorrect. Second, the OS BLE stack behaves differently on Android vs iOS in ways that are not well-documented. Third, issues that don't appear in development often surface only on specific device models, firmware versions, or in RF environments with interference. Reliable BLE requires expertise across all three dimensions.

Our hardware vendor's documentation is poor. Can you still integrate their device?

Yes, this is a common situation. We reverse-engineer the vendor's own reference app using BLE packet sniffing (nRF52840 + Wireshark) and static analysis to recover the actual protocol. We then implement it correctly and produce corrected documentation for both sides of the team.

Do you work on the device firmware, or only the mobile app?

We work on the mobile side – iOS and Android. We don’t develop device firmware. But we can audit the firmware's BLE behaviour from the mobile side, identify issues, and communicate requirements back to your hardware vendor.

Our BLE connectivity works fine in testing, but breaks in the field. Can you diagnose this?

Yes. Field failures that don’t reproduce in controlled conditions are typically caused by RF interference in dense environments, advertising format edge cases with specific device models, or marginal timing in the connection or pairing sequence. We use hardware-level packet capture to observe exactly what is happening on the radio, which surfaces issues that mobile SDK logs will never show.

How do BLE reliability issues affect iOS and Android differently?

The key difference is in pairing. On Android, the app manages the bonding handshake directly, which gives us more control but also means we must explicitly handle all error codes. On iOS, CoreBluetooth manages pairing at the OS level.

We work within its constraints and design the connection flow to trigger the system prompt correctly. Data read/write operations are largely symmetric once the connection is established. Cross-platform differernces in production almost always trace back to the pairing layer.

Can you support OTA firmware updates over BLE?

Yes. OTA updates over BLE require careful implementation: chunk sizing, pacing, timeout awareness, and error recovery. We’ve diagnosed and rebuilt OTA pipelines that failed due to cross-platform timing differences and device-side inactivity timeouts. We implement OTA for both Android and iOS, and can advise on firmware-side requirements to make the transfer window reliable.

Message us

By sending this form I confirm that I have read and accept the Privacy Policy

Thank you

Your message has been sent.

Our manager will contact you as soon as possible. Have a nice day!

To Home Page

Contact

Contact E-Mail

hello@stormotion.io