Mobile I/O 3d Early Access Release 11

Download:

The direct download link for the software is:

 
3d Early Access - pb11
3d Early Access - pb11 (CDN)

3d Early Access Documentation

There a preliminary manual available for the 3d Hardware and Software; it has been updated for release 11:

3d Users Guide

The manual is also viewable from the MIConsole3d > Help > Open MIO Manual… menu command. This command checks for updated versions of the manual and will download it from the MH server for you if there is a new version available. If your local version is up-to-date, it will simply open the PDF for you. If you plan of accessing the manual offline, you should use this command to download it while you are online, so that it will be available offline.

Component Versions

The component versions in this release are:

Package Version: pb11 Updated
MIO Console Version: 6.0.0 [6451] Updated
Firmware Version: 6.0.160 Updated
Driver Version: 2.1.03 Updated

This document covers the changes since Release 10-138.

Release 11 of Metric Halo’s 3d software includes over 230 features, performance enhancements, and bug fixes; its a huge update. We strongly recommend everyone update to this version of the software and firmware.

New Plugins

We have made all the plugins from the Metric Halo Production Bundle available on the hardware; we are including these plugins for use on the hardware at no charge for 3d owners. The native versions of these plugins continue to be licensed separately, and are available for use in AU, VST and AAX hosts.

 

The plugins listed below are now available for instantiation on the hardware. This allows them to be used with zero latency during tracking, monitoring and live-mixing. It also makes them available for mixing recordings made with Session.

These plugins include the full feature set of the Production Bundle plugins, including things like the embedded SpectraFoo Real time Spectrum Analyzer. The 3d versions of the Production Bundle plugins share user presets with the Native Production Bundle plugins, so presets saved with the MH Preset system are usable in all versions of the plugins.

In addition we have added a number of new processors that are currently exclusive to the MIO3d platform:

And in collaboration with Make Believe Studios:

Boot States / Snapshots

This version of MIOConsole3d (and the associated firmware) provides support for saving Boot States and Snapshots to the hardware. The only difference between Boot States and Snapshots is that Boot States are automatically applied by the hardware when it is booting up; Snapshots must be recalled manually. The Boot State is just a Snapshot that is recalled automatically during boot. In the following, we refer to both Boot States and Snapshots as Snapshots.

When you save a snapshot to the hardware, everything required to restore the current running state of the hardware is gathered up and stored on the hardware. This includes:

When the Snapshot is recalled, the state of the running system is restored to state it was in when the snapshot was saved. This reflects the state of the entire MHLink domain.

The state of all the signal processing in the system is configured for the sample rate the system was running at when the Snapshot was saved. The Snapshot will recall the Sample Rate, if the boxes are on internal clock. Changing the sample rate (either from the front panel or via an external clock) will not update the coefficients for the DSP (unless MIOConsole3d is running and connected to the domain), so the sample rate cannot be changed with boot-states or Snapshots if there is any DSP processing that is sample rate dependent (e.g. EQ, Comp, Delay etc.); if the sample rate is changed, the incorrect coefficients from the snapshot’s sample rate will continue to be used.

In the case of a multibox system, this includes all the complex routing between the boxes. As a result, for a multibox system to recall properly, everything must be connected in exactly the same way it was when the Snapshot was saved (e.g. all boxes must be connected in the same order with the same ports used for the connections). If this rule is not followed, the recall will happen correctly, but the physical ports will not match the routing stored in the Snapshot, and the signals will not route properly.

When the system is powered up (or rebooted), the hardware will check to see if there is a valid boot-state snapshot stored on the box. If there is, it will be asserted onto the hardware, and then the last state of the hardware gain controls (that is stored separately) will be restored; this means that if you change gains on the unit when it is running stand-alone with a boot state, and then you power cycle it, it will come back the way it was before you turned it off.

The system sets a non-volatile flag when asserting a snapshot; the flag is cleared after the snapshot is fully asserted. If the system detects the flag during boot, that indicates that the Hardware crashed while asserting the boot state snapshot and the HW will skip the boot-state. The flag will get cleared if you save a new boot state or erase the boot state.

If you run into some problem with the boot state (or simply want to temporarily avoid loading it during boot), you can hold down the front panel Mute button (or the up-arrow button on the ULN-2/3d) while booting the box; if the Mute button is depressed during boot the HW will skip loading the boot state.

You can recall a snapshot from the ULN-8/LIO-8 front panel “Preset” page or from the ULN-2 up/down buttons.

