Table of Contents
Mixing Station
Welcome! This page contains all the documentation for Mixing Station. If you're missing something feel free to contribute to the documentation or contact me at david [at] dev-core.org
A single page print version is also available.
FAQ
Does this app work with my mixer?
Probably, take a look at the versions and features page.
How many app instances can I use?
This depends on your mixer. Some manufacturers / models have a hard limit how many clients can connect at a time. Best is to consult the manual of your mixer.
Will this app support mixer XYZ in the future?
Maybe. Adding support for a new mixer is a cost and time-consuming process. Due to lack of documentation for a lot of devices, a lot of time is required to fully understand the protocol used by certain mixers and implement it accordingly.
Because of that, either a good emulator or access to the actual hardware is required.
License activated too many times, what should I do?
Login to your mixing station account and deactivate old, unused devices. See manage activations for more details.
I changed devices, how to I restore my license?
The license restore process is described on the license page.
Note for Android users: If you migrated your license from the old app the only way to import it again is to import it
using your Mixing Station account. You won't be able to restore it using the Google Play
option.
I see no licenses in my account, what can I do?
Licenses are associated based on the email address provided during the purchase. On Google Play this is by default your gmail address, on purchases made via fastspring this is the email you've provided during checkout.
If this email is different from the email used in your Mixing Station account you can request a license move. To do that, please follow the "move license" section in the manual.
Is there a pdf version of this manual?
No, however you can open the print version of this page and save it as pdf in your browser.
I can't find the GEQ!
If you're using an XAir mixer make sure to change the EQ type to GEQ
, see screenshot.
In case the left sidebar is missing, press the top fullscreen
button.
My faders in the channel view disappeared!
You're very likely in fullscreen mode
which can be toggled via the top menu:
Versions and features
App versions
The app is available for three different platforms: iOS, Android and Desktop.
Since the app store policies are slightly different, each app has different versions on each platform. Click on the left menu items to open the page for your platform and see further details.
Licensing
For licensing information, please refer to the licensing page.
Compatible mixers
Please make sure your mixer has the latest compatible firmware.
Feature name | Mixers | Required firmware | Notes |
---|---|---|---|
XM32 | Behringer X32/M32(R) | V1.15 or newer | |
XAir | Behringer XAir or Midas MR | V1.12 or newer | |
HD96 | Midas HD96 series | V1.24.0 or newer | |
dLive | A&H dLive | V1.93 or newer | |
Avantis | A&H Avantis | V1.12 or newer | |
GLD | A&H GLD | V1.61 | |
iLive | A&H iLive | V1.94 | Secondary mixracks and surface routing are not supported |
SQ | A&H SQ | V1.4.1 or newer | |
Qu | A&H Qu | V1.90 or newer | |
CQ | A&H CQ | V1.1 or newer | |
Si | Soundcraft Si | V1.8 / V1.8 / V1-2 | See HiQNet guide / limitations |
Vi | Soundcraft Vi (view details) | Latest | See HiQNet guide / limitations |
Ui | Soundcraft Ui | Latest | |
Wing | Behringer Wing (Full, Compact, Rack) | Any | |
StudioLive III | PreSonus StudioLive Series 3 | V2.7.2 or newer | See SL3 |
DL | Mackie DL32S/DL16S/DL32R/DL1608 | MFV V5.2 (Mandolin 1.6) | |
DM | Yamaha DM3/DM3S | V1.10 or newer | See DM |
TF | Yamaha TF | V4.50 or newer | See TF |
See incompatible mixers for a list of mixers which will never be supported in mixing station.
Features
This page lists all the special features in the professional version.
Feature | Pro | Free | Model | Platform |
---|---|---|---|---|
Channel parameters | X | X | Any | Any |
FX access | X | X | Any | Any |
FX Presets | X | Any | Any | |
Routing | X | X | Any | Any |
Layers | X | X | Any | Any |
Fixed layer mix | X | Any | Any | |
Unlimited DCA | X | X | Any | Any |
MCAs | X | X | Any | Any |
Channel/DCA Spill | X | Any | Any | |
App-Link | X | X | Any | Any |
Gain/trim on fader | X | Any | Any | |
RTA | X | X | Any* | Any |
Channel links | X | X | Any | Any |
Channel quick-gang | X | X | Any | Any |
Different color schemes | X | Any | Any | |
Configurable peak hold an decay time | X | Any | Any | |
Gain reduction timeline | X | Any | Any | |
Custom channel strip | X | Any | Any | |
Meterbridge | X | Any | Any | |
Cross mixer channel presets | X | Any | Any | |
Personal mix presets | X | Any | Any | |
Supports development | X | Any | Any | |
Re-Gain | X | Any | Any | |
Custom layouts | X | Any | Any | |
Mix copy | X | Any | Any | |
Midi device support | X | Any | Any | |
Channel move | X | XM32 | Any | |
Dashboard view | X | Any | Any | |
Automatic ringing out | X | Any* | Any | |
Password protection | X | X | XM32/XAir/Qu | Any |
* Mixer must have RTA functionality
Platforms ↵
Android
Requirements
- Android >= 5.0
- Chromebooks are not supported (but still might work)
- Some android emulators might work
Settings location
The app stores all settings in the internal storage of the device.
You can access all setting files at Internal/Android/data/org.devcore.mixingstation/files/MixingStation
Desktop
Requirements
- Operating system:
- Windows 11 (x64) (Windows 10 x64 will still work but not recommended)
- macOS 10.15 or later
- Linux (arm64, x64) support for GL ES3.0 (openGL)
- Screen: Any screen works
Please make sure the app is working in offline mode before purchasing any licenses!
Touchscreen
Multitouch is supported on Windows 10/11 as well as macOS.
For macOS, you need the TouchBase driver 7.1.108
or newer and the following configuration:
Settings locations
All settings and license files are stored in one folder
OS | Location |
---|---|
Windows | %USERPROFILE%/MixingStation |
macOS | %HOME%/MixingStation |
Linux | $XDG_CONFIG_HOME/MixingStation $HOME/.config/MixingStation $HOME/.MixingStation $HOME/MixingStation |
Licensing
After purchasing a license you will receive a download link to a license file. Make sure to keep a backup of your license files in case of data loss!
You can import the license into the app via the license page:
Either select Mixing Station account
or from file
Then select your license file
Scaling
Mixing Station tries to honor the scaling option of the OS. If for whatever reason the UI is too large to too small you can manually adjust the scaling in the global app settings. See settings for more details
Keyboard shortcuts
This section is work in progress.
Key | Function | View |
---|---|---|
Left | Previous channel | Channel view |
Right | Next channel | Channel view |
Up | Previous layer | Mixer |
Down | Next layer | Mixer |
Program arguments
You can provide the following additional command-line arguments to Mixing Station.
Parameter | Description | Purpose |
---|---|---|
-appSeries |
Which mixer series to use. Same value as the button text in the app | Auto connect |
-ip |
IP address of the mixer. Remove if you want to start the search instead. | Auto connect |
-mixTarget |
Target mix for the access restrictions. See table below | Auto connect |
-web |
Port of the webserver (disabled by default) | API |
-osc |
Port of the OSC server (disabled by default) | API |
Example
mixing-station.exe "-appSeries=X AIR" -ip=192.168.1.1 -mixTarget=-1
Mix Targets
Value | Target |
---|---|
-1 |
No restrictions |
0 |
Bus 1 / Mix 1 |
1 |
Bus 2 / Mix 2 |
... | ... |
Known issues
- Intel HD Graphics 620, Driver 26.20.100.6859 - please downgrade to 22.20.16.4836
Raspberry PI
Mixing Station can be used on Raspberry PI 4.
Requirements
- arm64 OS (tested with Ubuntu 21.10, but raspios arm64 should also work)
- Java 11 or newer
Installation
-
Install java:
apt install openjdk-11-jre
-
Download Mixing Station. In this case I'm installing it to
~/ms
.mkdir ms cd ms wget https://mixingstation.app/backend/api/web/download/update/mixing-station-pc/release unzip release rm release
-
Start the app
java -DlegacyShaders=true -jar mixing-station-desktop.jar
iOS
For iOS, only one app is distributed. This app can control all mixers and is only available as a "pro" version. You can use all features of the app in the offline mode for free. As soon as you want to connect to a mixer you must buy the app for that mixer model.
Requirements
- iOS >= 11
- iPhone, iPad
URL Scheme
The URL scheme of the app is mixingstation
. This name can be used for other apps such as BandHelper
in order to open
Mixing Station.
MDM
For mass license or MDM managed devices, please contact support and include your Apple Business/School manager Name and ID.
Also make sure to enable Custom Apps
in Apple School Manager Organisation Settings!
Ended: Platforms
Getting started ↵
Getting started
See features for compatible mixers.
Offline mode
The offline mode provides access to nearly all app features without needing to connect to a mixer. However, some features that will not work in offline mode include the following:
- Channel link
- Mutegroups / DCA hardmute
- Presets (if stored on the mixer)
Network setup
Please consult the manual of the mixer manufacturer on how to setup your network. Here is a basic sample configuration:
Device | IP | Subnet mask | Misc |
---|---|---|---|
WiFi AP | 192.168.1.1 | 255.255.255.0 | DHCP enabled - Range 192.168.1.20-255 |
Console | 192.168.1.10 | 255.255.255.0 | - |
Android | Assigned by DHCP | - | - |
For Soundcraft mixers also take a look at the HiQNet guide
iOS privacy settings
Starting with iOS 14 you need to explicitly allow the app to communicate with your local network.
iOS asks for your permission once you try to connect to a mixer for the first time.
You can check the settings in iOS: Settings > Privacy > Local Network
First launch
When opening the app you'll see the launcher view as shown below.
You can select the mixer model you want to use in this view. This will open the Quick-Connect dialog (see below)
Quick-Connect
Once you've selected the mixer series you want to work with, you'll see the following view.
This view allows you to configure where and how you want to connect to the mixer.
Permissions
The permissions
button allows you to restrict access to certain mix buses.
The user will not be able to change any mix other than the ones selected. This is ideal for personal monitor mixing or
dedicated monitor engineers.
It is also possible to limit the access to multiple mixes.
Mixer IP / Hostname
This field is used to enter the console IP address or hostname. It's only used in conjunction with Connect
button.
Mixer history
If you've already connected to a mixer in the past you'll see the history view instead:
In this view you see up to 10 recently used mixers. Each entry stores the mixer series, connection details such as IP address and the permissions.
Favorites
You can pin connections by pressing the star
or mixer icon
:
Pinned entries will always appear at the top of the list
and won't get removed over time.
Editing entries
You can edit an entry by long-pressing (or right-clicking
) the entry.
This will open the edit view.
In this view you can:
- Set a name for the entry
- Change the permission settings
- Set the IP/Hostname that should be used for connect
- Configure if you want to connect to a fixed ip address or search for the mixer every time
UI Controls
This page describes the most common UI controls and how to use them.
Note that if you are using a mouse, right click - in the following instructions - is equivalent to press and hold .
Buttons
On | Off |
---|---|
Long click
Buttons with an indicator (...
) in the top right have a long-click action.
You can press and hold or right-click the button.
Knobs
Default behaviour
- Drag to change the value
- Press and hold to open a popup for more precise control
- Double tap to reset the value to the default
This behaviour can be configured in the app settings.
Dragging
Knob values can be increased by dragging them up or to the right. When dragging to the top right, the values will increase more rapidly. To decrease the value just use the opposite direction as shown in the image below.
Faders
Drag the fader knob to change the value. If fine mode is enabled you can start dragging the fader from any position and the movements will be more precise.
Additionally, you can tap the areas highlighted in red above to nudge the fader by 0.25db increments.
- GEQ: Double tap to reset the value
Sliders
The behaviour of the sliders can be configured in the app settings. Default behaviour:
- Double tap to reset the value to the default
- Drag to change the value
Sliders are used in some FX views and in the knob popup described above. The white line indicates the default value for this parameter.
Text input
Dark buttons indicate a text input. Some fields may allow multiline text input. In iOS you can use the $
character to
indicate a line break.
Channel buttons
The behaviour of these button can be configured in app settings. Default behaviour is as follows:
- Tap Open channel details
- Press and hold Open scribble strip
Mixer sidebar
Contains two scrollable bars for layers and access to sends on faders
Fine mode
When enabled faders will be more less sensitive and you can make smaller adjustments.
Mute enable
Enables/disables every channel mute button in the app.
Layer buttons
Each button provides access to a single layer
- Tap Select layer
- Press and hold Edit this layer
Desktop only
- Press and hold Allows you to open the layer in a separate window.
Menu bar
The top menu provides access to other views and options. The exact items depend on the current platform and view.
Status
The current view and additional information are display on the left.
Menu items
The menu items are shown in a fixed order. If there are too many items, some will be hidden and accessible using
the ...
item.
Quick access
Mute groups
You can always open the mute groups from any view by double tapping with two fingers anywhere on the screen.
Clear solo
Press and hold the solo button to clear all solo. The button can be enabled in the channel strip via the app settings.
Sends on faders
Sends on faders allows you to quickly access all sends to a certain mix. When enabled, all faders will show the level sent to the selected bus instead of the LR mix.
It is also possible to show the channel gains on the faders.
There are two possible UI modes available:
SoF list enabled (default) | SoF list disabled |
---|---|
Bus master
The bus master is the master channel of the currently selected mix. If sends on fader is disabled this will correspond to the LR mix, otherwise to the selected target mix.
SoF list
This is the default UI mode. Here each mix is represented by a button. Pressing that button will enable sends on fader mode.
SoF list disabled
In this UI mode all mixes are hidden behind a context menu button. If you press this button you can select the mix.
Additionaly you have to press the Snd-Fader
button to enable sends on fader.
Gain on faders
At the very end of the sends on fader selection is a Gain
item. When selected the fader knobs will turn red
and show the current gain of the channel.
Configuration
It's possible to change the order of the items in the list, as well as remove any unused items, see layer setup for more details.
Settings ↵
Settings
This page explains how the app stores its settings.
There are 3 different settings categories described in the following diagram:
The settings are recalled by the following logic:
Click one of the following links to find out more about the different settings types:
Backup / Restore
To create a backup of all settings, select the gear icon
after starting the app, and
select Backup / Restore
.
You can back up all your data to a local file, or your Mixing Station account.
Export / Import settings
See user settings
Global settings
There are two places for configuring global settings:
- The
Global settings
view allows you to change generic settings such as UI scale, scroll behaviour or network interfaces - The
App settings
view allows you to change settings related to the mixing UI
Global settings
Open settings
The app settings can be opened via the menu from the start view
(directly after opening the app)
Menu -> Gear icon
Update branch
Desktop version only
Configures which branch to use when checking for updates.
Close confirmation
Desktop version only
When enabled, the app will ask the user for confirmation before closing
Font
Defines which font should be used. Depending on the language that you're using you may need to change fonts in order for the characters to be correctly displayed.
Scale
Changes the UI scale of the app.
Scroll mode
Allows you to invert the mouse / touchpad scroll direction or disable it entirely.
Access bus processing
When enabled, a user with restricted access to a single bus is allowed to access the processing of that bus.
Autostart
Autostart allows you to configure which mixer the app should connect to when starting. This is useful for installation purposes where the app should always connect to a mixer without user interaction.
API
Only available on Desktop platform. Enables API access for Mixing Station.
Auto reconnect
When enabled, the app automatically reconnects to the mixer in the case of a connection error.
Network
On the top right you can access the network interface settings. These settings are for advanced network configurations.
User / Session settings
This page provides access to all session and user settings
Open settings
The app settings can be opened via the menu from the mixer view
Menu -> Setup -> App
App tab
The first tab contains all app settings. The different setting categories are displayed to the left.
Press ?
for more details. Some special settings are explained here in more detail.
The channel strip tab is explained on its dedicated page.
Setup wizard
Restarts the setup wizard that is shown the first time the app is opened.
Orientation lock
If supported by the platform, you can lock the orientation of the device. If not available please use the OS mechanism for locking the screen orientation.
Autosave
When enabled, this feature automatically saves all User Settings under the name default
.
USB Midi
Enables the USB midi stack. This should only be enabled if you're using this functionality as it consumes more power.
Windows
Desktop only
These settings allow you to configure the multi window behaviour of the app.
Mixer category
These settings are related to the mixer and channel views.
Global knobs / sliders
This section configures how the knobs and sliders behave. The settings apply to all knobs in the app except sliders in a
channel strip, which are configured in the Channel Strip
tab.
DCA Spill
Enables a Midas Pro style popgroup functionality. When tapping on a channel button of a DCA/IDCA group, the assigned channels will be shown in the mixer instead of opening the DCA/group. To edit an DCA/IDCA while popgroup mode is enabled, press and hold the channel button.
When selecting an IDCA in popgroup mode, the displayed channels do not follow the currently selected sends on fader selection. Instead the assigned target mix of the IDCA is used.
Follow Layers
When enabled, the <-
and ->
buttons in the channel view follow the current layer instead of the default channel
order.
Example
With the option enabled, suppose your current layer configuration is as follows:
Band
Ch 1
Ch 2
Ch 3
Ch 5
Vocal
Ch 11
Ch 13
Ch 14
If you open Ch 5
and press ->
, will move to Ch 11
instead of Ch 6
.
FX Popup
When enabled, shows tap delay buttons in the mutegroup popup.
SoF list
When enabled, shows a "sends on fader" list instead of the dropdown menu.
RTA Follow
When enabled, the app will always change the RTA source to the currently open channel. Depending on the mixer this means that the app will change the PAFL selection.
Metering category
This section is used to configure signal metering and RTA.
Meterbridge
Shows a meterbridge on top of the mixer. The number of meters per group follows your visible channels
layer
configuration.
Peak hold
Defines how long the peak indicator should be shown before resetting.
Decay
Defines how fast the meter should decay (fall down).
GR level plot
Enables a history plot of the dynamics input and gain reduction signal.
Tap points
Depending on the mixer you can change the signal tap points that should be used for the meters. If your mixer doesn't support this feature it will not be shown in the app.
App-Link category
See app-link
User Settings
The user settings store the following items:
When Autosave
is enabled those settings are stored
automatically as an entry called default
.
Manage settings
The user settings view can be opened via the menu from the mixer view
Menu -> Setup (gear icon) -> Folder icon
From here you can manually save/load and export the user settings.
Use the scope buttons to select which settings should be saved or loaded.
Export / Import settings
There are two ways to share User settings
settings as follows:
- Via the
Community
share feature (requires a Mixing Station account) - Via the operating system
Using the Community feature
Upload
- Open the context menu for a setting entry.
- Select
Upload
You might be prompted to log in with your Mixing Station account. If your browser is too old (e.g. iOS 9), you can also open to this url from any other browser: https://mixingstation.app/community/msSettings/stash - A browser will open (you might need to log in again) and you can enter additional meta data.
- Once saved, the setting is stored online and can be accessed from any device using your account. If you enabled public sharing, other users can also download your settings.
Download
- Press the
Community
button in the app to view your settings and all settings you have bookmarked from other users.
Share settings via the operating system
- Open the context menu and select
OS share
.
Depending on the platform, multiple share options are available. For importing, you can use the arrow menu button or select the file you want to import in a file explorer and open it with Mixing Station.
Ended: Settings
Layers
This page describes the Layer and Sends on Fader configuration.
What is a layer?
A layer defines what channels should be shown in the mixer. You can create an unlimited number of layers and each layer can contain up to 32 channels.
Layer settings
This view lets you configure all layers as well as change the sends on fader configuration.
Open from the mixer view:
Menu -> Setup (gear icon) -> Layers
Channels per layer
Selects the number of channels that should be shown in the mixer. This also defines the width of the channel strip shown in the mixer. The more channels you show, the smaller each channel becomes.
When you change this number the app can automatically resize each layer to contain the selected number of channels. It will automatically take different channel types into account so you always end up with a logical layer setup.
Auto
If you select Auto
instead of a number, the app will always show all channels assigned to a layer. If required the
channel strips will be resized so they fit on the screen.
Layer list
The list in the bottom of the screenshot shows all layers.
- Drag left bars Reorder the layer item
- Press and hold item Opens a context menu for editing / deleting
Add new layer
Press the +
menu item to append a new layer to the bottom of the list.
Reset
Press the back arrow in the top right to reset all layers according to the current Channels per layer
setting.
Editing a layer
Press and hold a layer button from the mixer view or select Edit
from the context menu to edit a layer.
The Layer Setup
view displays all assigned channels at the bottom. You can drag them to change the order of the
channels.
Use the menu's +
button to add IDCAs or blank items.
Target Mix
The Target Mix
option allows you to select which mix of a channel you want to add to the layer.
This is useful if you want, for example, to be able to change an FX send for your main vocals without using sends on faders.
By default, the Any
option is selected. Any
causes the channel to follow the currently selected sends on fader mix (
default app behaviour). Any other selection causes all channels added in that mode to be fixed to the selected mix.
In the following example I'm adding 3x Ch 1
but with different target mixes. As you can see in the mixer view, each
fader now controls the send level to the selected mix.
Sends on Fader
On the right side you can select which mixes should be shown in the sends on fader list of the app. It is also possible to change the order of the items.
You can reset the configuration to the default using the top menu.
Channel strip settings
These settings are related to the channel strips in the mixer and belong to the user settings (i.e., they apply to all mixers).
For more advanced configuration options take a look at the custom layouts page.
Channel strip items
On the left side of the view you can change the size and position of the channel strip UI elements. Drag directly on an item to resize it. Drag on the left side of an item to change its position.
Fader
This section configures the fader.
Show groups
: When enabled, all assigned DCA and Mutegroups will be shown on the right of the fader.Fader touch
: Defines what should happen if the fader is touched.Double tap
: Defines what should happen if the fader is double tapped.
Sliders
This section configures all sliders inside a channel strip (i.e., in the mixer and any other channel strip). You can configure the sensitivity of the sliders, and what should happen if they get clicked.
Behaviour
This section configures the behaviour of the channel strip.
Highlight channel
: If enabled, the currently selected channel is highlighted.Fine fader ratio
: Changes the sensitivity of the fader when fine mode is enabled.Channel click
: Changes the behaviour when taping a channel button.Channel long click
: Changes the behaviour when long pressing a channel button.Sends click
: Defines what happens when a sends slider inside the channel strip is clicked.Sends readonly
: If enabled, the sends sliders inside the channel strip are read-only (to prevent accidental changes).
Ended: Getting started
Features ↵
Actions
Actions are used to assign a parameter or app function to a custom ui element or midi controller.
Action settings
When editing an action, you'll see the following view
This view can be separated into two section: The top section is equal across all actions and configures which action should be used, and how it should behave while the bottom section contains the action specific settings.
Active
Defines if this action is currently active. This is useful if you want to have a single midi button/knob to control
different things. Disabling an action means it won't do anything anymore. It's usually used in conjunction with
the Midi actions
(see below).
Invert
When enabled, the values of the action will be inverted. This might be useful if you want an on
instead of mute
button.
Feedback mode
This is only available for actions which refer to on/off values. If defines under which conditions the action should notify the UI element/Midi controller about value changes. Changing this value might only be required for very specific use cases.
Action types
Depending on the current mixer model, more or less action types are available.
The following describes all Action types available.
App actions
App actions change app related parameters or provide access to data like the current time. Here are some examples of the use cases for app actions:
- Change selected channel/peq band/layer/sends on fader
- Change mute/fine fader mode
- Open another view or layout
- Current date/time
Open view / open layout
These actions open another view/layout.
Note: If you have multiple actions assigned no other actions in the list will be executed after this action. If you want for example change a layer and open a view with one button press place the "open view" action last.
Channel actions
Channel actions change parameters related to a channel (for example a mute button or a fader value).
- Bus master channel: Parameter of the current bus master channel
- Current channel: Parameter of the currently selected channel
- Current layer: Parameter of a channel in the currently selected layer
- Fixed channel: Parameter of a fixed channel
- Fixed layer: Parameter of a channel in a fixed layer
The Use SoF
button changes how the value should behave in regard to the currently selected sends on fader mix:
When activated, the Fader
, Pan
, and On
values will be affected by sends on fader. When disabled, these values will
always affect the main mix only.
Console actions
Console actions provide access to mixer parameters other than channels. Depending on the mixer model, more or less parameters might be available:
- Audio player access (if supported by the mixer)
- Automix
- Clear solo
- FX parameters
- Mutegroups
- Monitor settings
- Routing
- Show control
- Talkback
Midi actions
These actions allow you to change the midi mapping or send our midi values to other devices.
Since these actions might be more complex to understand, they will be explained in the following in more detail:
Action swap
This actions changes the Active
state of another action assigned to a midi controller.
Example: Assuming you want to have a midi knob which should act either as pan or as gain knob and switching between those two modes should be done using another button.
To archive this you would first assign both actions to your knob, but only keep one action active
- CH Pan [Active]
- CH Gain [Active disabled]
In order to switch between those two actions, you now would assign the Action swap
action to a button
and configure it to swap to the CH Gain
action:
Pressing the button would now change the knob between Pan or Gain.
Batch action swap
Same as the Action swap
action, but changes the action of multiple midi controllers at the same time.
This can be used for example to swap the actions all knobs.
The Controller name (prefix)
field defines the prefix of the name of the midi controllers that should be changed.
Using the same example from above:
Assuming our midi knobs are all called Knob-1
, Knob-2
, .. in mixing station, we can now enter
Knob-
as prefix in the text field, and select Action 1
to swap the active action of all knobs to the 2. action.
Controller
This action allows you to send midi data to other devices. This can be either simple note/cc events triggered via a button, or fader and knobs sending absolute midi values.
To use this action you first need to create a midi device in mixing station and create a midi controller.
Example: Assuming you want to create a button that sends out a Midi Note On 5 event when you press it.
- Create midi device
- Create midi controller with the midi event set to
Note on
and Note to5
- Add a button to your custom layout, assign the
Midi Controller
action to it - Select the previously created midi controller for this action
Dummy
This action does nothing. It can be used to fill up an action slot of a button/knob in conjunction with
the Batch action swap
action.
Label ref
This action returns the label of the currently active action of a midi controller. It is used for MCU midi devices to show the current knob value on the LCD.
Scroll layer
This action moves all channels in the current layer to the left/right. Can only be used by midi controllers directly.
Example: Your current layer has 12 channels but your midi device only has 8 faders. You can use this action to scroll inside the current layer to access all 12 channels.
Label tags
It is possible to use dynamic text as a label for UI items. To do so, use one of the following tags:
Tag | Action | Description |
---|---|---|
[label] |
Any | Shows a short description of the action |
[value] |
Any | Shows the current value of the action |
[bpm] |
FX | BPM for 1/4 notes |
[sofname] |
Sends on fader | Name of the current bus master |
[shortLabel] |
Channel actions | Short version of label |
[chname] |
Channel actions | Current name of the channel |
[chnum] |
Channel actions | Channel type + name (e.g. Mix 01 ) |
[chnumShort] |
Channel actions | Channel index (e.g. 1 ) |
[sendName] |
Channel send actions | Name of the channel send used by the action |
[fx] |
FX actions | Name of the FX type |
[varname] |
FX actions | Name of FX parameter |
App-Link
This feature allows you to use multiple devices for mixing and synchronize app parameters such as the selected channel.
You could for example use two tablets where one shows the channel details and the other the mixer. App-Link can synchronize the currently selected channel between those devices.
For App-Link to work, both devices need to be in the same subnet and broadcast needs to be allowed between devices.
Usage
- Go to app settings
- Select
App-Link
Enable
the feature on all devices you want to use this feature with
The table at the bottom shows all other Mixing Station instances which are also using App-Link
Settings
Enable
Enables the feature.
Device Name
The Device Name
indicates the name of the current device. It's used for easier identification.
Group Name
You usually don't need to change this.
All devices having the same group name communicate with one another. If several groups of users want to use the App-Link feature independently on the same network, change the group name as required.
Channel select
If enabled, the app sends the currently selected channel to other apps in the same group.
Custom Layouts / Open view action
The Open View
action can also use App-Link to open the view on another device.
To use this feature enable Open via App-Link
.
Auto-EQ
The Auto EQ feature automatically adjusts an EQ to match a specified target curve. It is not designed to replace your ears! In the end you decide what sounds best. It is just a tool, use it wisely.
Warning: This feature is still work in progress
Requirements
- Measurement mic
- Spare channel
Usage
- Make sure to disable / reset any EQ applied to the PA.
- Connect the measurement mic to a free channel.
- Select
Auto EQ
from the main menu to display the "Measure" page as shown below. - Select the measurement mic's channel. The RTA of the mic is then shown at the top of the screen.
- Start pink noise at roughly the level you will be playing.
- Press
Measure
. The measurement takes ~3-5 seconds. - Press
Next
to continue to the reference setup page as shown below. Here you can configure how the system is calibrated. - Use the
Baseline
slider to adjust the green0 dB
line. Everything below this line is assumed to be "too quiet"; everything above it "too loud". - Select the channel the EQ should be applied to, and the type of EQ control that should be used. PEQ usually gives better results than GEQ.
- The
Target curve
can be used to apply personal preferences to the calibration - for example, to have more bass, or more mids. In the above screenshot, I want a little more bass and less signal at 1kHz. - Press
Next
to calculate the resulting EQ as shown below. - The result is displayed bottom right. You can make manual adjustments to the EQ before pressing
Apply
to apply it to the channel. - An estimate of the resulting spectrum is shown top right. In the above example you can see that the app is trying to reduce the signal at 50-350Hz as it was above the green baseline. The highs gets boosted because they were below the baseline in the measurement.
Warning: This feature is still a work in progress
Channel Links and Quick Gangs
Channel Links allows you to link together the values of multiple channels. Quick-Gangs allows you to edit multiple channels relative to one another.
The following video provides a brief demonstration of the two features:
** Warning ** Using channel links on multiple Mixing Station instances at the same time may cause issues! It is recommended to use this feature on one instance only.
Channel Links
Open main menu -> Channel Links
to open the Channel Links view.
Menu Items
- Adds a new link group
- Enables/Disables all link groups
- Opens the settings dialog
Link table description
The link table columns are described below:
Column | Description |
---|---|
Name | Name of the link group |
Channels | Number of channels included |
Status | Shows if the link is currently active |
Startup | Indicates if the link group is enabled when opening the app |
All channel links are stored automatically for the current mixer model. When connecting to a mixer, all links are disabled by default. This can be changed in the settings.
Creating links
- Press the
+
icon to add a new link group - Select the channels you want to link
- Press the
Scope
button to adjust which parameters to link
Settings
The Apply after connect
setting determines if the links marked with Startup: true
should be enabled automatically
after
connecting to a mixer.
Quick-Gang
This feature allows you to quickly edit multiple channels at the same time. The difference between quick-gang and channel links is that quick-gang links all parameters relative to each other.
An example use case would be to adjust the gain of all drum channels by a certain amount - for example when the drummer suddenly plays louder than during soundcheck.
You can access this feature via the chain icon in the top menu of any channel view as shown below.
Simply select the channels you want to gang together and hit Apply
.
A green icon indicates an active gang:
Press the icon again to disable the gang.
Custom layout
This feature allows you to fully customize the mixer view to match your workflow and create new views for many different purposes (e.g. fixed installations).
This view shows you all layouts currently loaded from your settings.
Behaviors
A layout can be configured to have different behaviors, which are also indicated in the Mixer
and Startup
column
above.
Override mixer layout
: A layout with this flag will replace the default mixer layout of the app.Open on start
: The layout will be opened directly after connecting to your mixer. You'll be able to press the back button to return to the mixer view.Default
: The layout must be opened manually using a button or via the table shown above.
Terminology
- UI item: Buttons, Knobs, Channel strips, ...
- Action: An action defines what an UI element should be controlling (for example Mute, Fader level, ect)
The following describes how layouts, UI items and actions correlate to each-other.
Quickstart
- Open the menu of the main view
Menu -> Setup -> Layouts
- Press the
+
menu entry to add a new layout - Add and move UI items to your taste
By default, the first custom layout you create will override the mixer layout.
If you want to go back to the app's default, simply delete your layout.
Example: Tap Delay Button
The following example shows how to add a tap delay button to your mixer layout.
Using the layout editor
This section describes how to use the layout editor.
Moving and resizing
By default, you can simply drag items to move them to another position. To resize an item, simply drag them from one of their edges, as indicated by the green rectangle in each edge.
Sometimes it's hard to move or resize small items, in this case you can press the top
Size + Move
menu button, which will change the modes of the editor.
The following describes the available modes
Mode | Description | |
---|---|---|
Size + Move | Items can be moved and resized, depending on where they are touched (default). | |
Resize | Dragging an item causes it to be resized. | |
Move | Dragging an item causes it be moved. |
Adding new items
New items can be added via the +
symbol in the top menu.
Editing an item
In order to further configure an item simply click on it (without moving it). A dialog will appear with further options:
Copy
Add the element to the clipboard. You can paste it using the clipboard button in the top menu.
Edit
Allows you to edit the actions of the UI item (aka what should be controlled by the item), as well as other options such as coloring, margin, labels, ect. More information about this can be found below.
Delete
Removes the item from the layout
Lock
Enabling the lock will make it impossible the move/resize the item anymore. To disable the lock, simply click on the item again to open this dialog.
Ordering
The two to fore/background
buttons change the order in which the UI items are shown on the screen.
This might be useful for example if you want to move a background item behind other items.
Layout Settings
While in the layout editor, press the gear icon
in the top menu to open the layout settings as shown below.
Here you can rename your layout, or change the general behaviour.
Name
The name that should be used for this layout
Behaviour
See section Behaviors
.
The Open on startup
option is designed for scenarios where you want to limit the accessible parameters (the top menu
is empty).
Additionally, it's possible to password protect the ability to return to the main mixer.
This allows you to create a dedicated layout (for example for a wall mounted tablet) and completely restrict access to anything else in the app.
Orientations
For advanced use-cases it's possible to have separate layouts for portrait and landscape mode.
Usually Combined
is fine.
Top Menu
Indicates if the top menu should be shown. This is only relevant for layouts not using the override mixer layout
behavior.
Password on exit
Enable to prompt the user for a password before allowing to exit the layout. This can be used for fixed installation purposes where the regular user should only have access to pre-defined layouts, and only certain people should be allowed to access the rest of the app.
This is only relevant for layouts not using the override mixer layout
behavior.
UI Settings
This section describes the settings available for the UI elements (aka when pressing the Edit
button).
Label
The label is the text that should be shown on the UI element.
You can use action tags to build labels that change based on the current value, for example:
[label] [value]
.
All available tags can be found on the actions page.
Margin
Defines how big the margin should be of the UI element
Visibility
This setting controls the conditions under which the UI is visible.
Visibility | Description |
---|---|
Always | Item is always visible |
Only SoF | Item is only visible if SoF is active |
Not SoF | Item is only visible if SoF is not active |
Actions
This list shows all actions assigned to the UI element. Click on an entry to open the action, press and hold an entry to remove it. See actions page for more details.
Note: Some UI elements may have more or less settings, these are described below.
UI items
This section describes all available UI items and their special configuration parameters.
Mixer
Shows all channels of the currently active layer. This also includes the meterbridge (if enabled in the app settings).
Visible channels
Defines how many channels should be shown, by default it uses the value of your layer settings.
Layer offset
Changes which layer is currently shown, relative to the currently selected layer. You can use this to build up rows of mixer elements, each showing a different layer.
Channel strip settings
Defines how the channel strips should look. By default, the global settings are used.
Channel strip
Shows a single channel strip that can be assigned to a fixed, or dynamic channel (for example the current bus master).
Similar to the mixer element, the look of this item can also be configured to be independent of the global channel strip settings.
Sidebar
List of buttons for controlling the sends on fader, fine and mute enable status.
Sends on fader buttons
List of buttons for controlling the sends on fader state
Layer list
List of buttons for selecting a layer.
Button
A button can be used to toggle the status of an action.
Action slots:
Slot | Behavior |
---|---|
Click | Finger needs to touch and lift |
Long click | Finger needs to touch for a longer period |
Touch | Finger needs to touch |
Momentary | Touch triggers "on", lift triggers "off" |
Inv. Momentary | Same as Momentary but inverted |
Knob
A knob can be used to control a numeric value (like a send level or pan).
Label
A label can be used to show values like the current scene, or just to display text.
Settings: Text position
Changes how the text is aligned on screen.
Automatic ringing out
The feedback detection view allows you to eliminate feedback while ringing out monitors. This feature was not designed to be used as a feedback destroyer while music is playing!
The feature can be accessed from the main mixer:
Menu -> Fbk Detection
UI Elements
- RTA Source: Select the signal source that should be used for showing the RTA and detecting the feedback.
- Target: Select the channel on which GEQ should be used to eliminate the feedback.
- Auto: This button activates automatic GEQ mode. It reduces the gain of the frequencies which are causing feedback.
- Yellow RTA lines: These lines indicate which frequencies the app infers to be feedback. A higher line indicates greater confidence in the app's evaluation.
Example
There follow instructions on how to ring out a monitor with the feedback detection view.
Requirements: a monitor and a microphone.
- Send the signal of the microphone to the monitor
- Insert a GEQ in the bus for the monitor
- Open the feedback detection view and select the microphone as RTA source
- Select the Bus as target
- Press the auto button
- Create feedback by holding the mic close to the monitor or increasing its gain
The app should now remove the frequencies that are creating the feedback. Make sure you stop the "auto" mode when the desired goal is reached. Auto mode stops automatically when you leave the view.
Unlimited DCAs
Mixing Station can create an unlimited number of DCAs, called "IDCA" channels.
It is also possible to select a specific mix the IDCA should affect instead of the main mix.
New IDCA
You can create new IDCAs in the layer editor via the top menu (+
symbol).
IDCAs are globally available, meaning once created, you can add them to multiple layers at the same time.
IDCA Setup
This view allows you to assign channels to an IDCA.
Select the mix you want the IDCA to control by pressing the button on the right side of
the Target Mix
label. By default Main LR
is selected.
Now you can select the channels you want the IDCA to control.
How it works
The IDCA stores the ratios of the levels of the assigned channels. When a channel level is changed, the ratio is recalculated. By changing the IDCA fader, all assigned channel levels will be adjusted according to the stored ratios.
The red line behind the fader knob of an IDCA shows the minimum/maximum levels of the assigned channels.
Fader mode
The IDCA can be configured with different fader modes:
Mode | Explanation |
---|---|
Default | All member channel faders are moved, keeping their ratio |
Ignore -oo | Member channels having their fader at the -Inf. position are ignored |
Ignore -oo for sends | In SoF mode: Member channels having their send at the -Inf. position are ignored |
Removing
To remove the IDCA from a layer just drag n drop the item onto the Remove
field.
If you want to delete the IDCA entirely you can drag and drop the item onto the Delete
field.
MCAs
Mixing Station by default allows you to use your DCAs while in sends on fader mode. This allows you to quickly change the contribution of other mixes.
What is an MCA?
An MCA is the same as a DCA but rather than controlling the signal contribution to the main mix, it changes the contribution to a bus (monitor mix).
How to use?
Enable sends on fader mode and go to your DCAs.
As you can see the fader scale changes to -15dB - +15dB
and you
can change the level of all assigned channels relatively.
Every time you enter this mode, the fader will be reset to the center, so you have the entire range to motion.
Midi
You can use any generic midi device to remote control the mixer via Mixing Station.
Supported protocols
- General Midi
- Mackie Control (MCU - recommended)
- X-Touch (in MCU mode, with metering and LCD support)
- X-Touch Expander (in MCU mode, with metering and LCD support)
- Waves FIT (in LV-1 Mode, with LCDs and colors)
- PreSonus Faderport Classic
Known issues
Android
In Android 5.0 (Lollipop) only the last plugged USB device is working correctly. This is a known bug in Android and cannot be fixed.
iOS / MacOS
iOS 15/16 and macOS 13 have a bug in midi stack of the operating system causing them to not support fast sysex messages. This causes MCU mode not to work correctly (faders moving to random locations). Make sure to update to iOS 17/macOS 14.
MCU (Mackie Control)
The MCU protocol is the recommended way to connect a midi fader extension to mixing station. By default, the channels are mapped to the currently active layer.
Channel strips
Control | Action | Description |
---|---|---|
SELECT | Select in Mixing Station | - |
MUTE | Mute | - |
SOLO | Solo/PAFL | - |
REC | Not assigned | - |
VPOD | Multiple | The knob can control multiple parameters depending on the selected assignment |
Buttons
Control | Action | Description |
---|---|---|
TRACK (Assign-1) | Gain on knobs | - |
SEND | Sends 1-8 on knobs | of the selected channel |
PAN/SURROUND | Pan on knobs | - |
PLUG-IN | Gate on knobs | of the selected channel |
EQ | Not yet implemented | - |
INSTRUMENT | Dynamics on knobs | of the selected channel |
- | - | - |
< BANK > | Prev / next layer | - |
< CHANNEL > | Scroll current layer | Scrolls 4 channels in the current layer (if more than 8 channels) |
F1-F8 | Sends on fader | Bus 1-8 |
Terminology
This section describes the terms used by Mixing Station:
- Midi Port: An input/output port for sending/receiving midi data.
- Midi Device: Represents a single physical device consisting of one input and output midi port.
- Midi Controller: A single fader/button/knob.
- Action Slot: A collection of actions that should be executed
- Action: A single action / value that should be bound to a Midi Controller
Midi Controllers
There are three controller types available:
- Button: Midi device sends a value when pressed and/or released
- Fader: Midi device sends an absolute value when fader/knob is moved (e.g.
0-127
) - Knob: Midi device sends a fixed value for each increment / decrement (e.g.
24
and27
)
Midi Setup
The midi overview can be opened from the mixer via the menu:
Menu -> Setup -> Midi
You can add / edit the midi devices form here:
Add a new device
- Press the
New device
button - Select the appropriate protocol and input / output ports you want to use.
- Press
Apply
.
The following additional settings are available:
- Sof source: By default the midi device will follow the sends on fader settings of the app.
You can change this to a fixed mix so the midi controller will only change that particular mix instead.
(This only applies to actions using the
Main->On
andMain->Fader
values). - Ch offset: Allows you to configure a channel offset that should be applied. For example if you're using two midi
devices and the 2nd one should control channel 9-16 you can set this parameter to
8
.
Midi device overview
You can select a midi device to open its overview page. This page shows all controllers assigned to the device (left table) as well as their assigned actions (right side).
This view allows you to add new controllers or modify existing.
To find an existing controller simply press the Find controller
button and then move/press any item on your physical
midi device. Mixing Station will automatically select the controller in the table.
Add a controller
- Select the midi device you want to add a controller to (click on the row).
- Press the
Add Controller
button - Select the type of controller you want to add (see definition above!).
Configure a controller
The edit controller view allows you to change the properties of the controller:
- Unique name: Name of this controller.
- Output Mode: Defines when Mixing Station will send out new values to the midi controller (see below).
- Midi parameters: Configures the midi parameters that are sent by the midi controller (see Mapping below).
Output Modes
The output mode configures when the value should be sent back to the midi device.
Mode | Description |
---|---|
On value change | Sends midi value when the action value has been changed without a midi input |
On midi event+change | Sends a midi event when a midi event was received or the action value has been changed |
On note up+change | Sends a midi event when a "note up" command was received or the action value has been changed |
Mapping a midi parameter
In general, you can just press the Learn
button and move/press the fader/button you want to assign.
The app will automatically detect the midi channel and parameter type.
You can also configure the parameters yourself:
- Event type: The event type defines what midi command the controller should react to.
Event type | Description |
---|---|
Note On/Off | Triggers the action on "Note On" and "Note Off" events |
Note On | Triggers the actions on "Note On" events |
Note Off | Triggers the actions on "Note Off" events |
CC | Triggers the actions on "Control Change" events |
Pitch | Triggers the actions on "Pitch" events |
- Channel: The midi channel that should be used
- Param A/B: These two selections are for filtering the midi parameter.
Depending on the currently selected event type the names of the parameters will change.
A value of
-1
means that the value will be ignored. - Value source: Selects which midi parameter should be used as a value source.
Example: A fader sends midi CC events. The position of the fader will be sent as
Value
of the CC command so this parameter should be used. SelectParam B
to choose the second parameter which in this case is theValue
parameter.
Note: Buttons do not require a value source because the action will be triggered as soon as a matching midi command is received.
Buttons
- Output "on" value: Sets the value that should be sent when the button is currently
on
. Some midi devices can show different colors depending on the midi value so this parameter can be used to change the color.
A button has multiple actions slots available.
Slot | Behavior |
---|---|
Click | Event needs to be > 0 and then 0 (press and lift) |
Long click | Event needs to be > 0 for a longer period |
Touch | Event needs to be > 0 (triggers immediately) |
Momentary | Event > 0 triggers "on", Event = 0 triggers "off" |
Inv. Momentary | Same as Momentary but inverted |
Fader
- Fader mode: Defines how mixing station should react to received values.
- In
Motorized
mode the values are always accepted and applied. - In
Non-motorized
mode the fader must first be moved to the current value before the app will start processing the movements.
- In
Knob
- Multiplier: Sets the sensitivity of one increment/decrement step
- Inc value: Midi value for a single increment
- Dec value: Midi value for a single decrement
Mix copy
The mix copy feature lets you copy a mix to another mix. This is useful when you want to use the LR mix as a starting point for an in-ear mix or if you simply want to copy a monitor mix to another monitor mix.
Usage
Select channel -> SENDS -> Menu -> Mix Copy
To use the mix copy feature open any channel and select "SENDS". Then press the gear icon in the top menu bar and select "Mix Copy".
On the Source
side select the mix that you want to copy.
On the Destination
side select the mix where the data should be pasted.
Press the Copy
button to start the copy process.
The target mix will be muted. This is a safety feature to avoid feedback or a sudden increase in volume. Don't forget to unmute the target mix!
Mix Presets
Mix presets allow you to store your monitor mix on your device and recall it later.
A common use case for this would be a band with changing members. Each member can recall their personal monitor mix without having to deal with mixer scenes, cues or other stuff.
The presets are mixer independent, allowing you to recall your mix even on other locations.
Usage
- Start app in restricted access mode
- Menu -> Folder icon
Scope
The scope selects which additional settings you want to load. If you have access to your bus channel you can also load the global EQ and dynamic settings.
Community
You can upload your presets to your ms-account and load them from any other device.
Re-Gain
This feature allows you to change the gain/trim of a channel without affecting the monitor sends / gate / dynamics.
A typical use case would be if an input is suddenly louder than anticipated, and you need to adjust the gain but keep the monitor sound stable.
Theory of operation
Gate and dynamics thresholds will be increased / decreased with the gain value. Sends / Faders will be adjusted in the inverted direction.
Re-Gain only works when the gain/trim gets changed form within the app. Any changes made on the mixer side are ignored by Re-Gain. This is to prevent a scene-recall from causing unexpected changes being made.
Re-Gain must be enabled after every reconnect to prevent unexpected changes due to the user forgetting about it being enabled.
Usage
There are two different modes of operation: Global
or Temporary usage
Global usage
Re-Gain can be enabled globally and will be applied as soon as any gain/trim of an input channel gets changed inside the app.
- Press the
...
menu button in the mixer view - Select
Gain Assist
- Adjust the scope settings to your liking
- Press
Enable
(You can also use an action to enable/disable Re-Gain)
It is possible to put a single channels into temporary usage
mode again by following the steps below.
Temporary usage
This section describes how to use Re-Gain temporarily for a single channel.
- Open the config page of the relevant channel
- Press and hold the gain knob (or right-click)
- Enable "Re Gain" from the top menu
- Adjust the gain
- As soon as you close the popup Re-Gain will be disabled again
The red lines in the gain slider indicate the minimum/maximum gain adjustment Re-Gain is able to compensate without altering the signal relations. If you exceed the lines some parameters (for example thresholds, send levels, ...) are at their limit, and any further gain adjustments will begin to alter the sound of your mix.
You can press the gear icon to change Re-Gain settings.
Scope
The scope defines which parameters are adjusted by Re-Gain.
Scope | Description |
---|---|
Sends | Adjusts all pre-fader sends > -90dB |
Gate | Adjusts the gate threshold |
Compressor | Adjust the compressor threshold |
LR | Compensates the main fader |
Other mains | Compensates any additional mono/stereo main faders |
Example
Value | Before | After |
---|---|---|
Gain | 0dB | 5 dB |
Gate thr | -20dB | -15dB |
Fader | -15dB | -20dB |
Surround Panning
Mixing Station support quadro surround panning (4.0) on all mixers.
Requirements
You need two stereo (or linked) busses for the front and rear channel. The main channel is not used by the panner to ensure phase alignment.
Setup
- Connect to your mixer / start offline mode
- Press the
...
menu button in the mixer view ->Surround Pan
- Select the bus that should be used for the front and rear channel
- Press
Enable
, then selectApply
- Enable the
Surr.Pan
element in the channel strip settings
These settings are kept for the specific mixer model. So you usually only need to set it up once.
Disable
To disable the surround pan mode:
- Press the gear icon ->
Surround Pan
- Disable the
Enable
button, then selectApply
Usage
Click on the surround panner in your channel strip to open the panning dialogue:
In here you can either:
- Press anywhere to immediately move the pan position
- Drag the white pan indicator
- Double tap anywhere to reset pan to the closest axis
Ended: Features
Beta program
The beta program allows you to test an upcoming version before anyone else.
Discussion / Feedback
All discussion about the beta versions as well as general feedback happens in our discord channel. Feel free to join us!
Android
If you want to join the program just follow the link: Mixing Station beta
You will receive the beta version as a regular update from the Google Play store.
If you're still using the old Android app, make sure to read the migration guide.
To leave the beta group, just delete and reinstall the app from your device.
iOS
Open this link on your iOS device and follow the instructions:
Note: Beta builds are only available for 90 days. In that time, all in-app payment features can be tested for free! Just click on 'Buy' and it will show the price as 0€. Previously made purchases won't be visible here as they are only for the release version of the app.
If you decide to leave the beta make sure to select the Restore purchses
button (see below) to restore your previous
purchases.
The beta testers are limited to 750 accounts so if there are no slots left you can't join the beta program.
Desktop
- Open the app
- Click the gear icon
- Select
Beta
as update branch - Restart the app
Mixer specific beta
This beta only applies to a single mixer series which should be tested. These tests are required since I don't have access to the hardware and developed the integration solely based on an emulator.
I'm very thankful for all the feedback I can get for those mixers.
This section will get updated based on the feedback I receive.
iLive
The iLive beta is available since 2.0.10
, use the ilive
code for the secret mode dialog (see below).
Secret Mode / Pre-release
The secret mode allows you to access unreleased features of the app.
You can open it by double-tapping with two fingers
on the screen (on a free area!) after opening the app,
or by pressing CTRL+D
.
This opens a new dialog where you can enter the code.
APIs
Mixing Station provides different APIs for integration with external software and hardware. The goal of these APIs is to cover the majority of console parameters with a unified API, allowing your application to work with every mixer supported by Mixing Station.
Overview
Note that the full set of APIs is only available in the desktop version of Mixing Station.
Configure APIs
To enable API access, open the global app settings and enable REST and/or OSC.
Data Types
The following data types are used:
Type | Sample |
---|---|
bool | true/false |
float | 1.20 |
long/int | 1 |
string | "hello" |
There are two possible float formats as follows:
Format | Description |
---|---|
Plain values | The actual value of the parameter (e.g. -5) |
Normalized | The value is normalized within the range 0-1 |
REST
The REST API allows access via HTTP using json-encoded data.
Using the API
- Enable the HTTP/REST API in the global app settings
- Open the following URL in your browser:
http://localhost:<your-configured-port>
The webpage describes all API endpoints and allows you to explore all data exposed by the API.
OSC
The OSC interface provides similar access to that provided by the REST API. You can see all available parameters by opening the data explorer (follow the REST API steps above and open the webpage).
Note that OSC bundles are not supported.
Syntax
The following syntax is used to describe the OSC packets:
[]
Can be one of the chars inside.{}
Placeholder which must be replaced with a value.- OSC uses
0
bytes for padding. For better readability these padding bytes are not indicated below.
Subscribe
Send the following packet at least once every 5 seconds to get updates for all parameters. The last char determines the formatting
Plain value
/hi/v
Normalized value
/hi/n
Get data
A OSC packet without any parameters is used to request the current value.
/con/[vn]/{dataPath}
Set data
Setting the data is similar to getting but with additional parameters. You can use any of the supported data types described above.
/con/[vn]/{dataPath} f 0.0
Examples
Get fader of ch 1 as dB value
/con/v/ch.0.mix.lvl
Get fader of ch 1 as normalized value
/con/n/ch.0.mix.lvl
Set fader of ch 1 using a dB value
/con/v/ch.0.mix.lvl f -5
Set fader of ch 1 using a normalized
/con/n/ch.0.mix.lvl f 0.5
Mixer specifics ↵
Allen & Heath ↵
Allen & Heath
Qu Connection modes
Mixing Station has two different modes for connection to the mixer:
- Qu-Drive enable
- Qu-Drive disable
The table below shows the differences between the two modes:
Mode | Parallel instances | Qu-Drive access |
---|---|---|
On | 2 | Yes |
Off | 7 | No |
SQ Connection Modes
Mixing Station has two different modes for connection to the mixer.
Mixing Station Permissions | Parallel instances |
---|---|
No restrictions | 2 (counts towards SQ-MixPad) |
Personal monitoring | 7 (counts towards SQ4You) |
Ended: Allen & Heath
Incompatible Mixers
This list shows all mixers which have been requested in the past but can't be added due to technical constraints.
Mixer | Reason |
---|---|
Midas Pro Series | Mixer's API heavily tailored for Mixtender app, making it impossible to show different parameters at the same time |
Mackie ↵
Mackie DL
The following limitations apply when using Mixing Station with the Mackie DL series:
- Custom channel icons are not supported
- Firmware updates must be applied via the MasterFader app
Ended: Mackie
PreSonous ↵
PreSonus StudioLive Series 3
Limitations
Networking
The mixer must be in the same subnet as the remote control device. Otherwise, metering might not work correctly.
Mutegroup assignment
Due to the way the Mutegroup assignment works, it is not possible to assign a single channel via network. Only all currently muted channels can be "stored" as a mutegroup. Thus, this functionality is not available in mixing station until a good alternative solution is found.
Search on desktop systems
On desktop systems which also have UC installed the search may not work due to UC blocking the search port. Either enter the IP address of the mixer manually, or fully close the UC service.
Ended: PreSonous
Soundcraft ↵
Si Performer / Expression
The performer and expression series has certain limitations when it comes to remote controlling. Mixing Station currently implements all parameters which can be remote controlled. Any other features such as Mutegroups, FX or routing cannot be implemented.
The following parameters are not controllable via network due to firmware limitations:
- Mutegroups
- FX
- Routing
Mutegroups
It is not possible to access the mutegroups of the mixer - therefore the mute status might be shown incorrectly in the app. Consider using VCAs instead of mutegroups, since the on/off status of a VCA causes associated channels to mute in the same way as a mutegroup, and the VCA on/off status is controllable from Mixing Station.
Mixer not connecting
Sometimes the network stack of the mixer crashes - this also happens with the official ipad app and is not related to Mixing Station. Please read HiQNet guide for more details.
Scribble Strip Channel Colors
The Si platform does not support user-configurable channel coloring. MS allows users in unrestricted mode to edit the Scribble Strip colors, but the color choice ends up just being saved in Mixing Station, and not in the mixer itself. MS does not allow users in Personal Mixer (restricted) mode to edit the scribble strip colors; this is for consistency with other platforms where a personal mixer user shouldn't be allowed to alter the scribble strip coloring on the actual console...
VI
Mixing Station supports all models of the VI mixer series, but there are some limitations:
- Vi 1/2/4/6: Mixer doesn't handle the data sync very well. There might be issues occurring. Please test thoroughly before using in a production environment!
- Vi 200/400/600/1k/2k/3k/5k/7k: No known issues
Limitations
The general hiqnet limitations apply as well as the following:
Matrix Mixes
Mixing Station can only correctly assign the source channels to a matrix if the Long Label
and Short Label
are equal
for the first 6 chars.
Example Long Label: My Drums
Short Label: My Dru
HiQNet Guide
Soundcraft mixers use HiQNet for remote control apps. This protocol has certain limitations which may prevent the app from working correctly.
Limitations
The Soundcraft Vi and Si series mixer does not allow remote control of all parameters via a network. Mixing Station currently implements nearly all parameters which can be remote controlled.
Network Requirements
- All devices must be in the same subnet
- Broadcast must be allowed
Setup
For the basic setup guide see the getting started page. Additional configuration for the hiqnet addresses (this is a sample configuration and can be adjusted if required.)
Device | HiQNet address | Misc |
---|---|---|
Console | Any other than 1337 | Make sure not to use any access restrictions on the mixer, or use "All" for the App HiQNet address |
Android/iOS | 1337 | Make sure each instance of the app (including ViSi remote) has a different address! |
You can also refer to the official Soundcraft setup guide.
Without hiqnet access control
This is a sample configuration how to use Mixing Station without hiqnet access control
With access control
This is a sample configuration how to use Mixing Station with hiqnet access control.
Note the hiqnet address 1337
is the one configured in Mixing Station.
This might be different depending on your configuration.
Troubleshooting
Mixer not connecting
Sometimes the network stack of the mixer crashes - this also happens with the official ipad app and is not related to Mixing Station. Only a reboot of the mixer can fix this issue.
- Make sure you can ping the IP address of the mixer from your mobile device. If this is not possible your network configuration is wrong.
- Make sure to fully close any other HiQNet apps (ViSi Remote) for at least one minute. This is required as otherwise the mixer won't connect to any other apps on the same device.
- If the mixer is detected by the app but the sync doesn't work make sure you've disabled any access restrictions on the mixer side.
Inside knowledge: How a connection is established
HiQNet is special in the way it establishes connections: Instead of the app connecting to a mixer, the mixer connects to the app. For this to work the app must be able to send broadcast requests to the mixer. Here is how the connection is established:
- App sends broadcast request for connection (udp)
- The mixer connects to the app (tcp)
Note: If the mixer does not respond to the message from step 1.
for whatever reason (e.g. the network of the mixer
crashed internally), you won't be able to connect to the mixer.
During testing this happened randomly with the Si Performer and Expression series but is known to happen with any Soundcraft mixer. I cannot change this behaviour since it's a bug in the mixers' firmware.
Ended: Soundcraft
WING ↵
Connection
The mixer allows up to 16 simultaneous connections.
Make sure the Remote Lock
setting on the mixer (Setup -> Remote -> Remote lock
) is disabled for tcp.
Otherwise, the app will be in read-only mode.
RTA
As with most mixers there is only one RTA available.
In comparison to the XM32 series, the mixer will always override the RTA source if not locked. This means that the RTA shown in the app will be different from the actual selected channel.
To properly use the RTA in the app make sure to lock the console first! This behaviour cannot be changed by the app.
Ended: WING
XAir ↵
Bus password protection
It is possible to lock certain buses with a password (Mixing Station only).
Usage
- Open the "Security view":
Menu -> Setup -> Security
- Enter a password. The password will be stored in the XAir internal storage and is NOT encrypted
- Select the buses you want to protect.
Main LR
will lock theNo restrictions
mode. - Press back to close the view and store the settings on the XAir.
When you connect to the XAir and the data sync is completed, a password prompt will be shown if the bus you want to access is protected.
Supported devices
All devices using Mixing Station. Any other app including the official XAir apps will simply ignore this setting.
Where is the password stored?
The password is stored in the last snapshot (50th position). The scope buttons are used to store the information about which bus is protected.
How to reset the password?
Save and then delete the 50th snapshot using any official XAIR-Edit app.
Ended: XAir
XM32 ↵
Channel move
The channel move feature allows you to move a channel to another position. Since this process requires a channel preset it's only available when connected to the mixer.
How to use
- Select the channel you want to move by pressing its channel button.
- Press the folder icon in the top menu bar -> Select
Move
- Select the position where you want the channel to be moved to. The
[INS]
label represents the position where the channel will be after moving it. - Press
Move
Important notice: All channels between start and destination position will be muted to avoid possible feedback while the channels are moved. The source channel will be stored in channel preset slot 100. Make sure you've got a good network connection!
Signal source
The signal source of a channel is fixed to its position. Due to the nature of how the move process works the routing will stay fixed to the physical channel.
Before moving
Channel | Source |
---|---|
Ch 01 | 01 |
Ch 02 | 02 |
Ch 03 | 03 |
Ch 04 | 04 |
Ch 05 | 05 |
After moving Ch 05
to Ch 01
Channel | Source |
---|---|
Ch 05 | 01 |
Ch 01 | 02 |
Ch 02 | 03 |
Ch 03 | 04 |
Ch 04 | 05 |
How it works internally
- Mute all affected channels
- Save source channel as channel preset 100
- Copy all channels in between one space to the left/right
- Load saved preset at destination position
Bus password protection
It is possible to lock certain buses with a password (Mixing Station only).
Usage
- Open the "Security view":
Menu -> Setup -> Security
- Enter a password. The password is stored on the X32 and is NOT encrypted
- Select the buses you want to protect.
Main LR
will lock theNo restrictions
mode. - Press back to close the view and store the settings on the X32.
When you connect to the X32 and the data sync is completed, a password prompt will be shown if the bus you want to access is protected.
Supported devices
All devices using Mixing Station. Any other app including the X32-Mix will simply ignore this setting as it is a custom solution.
Where is the password stored?
The security settings are stored in the Name
field of the 100th routing preset on the X32. The routing preset itself
will not be touched.
How to reset the password?
Save and then delete the 100th routing preset using any official X32-Edit app.
Network traffic: X32-Mix vs Mixing Station
Some users reported a delay and lag with the X32-Mix iPad app, so I wanted to investigate the differences in network communication between the two apps. In the following discussion, the X32-Mix iPad app is simply referred to as "X32-Mix".
Here are some quick facts about the network protocol used by the X32 (this will be the same for both apps):
- OSC (Open Sound Control) send via UDP
- UDP is not connection based, nor does it guarantee that all packets are delivered.
- OSC data structure:
- Path string: This indicates what content is in the package. Example: /ch/01/mix/level
- Value string: Information about the type and order of the values in the OSC message
- Value(s): Values attached to the OSC message. (Numbers, Text, etc.)
Keeping data in sync
One key function of a remote app is to show the current values of the console. To achieve this, the data in the app and the data in the console need to stay in sync. There are two different methods to get data from the X32:
- Polling (X32-Mix): The app sends a
/subscribe
command to the X32. The X32 then sends the requested value every 50 ms for the next 10 seconds. The 10 second timeout can be halted by sending the same command again. - Events (Mixing Station): The app sends a
/xremote
command to the X32. The X32 responds with all value changes that occur in the next 10 seconds.
As you may have noticed the "event" mechanism only sends data when a value changes. This saves a lot of data! This is also the reason why Mixing Station requires a sync when connecting and X32-Mix doesn't because every 50 ms it retrieves all values that are currently visible.
Measurements
View | X32-Mix iPad receive | X32-Mix iPad send | Mixing Station receive | Mixing Station send |
---|---|---|---|---|
Sync | N/A | N/A | ~65 | ~50 |
Mixer Ch 1-8 | < 1 | ~44 | < 1 | ~21 |
Change to Ch9-8 | ~20 | ~44 | ~5 | ~34 |
LR PEQ | < 1 | ~28 | < 1 | ~7 |
All values in kByte/s
For better comparison here are some differences regarding the data requested by the apps:
Feature | X32-Mix iPad | Mixing Station |
---|---|---|
RTA data | No | Yes |
GR meters in mixer view | No | Yes |
Why the lag?
You still may wonder "why does the iPad app lag sometimes?" The data that is displayed on screen is not cached inside the app, it's the last data that was received from the X32 via the network. This means, when you drag the fader on the screen with your finger, the fader shown on the screen only moves when the value that is sent back from the X32 to X32-Mix is updated. On a regular network this isn't a issue, but we're talking about a WiFi network that has to transfer a lot of small packets in both directions. Depending on the WiFi-Router, some packets will get lost and the average latency will increase. Also when you change the view in X32-Mix it has to wait until all required values arrive before it can show any content as the app has no local cache to store old values.
How does Mixing Station stay in sync?
As you may have noticed, UDP may drop some packages. If a value has been changed (like a mute button) and the packet gets lost, the app will not be notified about the change. To overcome this issue, Mixing Station periodically syncs all required values in the background. This also means that if a package gets lost, the app might be out of sync for up to 1 minute.
Samsung and Android 6
Since the rollout of the Android 6 update, the sync mechanism does not work anymore. It just stops at random positions and won't connect at all.
Root cause
Samsung broke something in their WiFi driver / network stack which causes packet and connection losses. (especially with UDP packages). As this is a system component, I can't do anything about it. The network just stops working after some packets.
How to fix it?
As this issue is on a much lower level than the app itself there is sadly nothing that can be done from my side to fix it. In some countries and for some devices there is already a second update from Samsung available which fixes this issue.
The following countries are fixed (to my knowledge):
- Germany
- Croatia
- Some US devices (non branded)
Please note that branded devices make take longer to receive the update. The following kernel versions are reported as working:
- 3.10.61-7884513 (S6)
- 3.10.61-7497559 (S6)
Workaround
This will make the app connect but it will be out of sync with the mixer. The sync can be disabled by the following steps:
Open the app->Setup->Skip Sync
Ended: XM32
Yamaha ↵
Yamaha DM
Mixing Station supports all models of the DM3 mixer series, but there are some limitations:
- Scenes can only be recalled. Saving/deleting is not possible
- Access to the USB player is not possible due to firmware limitations
Yamaha TF
Metering
The metering data on the Yamaha TF mixer is sent using Multicast
. To be able to see the metering data
you'll need to:
- Make sure your device is in the same subnet as the mixer
- Enable
Multicast
traffic on your wifi access point (some devices have this option disabled by default)
Ended: Yamaha
Ended: Mixer specifics
Known bugs and limitations
This page lists all known bugs and limitation of the app.
iOS
Turn screen off
When turning the screen off iOS will terminate any network connections. Therefore the app will lose any connections and you must reconnect. It's recommended to keep the screen on. By default, Mixing Station keeps the screen on so it will not turn off automatically.
Licenses
Due to the different app store policies each platform (iOS, Desktop, Android) has it's own licensing system. Therefore, you can't use one license on another platform (e.g. an iOS license on Android).
It is possible to use one license on multiple devices of the same platform (e.g. multiple Android tablets).
Mixing Station account (Desktop, Android)
All licenses can be managed using your Mixing Station account. If you don't have an account yet, you can register here.
Make sure to use the same email address as used for purchasing otherwise we can't link the license to your account!
Manage activations
Once you've selected a license in your mixing station account, you'll be able to see all activations for this license.
If you switched devices, or re-installed the app multiple times you may need to disable old activations,
in order to activate the app again on your new device.
This can be done by unchecking the checkboxes in the Active
column:
Activation
Each license can be activated on 4 different devices at the same time. Once the limit has been reached you can either deactivate devices you don't use anymore ( see manage activations) or purchase another license.
Move license
You can move licenses from one email to another using the Move license
button.
Just enter the source email, from which you want to move the licenses and confirm. An email confirmation will be sent to the email which you'll need to confirm.
Afterward, all licenses previously associated with the entered email will be moved to your account.
Restore licenses
The following describes how to restore / import the license on another device:
iOS
Make sure you're logged in with the same Apple ID as used for the initial purchase.
In case nothing happens when using the Restore purchases
button, and you are 100% sure you're using the correct Apple
ID,
you can try pressing the Buy
button again as it's not possible to purchase the same feature multiple times.
This might be required when switching to a new iOS device since Apple doesn't load all in app payments correctly all the
time.
Desktop
You can restore access your licenses using your Mixing Station account or the .lic
file.
Android
You can restore your licenses from your Mixing Station account or the app store used for the
purchase (Google Play
, Amazon
, ect)
Important: When you previously migrated your license it can only be restored using your Mixing Station account!