Matter Protocol Integration for IoT Devices in Mobile App

NOVASOLUTIONS.TECHNOLOGY is engaged in the development, support and maintenance of iOS, Android, PWA mobile applications. We have extensive experience and expertise in publishing mobile applications in popular markets like Google Play, App Store, Amazon, AppGallery and others.
Development and support of all types of mobile applications:
Information and entertainment mobile applications
News apps, games, reference guides, online catalogs, weather apps, fitness and health apps, travel apps, educational apps, social networks and messengers, quizzes, blogs and podcasts, forums, aggregators
E-commerce mobile applications
Online stores, B2B apps, marketplaces, online exchanges, cashback services, exchanges, dropshipping platforms, loyalty programs, food and goods delivery, payment systems.
Business process management mobile applications
CRM systems, ERP systems, project management, sales team tools, financial management, production management, logistics and delivery management, HR management, data monitoring systems
Electronic services mobile applications
Classified ads platforms, online schools, online cinemas, electronic service platforms, cashback platforms, video hosting, thematic portals, online booking and scheduling platforms, online trading platforms

These are just some of the types of mobile applications we work with, and each of them may have its own specific features and functionality, tailored to the specific needs and goals of the client.

Showing 1 of 1 servicesAll 1735 services
Matter Protocol Integration for IoT Devices in Mobile App
Complex
from 1 week to 3 months
FAQ
Our competencies:
Development stages
Latest works
  • image_mobile-applications_feedme_467_0.webp
    Development of a mobile application for FEEDME
    756
  • image_mobile-applications_xoomer_471_0.webp
    Development of a mobile application for XOOMER
    624
  • image_mobile-applications_rhl_428_0.webp
    Development of a mobile application for RHL
    1052
  • image_mobile-applications_zippy_411_0.webp
    Development of a mobile application for ZIPPY
    947
  • image_mobile-applications_affhome_429_0.webp
    Development of a mobile application for Affhome
    862
  • image_mobile-applications_flavors_409_0.webp
    Development of a mobile application for the FLAVORS company
    445

Matter Protocol Integration for IoT Devices into Mobile App

Matter 1.x — not a replacement for Bluetooth or Wi-Fi, but unified application-level protocol over IP. Device can connect via Thread, Wi-Fi, or Ethernet — Matter works the same. Meaning for mobile developer simple: one SDK, devices from different manufacturers controlled via single API. But path from "one SDK" to working production code longer than it seems at start.

Zoo of Ecosystems and Single Standard

Before Matter each manufacturer made proprietary protocol. IKEA TRÅDFRI spoke CoAP/DTLS, Philips Hue — Zigbee + REST, Tuya — cloud MQTT with proprietary encryption. Integrating each required separate adapter. Matter solves this at standard level: Device Type Dictionary defines Clusters — atomic functionality units. Light bulb — OnOff Cluster + Level Control Cluster + Color Control Cluster. Thermostat — Thermostat Cluster. Lock — Door Lock Cluster.

Mobile app reads and writes cluster attributes, subscribes to events — knows nothing about hardware behind them.

iOS: Matter via HomeKit API

Apple implements Matter through HomeKit extension. Commission new device:

import HomeKit
import MatterSupport

// Launch commissioning via MatterAddDeviceRequest
let topology = MatterAddDeviceRequest.Topology(
    ecosystemName: "MyApp",
    homes: [MatterAddDeviceRequest.Topology.Home(displayName: "My home")]
)
let request = MatterAddDeviceRequest(topology: topology)

do {
    try await request.perform()
} catch {
    // MatterAddDeviceError.userCancelled, .alreadyOnNetwork etc.
}

After commissioning device available via HMHomeManager. Control specific cluster — via HMCharacteristic. But HomeKit abstracts Matter Clusters to its model, creating limitations: non-standard clusters (Vendor-specific) unavailable via HomeKit.

Full Matter API access on iOS requires entitlement com.apple.developer.matter.allow-setup-payload — request via Developer Portal.

Android: Matter via Google Home SDK

Google distributes Matter support via Play Services and Home SDK:

// build.gradle.kts
implementation("com.google.android.gms:play-services-home:16.0.0")

Commissioning:

val commissioningClient = HomeManager.getCommissioningClient(context)

val request = CommissioningRequest.builder()
    .setCommissioningService(ComponentName(context, MyCommissioningService::class.java))
    .build()

commissioningClient.commissionDevice(request)
    .addOnSuccessListener { result ->
        val deviceId = result.commissionedDeviceId
    }
    .addOnFailureListener { exception ->
        // CommissioningException with error code
    }

MyCommissioningService extends CommissioningService and receives onCommissioningRequested() callback — add device to own backend here.

Direct Control via Matter SDK

For cases needing direct cluster access without ecosystem wrapper, use Matter Open Source SDK via JNI or Kotlin wrappers:

// Read attribute from OnOff Cluster
val devicePtr = ChipDeviceController.openPairingWindowWithPin(deviceId, 300, 0, pinCode)
chipClient.getDeviceController().readAttributePath(
    object : ReportCallback {
        override fun onReport(nodeState: NodeState) {
            val onOffState = nodeState
                .getEndpoint(1)
                ?.getCluster(OnOffCluster.CLUSTER_ID)
                ?.getAttribute(OnOffCluster.ATTRIBUTE_ID_ON_OFF)
        }
    },
    devicePtr,
    listOf(AttributePath(endpointId = 1, clusterId = OnOffCluster.CLUSTER_ID,
                         attributeId = OnOffCluster.ATTRIBUTE_ID_ON_OFF))
)

Direct SDK harder, requires understanding Interaction Model (Read/Write/Subscribe/Invoke), but gives vendor-specific cluster access and works without Google Play Services dependency.

Fabric and Multi-admin

Important architecture detail: device can simultaneously belong to multiple Fabrics. Fabric — cryptographic domain with key pair. Google Home app, Apple Home app, and your app can control one device independently. Called Multi-admin.

For implementation, pass Open Commissioning Window (OCW) to device so second controller can commission into its Fabric:

// iOS: open commissioning window for additional controller
let accessory = homeManager.primaryHome?.accessories.first { $0.name == "Smart Lock" }
// Via HMAccessoryControl or direct Matter API

Critical for products wanting to work in ecosystems simultaneously.

Common Integration Mistakes

In practice most time lost on following:

  • Matter SDK versioning — Matter 1.0 and 1.3 incompatible at some cluster level. Fix SDK version in dependencies and test on specific device firmwares.
  • BLE Commissioning on Android — if phone lacks BLE connection with device at commissioning moment, Google Play Services requests permissions again and resets process.
  • Fabric conflicts — if device already in other Fabric, re-commissioning requires factory reset. Add UX check.

Work Estimate

Matter integration into existing mobile app with Matter-compatible devices for testing: iOS — 3-4 weeks, Android — 3-5 weeks, Flutter with native channels — 5-7 weeks. Development from scratch including device management architecture and state sync — from 2 months. Cost calculated individually after analyzing requirements and device lineup.