Updating your Firmware


The Mobile I/O is a complex device with a complex DSP–based signal processing and control architecture. One of the major strengths of Mobile I/O’s design is that the operating system of the box can be upgraded at any time by updating the firmware. The firmware provides data to the hardware upon system boot that configures both fundamental aspects of the hardware and the operating system for the box. This data is stored in a memory device on the Mobile I/O motherboard. The data can be updated at any time, but it will be maintained indefinitely, even without any power being applied to the Mobile I/O.

Since the hardware itself can be reconfigured by the firmware, this approach allows Metric Halo to make major enhancements to Mobile I/O without any physical changes to the hardware. In the past we have used software deployed firmware updates to increase the FireWire access speed, provide independent heaphone channels, and improve the converter sound quality over its already exceptional character.

Since the firmware updates exist simply as data, they can be sent to you in a variety of ways, whether via CD, email or download from our website. The MIO Console Application provides a built-in tool to update firmware directly from the console. The following section describes how to use the built-in tool.

You may have had the experience of updating the firmware for your computer in the past. As you may know, this can be a stressful procedure, since there is a moment while the old firmware is being replaced by the new firmware, and if the process is interrupted you may be left with no firmware at all. Metric Halo has addressed this issue with a “safe firmware update” procedure. The Mobile I/O uses a dual-boot procedure. The first boot happens in the first 100ms (about 0.1 seconds) and has been extensively tested. It is smart enough to do two things:

  1. It can boot the secondary boot image
  2. It can update the secondary boot image over the FireWire bus

Actually, the primary boot firmware is much smarter than that. The box is completely functional on the primary boot, but all of the more advanced features of the box are enabled by the second boot. The firmware revision of the primary boot is 1.1.00.

As soon as the primary boot image has booted, it checks the secondary boot image, and if the secondary boot image is installed and not corrupted in any way, the system immediately boots the secondary image. If the secondary image is corrupted or if you have held down the front-panel Mute button during the initial boot process, the Mobile I/O will not boot the secondary image and will stay in “Safety Boot Mode”. This is a mechanism you can use if you install firmware that has problems and you need to back up or install a newer image.

The safe boot mechanism allows you to back out of a firmware update if you find that the new firmware has some problem that was not present in a previous version of the firmware. Metric Halo support may ask you to do this during troubleshooting if you encounter any problems.

In the future, Metric Halo may change the methods or tools used to find, download, and accomplish firmware updates. If the tools change, they will be accompanied by an updated version of this document.

Installing a firmware update

In order to install a firmware update, follow these steps:

  1. If there is an associated driver update, install the new driver:
    • Double click the driver installer package and use the Apple installer to update the MIO Driver package. This will require you to reboot your computer.
  2. Make sure your Mobile I/O is powered up and connected to your computer. It is strongly recommended that you turn off any amplifiers or powered speakers connected to the unit; it is possible that the MIO could produce noise during the firmware update that could damage your speakers.
  3. Run the MIO Console.
  4. Be sure that you don’t have any audio apps communicating with the MIO (don’t have any audio apps running during the Firmware update).
  5. Select “Update Firmware…” from the “Utilities” Menu. You will see the following dialog:
    2882.png
    Update Firmware Choose Dialog
  6. Select the new Firmware file to install on your Mobile I/O hardware, and click the Choose button. Firmware files will be supplied by Metric Halo with a name that contains the firmware version number in the following format:

    <firmware_version_number>.miofirmware

    Only valid firmware files will be selectable in the dialog box.

You will see this dialog:

Firmware Update Warning

Once you are sure that all attached speakers and headphones are turned off or disconnected, click the "Install" button.

The Console will find your Mobile I/O on the FireWire bus and begin sending commands to it. While the update is taking place, a progress window will displayed on the screen:

2882.png
Update Firmware Progress Window

When the firmware update has completed, the progress window will disappear. You may see this dialog:

Firmware Update Complete

If you see this message, you must follow these steps for the new firmware to be recognized:

  1. Disconnect the updated MIO from Firewire and all power sources for a minimum of 30 seconds.
  2. Reboot the MIO
  3. Reconnect the MIO to the computer

If you do not see this message, your interface has automatically rebooted and should report the new firmware version in the Console window's I/O tab.

If your interface does not appear to pass audio or MIO Console does not reconnect to your interface, you should try rebooting your Mac. (This may be required if some application is holding on to a reference to the MIO Driver and the driver is not unloaded by disconnecting the unit from the computer).

Information on troubleshooting firmware installation problems is available here.

Rolling back your firmware

If you find that you have problems with any given release, you can always go back to a previous release by downloading a package from

http://www.mhlabs.com/

and following the update instructions in that package. Please do not roll back the firmware to an earlier version than was originally supplied with your unit unless instructed to do so by Metric Halo.

Return to the index