In the case of the ULN-8/LIO-8 front panel, the recall will be broadcast to all other boxes in the domain, so you can recall an entire domain snapshot at once.

Snapshots and Boot states are intended for using the hardware without MIOConsole3d. They are appropriate for the following use cases:

While it is safe to launch MIOConsole3d or connect to a computer running MIOConsole3d, doing so will assert the console state onto the HW, replacing the running bootstate/snapshot (but not changing the state stored in non-volatile memory on the hardware).

Note: It is not (currently) safe to load a snapshot while MIOConsole3d is running and attached to a domain; doing so will replace the running state of the HW without MIOConsole3d being able to synchronize with the hardware; this will eventually cause the hardware to crash.

Please see the manual for more details.

Enhanced control over Record Monitoring modes

We have added support for User control over mixer input monitor mode and also added input monitor buttons to strips, to select manual input monitor mode.

 

The Mixer Mode preference controls the overall record monitor mode:

The Input Monitor Mode preference controls the record monitor mode when the mixer is in Session mode:

All the combinations are summarized in the table below:

 

Mackie Control Surface enhancements

We have improved some features of the Mackie Control Surface Support:

EQ GUI enhancements

These changes apply to all the plugins with EQ transfer functions:

 

Changes for GUI rendering engine

Since 10-138, we have developed some additional infrastructure changes the low-level User Interface code that greatly enhance performance (and correspondingly reduce CPU load), by working around time consuming operations in the OS graphics libraries. This version of MIOConsole3d includes a large number of GUI performance enhancements that are improve on the user experience on Big Sur (which introduced a number of performance regressions). Luckily, all the improvements also carry over to earlier macOS versions, so everyone should see substantially improved GUI performance and lower CPU load.

MIOConsole3d includes a number of different user-selectable GUI rendering engines. With the current version of the code, based on our current testing we belive that the optimal engine selection is as follows:

That being said, on Intel machines, especially older ones on older OSes, you may find that OpenGL performs better. It is best to try both engines and see which works better on your computer.

Changes for Big Sur (macOS 11) and newer

The MHLinkDriver is still a Kernel Extension as Apple has not replaced the Kernel Programming Interfaces required for MHLink with DriverKit interfaces. Updating the driver still requires User Consent, and will require a reboot.

After installing the driver:

  1. Open the Security & Privacy System Preferences.
  2. Authenticate to make changes.
  3. Allow the system to load your kext.
  4. Wait for the system to load the kext and rebuild the auxiliary kext collection.
  5. Reboot to load the new auxiliary kext collection.

Changes for Apple Silicon

This build of MIOConsole is Apple Silicon Native. It also includes the Apple Silicon Native version of the MHLink driver, and will automatically choose the correct version when installing the driver.

The software is at full-parity between Intel and Apple Silicon with the exception of one feature: EuCon support. EuCon support relies on Avid providing Apple Silicon EuCon support, which is not available yet. When running MIOConsole3d native on Apple Silicon, EuCon will not be available. If you run it in Rosetta (using the Intel slice) then EuCon is available. Check with Avid for EuCon compatibility on Big Sur.

On Apple Silicon (M1), you need to ensure that your Secure Boot settings are configured to allow third-party drivers. Big Sur will warn you of this if your Secure Boot settings do not allow third-party drivers, but the instructions may be confusing.

You need to reboot into recovery and set the Secure Boot mode to Reduced Security, and check the check box allowing “Kernel Extensions from Identified Developers”.

Apple’s instructions for this are:

  1. Reboot your Mac with Apple silicon into Recovery mode.
  2. Set the security level to Reduced security.
  3. Allow the loading of third-party kexts.
  4. Reboot back to macOS.

After the Secure Boot settings have been changed, you can install the driver, and follow these steps to authorize it being loaded:

  1. Open the Security & Privacy System Preferences.
  2. Authenticate to make changes.
  3. Allow the system to load your kext.
  4. Wait for the system to load the kext and rebuild the auxiliary kext collection.
  5. Reboot to load the new auxiliary kext collection.

Bug fixes

There are a lot of bug fixes and performance enhancements both big and small; they are listed below in the detailed release notes.

MIOConsole3d - New Features and Enhancements (since pb10-138)

MIOConsole3d - Performance Fixes (since pb10-138)

MIOConsole3d - Bug Fixes (since pb10-138)

Firmware Changes (since 6.0.118)