1032  Matter SDKs and Development Environment

1032.1 Matter SDKs and Development Environment

Time: ~10 min | Difficulty: Advanced | Unit: P08.C48.U02

NoteLearning Objectives

By the end of this section, you will be able to:

  • Identify and compare the major Matter SDK options
  • Choose the appropriate SDK based on transport, power, and cost requirements
  • Set up a complete Matter development environment
  • Understand the development workflow for Matter devices

1032.2 Prerequisites

Before diving into this chapter, you should be familiar with:

Building a Matter device requires three things:

  1. Hardware: A microcontroller or processor that can run Matter (ESP32, nRF52, etc.)
  2. SDK: Software libraries that handle all the Matter protocol complexity
  3. Certification: Testing to prove your device works with all Matter controllers

Analogy: Building a Matter device is like opening a restaurant: - Hardware = Your kitchen and equipment - SDK = Recipes and cooking techniques (Matter provides the recipes) - Certification = Health inspection (proves you follow standards)

The good news: Most of the hard work (encryption, networking, commissioning) is done by the SDK. You focus on what makes your device unique - the application logic.

1032.3 Matter SDK Landscape

1032.3.1 Official SDK Options

%%{init: {'theme': 'base', 'themeVariables': {'primaryColor': '#2C3E50', 'primaryTextColor': '#fff', 'primaryBorderColor': '#16A085', 'lineColor': '#E67E22', 'secondaryColor': '#16A085', 'tertiaryColor': '#7F8C8D'}}}%%
graph TB
    subgraph Official["Official/Reference SDKs"]
        CSA[connectedhomeip<br/>CSA Reference SDK]
    end

    subgraph SiliconVendors["Silicon Vendor SDKs"]
        ESP[ESP-Matter<br/>Espressif ESP32]
        Nordic[nRF Connect<br/>Nordic nRF52/53]
        NXP[NXP Matter<br/>NXP i.MX/K32W]
        SiliconLabs[Silicon Labs<br/>EFR32]
        TI[SimpleLink<br/>Texas Instruments]
        Telink[Telink Matter<br/>TLSR9 Series]
    end

    subgraph Platforms["Platform SDKs"]
        Apple[HomeKit ADK<br/>Apple integration]
        Google[Google Home<br/>Development tools]
        Amazon[Alexa Matter<br/>Integration SDK]
    end

    CSA --> ESP
    CSA --> Nordic
    CSA --> NXP
    CSA --> SiliconLabs
    CSA --> TI
    CSA --> Telink

    style CSA fill:#16A085,stroke:#2C3E50,color:#fff
    style ESP fill:#E67E22,stroke:#2C3E50,color:#fff
    style Nordic fill:#E67E22,stroke:#2C3E50,color:#fff
    style Apple fill:#2C3E50,stroke:#16A085,color:#fff

Figure 1032.1: Matter SDK Ecosystem: Reference SDK, Vendor SDKs, and Platform Integrations

{fig-alt=โ€œMatter SDK ecosystem showing three tiers: Official CSA Reference SDK (connectedhomeip) in teal at top, Silicon Vendor SDKs in orange (ESP-Matter, nRF Connect, NXP, Silicon Labs, SimpleLink, Telink) all derived from reference SDK, and Platform SDKs in navy (Apple HomeKit ADK, Google Home tools, Amazon Alexa integration). Arrows show reference SDK flowing to vendor implementations.โ€}

This matrix view helps you quickly identify the right SDK based on your primary constraints (transport, power, cost).

