Applications & Experience

Application engineering for the people who use connected products

Indeema provides IoT app development services for companies whose product is a connected device: the iOS, Android and web apps people use to set it up, see it, control it and administer it, designed and built together with the device and cloud they depend on. Our 230+ engineers have delivered 200+ connected-product projects; the three situations below show what we owned.

See what we take responsibility for

Where this layer gets hard

When does an IoT product need a dedicated app team?

  • The device works, and getting it onto a customer’s account is the hard part.

  • You have an app, and it no longer matches how the product is used.

  • Different people need different views and permissions on the same system.

  • Whoever holds the device has to update or configure it.

What Indeema takes responsibility for

What does IoT mobile app development include?

Six responsibilities, in the order a person meets them. Each ends at a seam.

  1. Set up

    Person → system

    Getting a device and a person onto the same account: pairing, provisioning and onboarding.

    Ends atApplication ↔ device

  2. See and control

    Both ways

    Showing what a device is doing, and letting people act on it: status, settings, schedules.

    Ends atApplication ↔ cloud

  3. Be informed

    System → person

    What reaches a person: dashboards, history, alerts and notifications.

    Ends atData ↔ decision

  4. Update and configure

    Person → system

    Letting the person holding the device, or an operator, update and configure it from the app.

    Ends atApplication ↔ firmware

  5. Administer and share

    Person → system

    Roles, permissions and accounts, and the admin tools a business runs the product with.

    Ends atApplication ↔ cloud identity

  6. Keep working

    Both ways

    Keeping an app current: modernizing it, and supporting new device and firmware versions.

    Ends atApplication ↔ operations

Device ↔ application: one contract, two owners

Embedded & Firmware owns

  • Behaviour on the device
  • The device side of the app protocol
  • Installing and recovering updates

Applications owns

  • Connection handling and permissions in the app
  • What the person sees when the connection is limited
  • Starting updates and configuration

Where responsibility ends

Where people meet the product

Which surface does your product need?

On a phone

IoT mobile app development starts with the link to the device. The route depends on what the app must do with it.

In a browser

Portals, dashboards and back-office tools for owners, installers and operators.

Designed for the job

Interfaces shaped by device state, the connection and where people are.

Scope of responsibility

How much of the application layer should Indeema own?

Scopes, not tiers. Application work can start at any of them, including modernizing an app that already exists.

  1. Discipline

    One application or one interface concern.

    • A companion app modernized, an onboarding flow, or one dashboard
  2. Layer

    All the human-facing applications of the product.

    • The mobile app, the web portal and the admin interface as one design
  3. Connected layers

    The applications designed together with the device protocol and the cloud API.

    • One device-to-app path, with firmware and cloud on their own pages
  4. Whole product

    The connected product as one scope.

    • Electronics, firmware, cloud and applications under one architecture
    IoT Product Engineering

Scope follows where the problem is, not the size of the engagement.

How Indeema engineers it

How does Indeema approach IoT app development?

If the approach is not yet decided, start with Product Discovery & Technical Strategy.

  1. Learn the people and the device

    Who uses it and where, and what the device really does.

  2. Design against real behaviour

    Flows shaped by how the device behaves, including setup and a limited connection.

  3. Build and integrate

    The app built and connected to the real device and service.

  4. Release and keep current

    Released, updated and maintained as devices and firmware change.

What this has looked like

Three situations, and what Indeema owned in each

  1. DisciplineModernizing an existing app

    A companion app for a battery system had a legacy codebase, and its interface no longer matched real use.

    Indeema owned
    A code review of the existing app, the user groups and how the product is used, refined user flows, checking the battery’s real behaviour against incomplete vendor documentation, and a new iOS and Android app built from scratch (Swift and Kotlin).
    What changed
    A new mobile app on a clean base, still maintained as the battery’s firmware evolves.
    Companion app for a battery system
  2. LayerSetting up and updating from the phone

    The controllers had limited, unstable connections, and their app needed easier setup and firmware updates.

    Indeema owned
    A Flutter app for iOS and Android with Bluetooth connection and setup, over-the-air firmware updates, device configuration and alerts, plus an admin interface for the business owner.
    What changed
    People could set up, configure and update the controllers from the app, and the business had an admin interface.
    Irrigation and lighting control app
  3. Connected layersSeeing and administering in a browser

    A solar energy manager needed one place to see, configure and update photovoltaic systems.

    Indeema owned
    A web application with a dashboard streaming consumption and production in real time, account types with different roles and permissions, and firmware updates started from the interface.
    What changed
    Energy use was seen and configured in one application, with access shaped by role.
    Solar energy management web application

Reading: How to create an IoT app · IoT mobile app ideas and a case study

FAQ

IoT app development questions

  1. What is IoT app development?

    IoT app development is building the mobile and web applications people use to set up, monitor and control a connected product. Unlike an ordinary app, it is designed together with the device protocol, the firmware and the cloud API, so it behaves predictably when the connection drops, the device is offline or the firmware changes.

  2. What types of communication protocols do you have experience in working with?

    In the connected products on our project pages, apps reach devices directly over Bluetooth Low Energy and Wi-Fi, and apps and devices reach the cloud over HTTPS, WebSockets and MQTT over TLS, all on top of TCP/IP. The protocol is chosen per product from the device’s radio, power budget and how fresh the data must be.

  3. How do you develop an IoT app?

    We start from what the app must do with the device and agree the contract between app, firmware and cloud. Then we design the flows, including pairing, offline and update states, build in short iterations with working builds, and test with the real device and firmware before release.

  4. How long does it take to develop an IoT mobile application?

    It depends on the scope: the number of platforms, how much device control the app needs, whether firmware and cloud are built at the same time, and how much already exists. After a short discovery we give a plan with milestones rather than a generic estimate.

  5. What is the average cost of IoT app development services in the current market?

    The cost is driven by the same factors as the timeline: platforms, device features, the state of the firmware and back end, testing on real hardware, and support after launch. We estimate after discovery, when those factors are known.

  6. Do you test the app together with the device?

    Yes. Pairing, reconnection, offline behavior and firmware updates are tested with the real device and firmware versions, across the phones the product supports, because emulators do not reproduce radio and power behavior.

  7. Why build the IoT app with the team that builds the device software and the cloud?

    Most problems users notice start at the boundary between app, firmware and cloud. When one engineering team owns those contracts, changes are agreed once and tested together, and your own team can focus on the product and the business.

Ways to work with Indeema

Start with the people who use it

  1. Engineering ownership

    Indeema is accountable for a defined scope of the application layer. You decide at agreed gates.

  2. Joint product team

    Indeema engineers work inside your team, against the contracts you share with firmware and cloud.

Also available: specialist team extension. A defined specialty joins a team you lead.

Bring us

  • The device, or the plan for it
  • The app or portal you have today, and where it falls short
  • The contracts with firmware and cloud
  • The part you want owned
Discuss your application scope

Where the boundary sits

Sector context: Energy · Agriculture