The ConnectCore 95 system-on-module contains an ultra-low power ARM Cortex-M0+ (STM STM STM32U031) Microcontroller Assist chip.

Firmware update application

You can use the mca_fw_updater command line application to update the firmware that runs on the Micro Controller Assist (MCA) of the ConnectCore 95 SMARC SOM.

The flash memory of the MCA is divided into two regions: program flash and NVRAM. Before writing the new firmware, this application completely erases the contents of the program flash through the MCA bootloader. By default, the NVRAM is also erased.

The MCA firmware is a critical part of the system. If you are not sure of the origin of your new firmware image or the benefits of updating it, do not proceed.
The bootloader must restart the MCA to re-run the application stored in flash, and this involves restarting the complete system.

Check the latest MCA firmware version available

Your ConnectCore 95 SMARC SOM ships from factory with a pre-programmed firmware on the MCA. Digi, however, ships fixes and updates of the MCA firmware on the support web site.

Digi recommends you verify the current firmware version of the MCA and check for a more recent version on the Digi support site.

Go to the ConnectCore 95 product support page to check for the latest available MCA firmware version.

Check the current MCA firmware version

Verify the current MCA firmware on your ConnectCore 95 SMARC SOM by reading it on the U-Boot banner:

U-Boot SPL dub-2024.04-r5.2+g25c8faec2f83+p0 (May 27 2026 - 10:40:43 +0000)
SOC: 0xb0009500
LC: 0x40010
SYS Boot reason: por, origin: -1, errid: -1
SYS shutdown reason: por, origin: -1, errid: -1
DDRMIX is powered UP
Normal Boot
Trying to boot from MMC1
Primary set selected
Load image from MMC/SD 0xc9400
NOTICE:  BL31: v2.10.0  (release):lf-6.6.52-2.2.2-dirty
NOTICE:  BL31: Built : 09:57:54, Oct 17 2025


U-Boot dub-2024.04-r5.2+g25c8faec2f83+p0 (May 27 2026 - 10:40:43 +0000)

CPU:   i.MX95 rev2.0 at 1800MHz
CPU:   Extended Industrial temperature grade (-40C to 125C) at 28C
LM Boot reason: por, origin: -1, errid: -1
LM shutdown reason: por, origin: -1, errid: -1
DRAM:  1.8 GiB
Error: ele_read_common_fuse: ret -5, fuse_id 0x139, response 0xbc29
ahab read fuse failed -5, 0xbc29
Cannot read HWID
MCA:   HW_VER=1  FW_VER=0.09
cfg name not match mx95alt:ccimx95dvk, ignore
Core:  303 devices, 36 uclasses, devicetree: separate
MMC:   FSL_SDHC: 0, FSL_SDHC: 1
Loading Environment from MMC... OK
[*]-Video Link 0clk disp1pix already disabled
(1280 x 800)
        [0] display-controller@4b400000, video
        [1] channel@0, video_bridge
        [2] bridge@8, video_bridge
        [3] channel@0, display
        [4] lvds0_panel, panel
In:    serial
Out:   serial
Err:   serial
Model: Digi International ConnectCore 95 DVK
ConnectCore 95 SOM variant 0x03: 1.8 GiB LPDDR5, Wi-Fi, Bluetooth
ConnectCore 95 SMARC variant 0x03: Dual Ethernet, MCA
  Board version 2, ID undefined
Boot:  MMC0

BuildInfo:
  - SM firmware Build 733, Commit ecd89d0b, May 05 2026 00:00:18
  - ELE firmware version 2.0.3-5f1204b7

Error: ele_read_common_fuse: ret -5, fuse_id 0x139, response 0xbc29
ahab read fuse failed -5, 0xbc29
flash target is MMC:0
Net:   eth0: enetc-0 [PRIME], eth1: enetc-1
Fastboot: Normal
Normal Boot
Hit any key to stop autoboot:  0

=> 

On a running system, you can check the MCA firmware version by running the sysinfo command.

Command line options

MCA firmware update syntax
mca_fw_updater --help
Update the firmware of the MCA.

Copyright(c) Digi International Inc.

Version: 1.26

-f FILE, --file    Update firmware from binary FILE (Flash is fully erased).
-h, --help         Show this message.
-k, --keep-nvram   Do not erase NVRAM flash sectors during a firmware
                   update (default: erase).
-v, --version      Show current version of the tool.

The MCA firmware is a critical part of the system. If you are not sure
of the origin of your new firmware image, or the benefits of updating
it, do not proceed.
The update process takes around 20 seconds to complete.
Do not power off the device during this time.

Notes:

  • Option -f erases both program and NVRAM flash sectors before installing the new firmware. If this option is used together with -k, the NVRAM will not be erased.

  • Option -k alone is not valid; it performs no action.

Update MCA firmware

The firmware must be contained in a binary file, with read permissions for the user. When the program is invoked with option -f, it starts the update process:

MCA update process
# mca_fw_updater -f mca_cc95_smarc_vX.XX.bin
The update process may take 20 seconds or more
During this process the chip drivers become unresponsive and you may
see I2C communication error messages on the console.
These error messages are expected and don’t interfere with the
firmware update process.
DO NOT POWER OFF OR RESET the device.
DO NOT CTRL+C OR ABORT this operation.

The program sends a message to the MCA firmware with the byte sequence for calling the bootloader and then checks that the bootloader is running. Then it performs the selected operations (update firmware, erase NVRAM). The process may take longer than 20 seconds, and the console displays a spinning bar. During this time, the system must be kept powered to successfully complete the update. Once the new firmware is written, resetting the MCA takes five seconds. Note that during the MCA reset process, the program appears to perform no action. The i.MX95 CPU then reboots together with the MCA.

Do not abort the firmware update process. If the process is interrupted during the write phase, the MCA could be left in an inconsistent state. If the process fails you can retry manually, but success is not guaranteed. In this case, you can only recover the MCA by flashing the firmware with a debugger probe.

For more information about the mca_fw_updater application, see MCA management application.