%%{init: {'theme': 'base', 'themeVariables': {'primaryColor': '#2C3E50', 'primaryTextColor': '#fff', 'primaryBorderColor': '#16A085', 'lineColor': '#E67E22', 'secondaryColor': '#16A085', 'tertiaryColor': '#7F8C8D'}}}%%
quadrantChart
    title Matter SDK Selection by Transport and Power Requirements
    x-axis Low Power --> High Power
    y-axis Wi-Fi Only --> Thread Only
    quadrant-1 Thread + Battery
    quadrant-2 Thread + Mains
    quadrant-3 Wi-Fi + Mains
    quadrant-4 Wi-Fi + Battery
    nRF Connect: [0.2, 0.85]
    Silicon Labs: [0.7, 0.8]
    ESP-Matter C6: [0.5, 0.5]
    NXP i.MX: [0.8, 0.3]
    ESP-Matter C3: [0.4, 0.2]

Quadrant Guide: - Thread + Battery (top-left): nRF Connect SDK for ultra-low-power sensors - Thread + Mains (top-right): Silicon Labs for powered Thread devices - Wi-Fi + Mains (bottom-right): NXP for high-performance gateways - Wi-Fi + Battery: ESP-Matter for cost-effective battery Wi-Fi (challenging use case)

1032.3.2 SDK Comparison

SDK Platform License Best For
connectedhomeip Linux, RTOS, embedded Apache 2.0 Reference, custom platforms
ESP-Matter ESP32 series Apache 2.0 Cost-effective Wi-Fi/Thread
nRF Connect SDK nRF52/53/91 Nordic license Low-power Thread devices
Silicon Labs SDK EFR32 series Proprietary Zigbee to Matter migration
NXP Matter i.MX, K32W BSD High-performance edge

1032.3.3 Choosing the Right SDK

%%{init: {'theme': 'base', 'themeVariables': {'primaryColor': '#2C3E50', 'primaryTextColor': '#fff', 'primaryBorderColor': '#16A085', 'lineColor': '#E67E22', 'secondaryColor': '#16A085', 'tertiaryColor': '#7F8C8D'}}}%%
flowchart TB
    Start[Choose SDK] --> Q1{Transport?}

    Q1 -->|Thread Only| Thread[Thread-optimized]
    Q1 -->|Wi-Fi Only| Wi-Fi[Wi-Fi-optimized]
    Q1 -->|Both| Both[Dual-transport]

    Thread --> Q2{Battery?}
    Q2 -->|Yes| Nordic[nRF Connect SDK<br/>Nordic nRF52840]
    Q2 -->|No| SiliconLabsSDK[Silicon Labs SDK<br/>EFR32MG24]

    Wi-Fi --> Q3{Cost Priority?}
    Q3 -->|Yes| ESP[ESP-Matter<br/>ESP32-C3/C6]
    Q3 -->|No| NXP[NXP Matter<br/>i.MX RT]

    Both --> Q4{Existing Ecosystem?}
    Q4 -->|Zigbee| SiLabs2[Silicon Labs<br/>Zigbee migration]
    Q4 -->|None| ESP2[ESP-Matter<br/>ESP32-C6]

    style Start fill:#16A085,stroke:#2C3E50,color:#fff
    style Nordic fill:#E67E22,stroke:#2C3E50,color:#fff
    style ESP fill:#E67E22,stroke:#2C3E50,color:#fff
    style NXP fill:#E67E22,stroke:#2C3E50,color:#fff
    style SiLabs2 fill:#E67E22,stroke:#2C3E50,color:#fff
    style ESP2 fill:#E67E22,stroke:#2C3E50,color:#fff

Figure 1032.2: Matter SDK Selection Decision Tree Based on Transport and Requirements

{fig-alt=โ€œSDK selection decision tree: Starting with transport choice (Thread/Wi-Fi/Both), Thread path branches on battery (nRF Connect for battery, Silicon Labs for mains), Wi-Fi path branches on cost (ESP-Matter for cost-sensitive, NXP for performance), Both path branches on existing ecosystem (Silicon Labs for Zigbee migration, ESP-Matter otherwise). Orange endpoints show recommended SDKs.โ€}

1032.4 Development Environment Setup

1032.4.1 Hardware Requirements

