Matter Software Requirements

System Agnostic Software Requirements (Windows/Mac/Linux):

  1. SSH Client (PuTTY, Terminal, or similar):

    SSH client is used to communicate with the Raspberry Pi over a secure shell.

  2. Raspberry Pi Disk Imager

    Raspberry Pi Disk Imager is used to flash the SD Card that contains the operating system for the Raspberry Pi. Note that, for the Thread demo, the operating system is the demo image.

  3. Flash Tools

  4. Tera Term

    Tera Term is the terminal emulator for Microsoft Windows that supports serial port, telnet and SSH connections.

  5. Git Version Control [only required for building images and development]

    Clone the Silicon Labs Matter repo, then enter and sync all the necessary submodules with the following commands:

    $ git clone https://github.com/SiliconLabs/matter.git
    
    $ cd matter
    
    $ ./scripts/checkout_submodules.py --shallow --recursive --platform efr32
    
  6. If you are using an EFR32MG2x device you will require a bootloader to run the demo applications. When you flash your application image be sure to include a bootloader as well (if one is not already present). Bootloader images are provided on the Matter Artifacts page.

Windows-Specific Software Requirements:

  These requirements are in addition to those mentioned above, for Windows only.

  A Unix-like command line:

Mac-Specific Requirements (building own images):

  These requirements are in addition to those mentioned above for Mac OS users building their own images.

  1. Install Homebrew

    $ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
    
  2. Install pkg-config, openssl, git-lfs, python3

    $ brew install pkg-config openssl git-lfs python3
    
  3. Install ARM GNU Toolchain (https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads/12-2-rel1)

    Use the x86_64-arm-none-eabi package for Intel-based Macs and arm64-arm-none-eabi for M1/M2-based Macs.

  4. Add ARM GCC toolchain to the search path within bootstrap.sh by adding this line of code:

    $ export PATH="/Applications/ArmGNUToolchain/12.2.rel1/arm-none-eabi/bin:$PATH"
    

    Depending on your Mac processor, you will have to complete the following additional steps.

Apple Silicon (M1/M2) Software Requirements:

Users may also have to specify which pkg-config/openssl to use by adding these lines of code to bootstrap.sh:

$ export PATH="/opt/homebrew/opt/openssl@3/bin:$PATH"
$ export PKG_CONFIG_PATH="/opt/homebrew/opt/openssl@3/lib/pkgconfig"

Intel Software Requirements:

$ cd /usr/local/lib/pkgconfig
$ ln -s ../../Cellar/openssl@1.1/1.1.1g/lib/pkgconfig/* .

openssl@1.1/1.1.1g may need to be replaced with the actual version of OpenSSL installed by Brew.

If using MacPorts, the command

$ port install openssl

is sufficient to satisfy this dependency.

Linux Specific Requirements:

On Debian-based Linux distributions such as Ubuntu, these dependencies can be satisfied with the following:

$ sudo apt-get install git gcc g++ pkg-config libssl-dev libdbus-1-dev libglib2.0-dev libavahi-client-dev ninja-build python3-venv python3-dev python3-pip unzip libgirepository1.0-dev libcairo2-dev libreadline-dev

Wi-Fi Specific Requirements:

Software Packages Required for Wi-Fi EFR32 NCP Devices

  1. Gecko SDK package.

  2. WiseConnect SDK v2.x for RS9116 NCP.

  3. Wiseconnect SDK v3.x for SiWx917 NCP.

  4. Firmware for RS9116 NCP

  5. Firmware for SiWx917 NCP

Software Packages Required for Wi-Fi SiWx917 SoC Devices

  1. GeckoSDK package.

  2. WiSeConnect SDK v3.x.

  3. Firmware for SoC

Note: Before you run the demo or development on the Wi-Fi, please be sure that you update the NCP or SiWx917 firmware to the latest version.

Pre-Built firmware images are available in the following path of github repository:

  1. For RS9116 NCP images: under third_party/silabs/wiseconnect-wifi-bt-sdk/firmware

  2. For SiWx917 NCP & SoC images: under third_party/silabs/wifi-sdk/connectivity_firmware

  3. Setting up TeraTerm

  4. Updating the RS9116 or SiWx917 NCP Firmware

  5. Updating the SiWx917 SOC Firmware Using Simplicity Commander