> For the complete documentation index, see [llms.txt](https://wiki.inels.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki.inels.com/inels-bus/inels-design-manager-idm3/idm3-firmware-update-manager.md).

# Firmware update

*Part 3 — Reference.*

`[☰]` → **Download Unit Firmware** · **Firmware update manager**

***

## 25.1 Why it matters

Every unit runs firmware, and iDM3 checks that yours is new enough for the features your project uses. Two things force an update:

* The connection state reads **`UpdateRequired`** and iDM3 says *"Please update CU firmware."*
* A feature you want needs newer firmware — **MQTT** and **Modbus-IP** are the common cases.

iDM3 ships with the firmware it needs. Around **170 firmware packages** live in `Advance/Firmwares\`, so you do not normally need to download anything.

***

## 25.2 The Firmware update manager

| Column                            | Meaning                                             |
| --------------------------------- | --------------------------------------------------- |
| **Unit name**                     | The unit                                            |
| **Unit address**                  | Its address                                         |
| **Config Last supported version** | The newest version this iDM3 configuration supports |
| **Firmware on PC**                | What is available locally                           |
| **Firmware from CU**              | What the unit is actually running                   |
| **Update**                        | Select this unit for updating                       |
| **State**                         | Progress                                            |
| **Progress**                      | Progress bar                                        |

States: **Update starting...**, **Update succes**, **Update failed**.

Additional information per unit: **HW revision**, **Boot revision**, **Fiwmware revision**, plus **more infomation...** and **Firm list**.

> Both **Fiwmware revision** and **more infomation...** are spelled that way on screen.

### Bulk updates

| Button                       | Updates                     |
| ---------------------------- | --------------------------- |
| **Update all visible units** | Everything currently listed |
| **Update visible units**     | The visible units           |
| **Update visible modules**   | The visible modules         |

"Visible" means what the current filter shows — filter first, then update, so you know exactly what you are about to change.

***

## 25.3 Doing it

1. Connect to the central unit and confirm the state is `Connected`.
2. Open the **Firmware update manager**.
3. Compare **Firmware from CU** against **Firmware on PC** for each unit.
4. Tick **Update** for the units you want.
5. Start, and watch **State** and **Progress**.
6. Confirm every unit reports **Update succes**.

> **All units to be updated must appear in the Device manager structure.** A unit that is not in your project cannot be updated.

> **Do not interrupt an update.** Losing power or the network mid-write can leave a unit needing recovery. Update when you can leave it alone.

***

## 25.4 Central unit firmware

The CU is updated the same way, but the stakes are higher — the whole installation is offline while it happens, and a failed CU update is a site visit.

|                                            |                                                      |
| ------------------------------------------ | ---------------------------------------------------- |
| **Back up the project first**              | `[☰]` → **Load from central unit**, then **Save as** |
| **Do it when the building can be offline** | Not on a winter evening with the heating running     |
| **Have a stable connection**               | Wired, not wireless                                  |
| **Do not interrupt it**                    | Ever                                                 |

***

## 25.5 Which version do I need?

Two files ship with iDM3, in `Advance/Documentation\`:

| File                                         | Contents                           |
| -------------------------------------------- | ---------------------------------- |
| **Recommended minimal firmware version.txt** | The minimum firmware per unit type |
| \**Firmware history\**                       | Per-unit change history            |

There is also `Advance/firmDepends.xml`, which records firmware dependencies.

**Check the recommended minimum before assuming an update is needed.** Newer is not automatically better on a working installation — update because you need something, not on principle.

Known minimums from the change log:

| Feature                  | Requires                                                        |
| ------------------------ | --------------------------------------------------------------- |
| MQTT                     | CU firmware `02.97.02` on CU3-07M / CU3-08M / CU3-09M           |
| Modbus-IP-Master / Slave | Firmware listed in the change log for CU3-07M, CU3-08M, CU3-10M |

***

## 25.6 The change log

`Advance/Documentation/Change log.txt` lists every revision — what was fixed, which firmware was added, and which units gained support. Read the entries between your current revision and the new one before updating.

It also points to `http://www.inels.com/idm3` for extended history.

***

## 25.7 Practical advice

|                                                 |                                                 |
| ----------------------------------------------- | ----------------------------------------------- |
| **Update only when you need to**                | On a working system, unnecessary change is risk |
| **Read the change log first**                   | Know what you are getting                       |
| **Download the project before updating the CU** | Your only rollback                              |
| **Filter, then bulk update**                    | Know exactly what you are changing              |
| **Confirm every unit reports success**          | A silent failure is worse than a loud one       |

***

**Next:** [Chapter 26 — Testing: Simulation and Monitor](/inels-bus/inels-design-manager-idm3/idm3-simulation-and-monitor.md).