Minimum Development Setup:

Component Purpose Example
Development board Run Matter device ESP32-C6-DevKitC
USB cable Programming/debug USB-C
Thread Border Router Network connectivity Apple HomePod Mini
Controller device Testing iPhone/Android phone

Recommended Additions:

Component Purpose Example
Second dev board Controller testing Nordic nRF52840-DK
Sniffer Protocol debugging Nordic nRF52840 Dongle
Logic analyzer Signal debugging Saleae Logic 8

1032.4.2 Software Setup (ESP-Matter Example)

1. Install Prerequisites:

# Ubuntu/Debian
sudo apt-get install git wget flex bison gperf python3 python3-pip \
    python3-venv cmake ninja-build ccache libffi-dev libssl-dev \
    dfu-util libusb-1.0-0

# macOS
brew install cmake ninja dfu-util python3

2. Clone ESP-IDF and ESP-Matter:

# ESP-IDF (Espressif's IoT Development Framework)
mkdir -p ~/esp
cd ~/esp
git clone --recursive https://github.com/espressif/esp-idf.git
cd esp-idf
git checkout v5.1.2  # Check for latest compatible version
./install.sh esp32c6
source export.sh

# ESP-Matter
cd ~/esp
git clone --recursive https://github.com/espressif/esp-matter.git
cd esp-matter
./install.sh
source export.sh

3. Build and Flash Example:

cd ~/esp/esp-matter/examples/light
idf.py set-target esp32c6
idf.py build
idf.py -p /dev/ttyUSB0 flash monitor

1032.4.3 Development Workflow

%%{init: {'theme': 'base', 'themeVariables': {'primaryColor': '#2C3E50', 'primaryTextColor': '#fff', 'primaryBorderColor': '#16A085', 'lineColor': '#E67E22', 'secondaryColor': '#16A085', 'tertiaryColor': '#7F8C8D'}}}%%
graph LR
    Code[Write Code] --> Build[Build]
    Build --> Flash[Flash Device]
    Flash --> Commission[Commission]
    Commission --> Test[Test with App]
    Test --> Debug{Working?}
    Debug -->|No| Logs[Check Logs]
    Logs --> Code
    Debug -->|Yes| Iterate[Add Features]
    Iterate --> Code

    style Code fill:#16A085,stroke:#2C3E50,color:#fff
    style Build fill:#2C3E50,stroke:#16A085,color:#fff
    style Flash fill:#2C3E50,stroke:#16A085,color:#fff
    style Commission fill:#E67E22,stroke:#2C3E50,color:#fff
    style Test fill:#E67E22,stroke:#2C3E50,color:#fff
    style Debug fill:#7F8C8D,stroke:#2C3E50,color:#fff

Figure 1032.3: Matter Device Development Workflow: Build, Flash, Commission, Test Cycle

{fig-alt=โ€œDevelopment workflow cycle: Write Code in teal leads to Build, Flash Device, Commission in orange, Test with App in orange, then decision point Working? If no, Check Logs loops back to Write Code. If yes, Add Features loops back to Write Code. Shows iterative development process.โ€}

1032.5 Summary

TipKey Takeaways
  1. Choose SDK based on transport and power requirements - ESP-Matter for Wi-Fi/Thread dual-transport, nRF Connect for ultra-low-power battery devices, Silicon Labs for Zigbee migration

  2. Hardware selection drives SDK choice - ESP32-C6 for cost-effective dual-transport, nRF52840 for battery optimization, EFR32 for Zigbee ecosystem compatibility

  3. Development environment requires network infrastructure - Thread devices need a Border Router (HomePod Mini, Nest Hub, Echo 4th gen) in addition to the development board

  4. Iterative workflow is essential - Code, build, flash, commission, test, debug, repeat until the device works correctly with ecosystem apps

1032.6 Whatโ€™s Next

Continue to the next chapter to learn about implementing Matter device functionality: