Work in progress documentation.
This is the multi-page printable view of this section. Click here to print.
Maxx Remote
- 1: Concept
- 2: Installation
- 3: Quick-Start
1 - Concept
… is, and abstraction layer between devices and just channels. It doesn’t matter if 1000 channel are spread out over 32x 32 Channel amplifiers, or 125x 8 Channel Amplifiers or any other combination.
As a user, you normally don’t want to know on which amplifier channel your speakers are mapped during operation and tuning of the system. The only thing that’s interests is that you want to control this specific channel or a group of channels in a room for example.
Application / Server
MAXX Remote can be used in two different application forms:
- Desktop Application (multiplatform Windows / MAC / Linux)
- Server only as Docker Image Docker Hub
In both scenarios, the MAXX Remote system always consists of an SERVER and FRONTEND / USERINTERFACE / GUI part which is general a html webpage controlling the actual server.
The SERVER / Desktop application containing an integrated webserver where the USERINTERFACE is always accessible. Like on your local PC: http://localhost:8000
Objects
In MAXX Remote we distinguish between some basic object types:
-
CHANNELS or PROJECT CHANNELS
Represents a single amplifier channel which holds data for every possible DSP option. -
GROUP
Groups can control every parameters the channels offers but will affect multiple channel at once. -
DEVICES
Devices represents amplifier in your Project. Each Devices, depending on it’s type, offers a specific channel count like 8, 16, 24, 32. -
HW CHANNELS
are those hardware channel, present on devices in your project, like CH1 @ AMP1
How does this relates?
CHANNELS could be seen like regular channel strips on an amplifier device itself. That means, you can control this specific channel like you want.
If a CHANNEL is part of one or multiple GROUPS, those groups could also add some values to that channel. Depending on the parameter type, the overall summation of the channel value and all assigned groups will be the final output value of that channel.
Source | Volume |
---|---|
Channel | -2dB |
Group 1 | -1dB |
Group 2 | +5dB |
________ | _______ |
OUTPUT | +2dB |
If a CHANNEL is linked to a HW Channel (a channel on an Amplifier device), MAXX Remote will send the CHANNEL values to the device.
Since all channel settings are stored in the database of MAXX REMOTE, it’s easy to exchange a device or even reorder the channel assignment over devices.
OUT OF SYNC
Once a CHANNEL is linked to a device, MAXX REMOTE monitors those channel values on the device itself because it’s still possible to directly change channel values via MAXX CONTROL.
If any mismatch in data consistency is detected via the periodical check-in MAXX REMOTE, an OUT OF SYNC warning is asserted, which shows the affected parameters.
It’s the user’s responsibility to resolve those issues by either changing values in the MAXX REMOTE to align with the device or just overwriting the data in the device with those data stored in MAXX REMOTE.
2 - Installation
Good part, it’s quite easy!
Desktop Application
Just download the application from our webpage
Those applications are portable, which means no installation is required, just start them.
Server / Docker
Simple Start
docker run --detach --name maxx-remote --network host innosonix/maxx-remote:latest
Note
The option --network host
is not necessarily required, except if you want to use the MDNS-SD device discovery.
If not used, must add Devices manually via their IP address.
Once the Docker Container is running, the integrated web server can be accessed via the IP address of the Docker on port 8000.
Manage the persistence
Warning
When starting the Docker Container without any attached volume, your whole project configuration is stored in the container volume itself.
AND WILL BE LOST once you delete the container or a new one is started
Manage it on your own
You can manage the project files by downloading/uploading the current runtime configuration when switching to a new container.
Using Docker Volumes
The preferable way is to use a dedicated docker volume to store the runtime configuration of the server.
# create a new volume ( only has to be done once )
docker volume create maxx-remote-volume
# start the container and mount the volume
docker run --detach \
--restart always \
--name maxx-remote \
--network host \
--mount source=maxx-remote-volume,target=/root \
innosonix/maxx-remote:latest
3 - Quick-Start
Set up a simple demo scenario containing three speakers (Left / Right / Sub) connected to CH 1, 4, and 9 on an MA32/D², doing some equalization and routing music from a Dante Virtual Sound card.
Create Project
The first time you are going to Start the Maxx Remote, this splash screen appears. Click on Start a new project and type in any name.
Create Channels / Groups
Let’s create our three required channels and one group containing all channels.
- Click on CHANNELS -> MAP | CREATE
- Click on + CHANNEL and enter 3 in that CHANNELS TO ADD field. We can now directly assign names to those channels.
Finish that by clicking on CREATE CHANNELS - Our three PROJECT CHANNELS have now been created, as seen in the LINKED TO column; there is no link to an amplifier channel yet. Those channels can configure any settings without the need for actual hardware devices.
- Perform the same steps to create one Group by clicking on + GROUP and name it ROOM 1, for example
- Now assign the channels to that group by either Drag & Drop the selected channel to a group or selecting them and pressing the MAP button in the headline.
Hint
A channel can be member of multiple groups simultaneously
Connecting to an amplifier
- Click on DEVICES -> ADD DEVICE. You can either add devices already found in your network or add them manually by specifying MODEL and HOSTNAME. Disable the GENERATE PROJECT CHANNELS since we don’t want to autogenerate all amplifier channels in our project.
Note
Adding an fixed IP is optional. If no IP is supplied, the hostname will be resolved via mDNS. But for fixed installations, adding an IP is recommended to speed up the connection process.
- Once the Device is added, the Maxx Remote automatically tries to connect. The CONNECT switch can be used to disable any network activity.
- We will link our PROJECT CHANNELS to the channels of the amplifier itself by clicking on the LINKED CHs icon.
- To ensure we link the correct channels, an IDENTIFY function is available to play a test tone (like PINK NOISE with a certain level -40 dB) on the corresponding channel.
- Once the correct channel is found, link a PROJECT CHANNEL** to that HW CHANNEL by Drag & Drop or via the LINK button.
- Finish the linking of the remaining channels
- The assignment can easily be reordered by Drag & Drop a HW CHANNEL to another empty slot or even swapping two channels by dragging one over an already assigned one.
Adjusting the Volume
- Before doing anything else, let’s decrease the volume of our setup by -20dB. Navigate to GROUPS and click on the VOLUME field
- Enter -20 and press ENTER or click on SET. This will update the Volume of all channels in that Group.
- Let’s increase the Volume of the Subwoofer by +6dB to give us a little boost. Navigate to CHANNEL and click on the VOLUME field of the corresponding channel.
Note
The CHANNEL overview always represents the final output results of those channels; that’s the reason why it already shows -20dB (from the group value we’ve applied before)
Type in 6 and press ENTER. The new OUTPUT result is shown. (-20dB from GROUP Room 1 and +6dB from the CHANNEL itself results in -14dB )
Adjusting the EQ for the Subwoofer
- Set an LP filter for the Subwoofer. Navigate to CHANNELS -> EQ Icon.
- Drag & Drop a LOW PASS filter into the EQ windows
- Click on the blue dot or the blue rectangle on the lower part of the eq windows to select the filter. Click on the GEAR icon to open the Low Pass type editor. For example, select a 24dB Butterworth characteristic and confirm via OK.
- The frequency can either be changed by dragging the blue dot or entering the desired frequency in the textbox below and confirming via ENTER / SET
- Add more filters as required.
Adjusting the EQ for the Group
- Perform similar steps to add some overall EQs to GROUP Room 1, like:
- Navigate back to the CHANNELS of GROUP Room 1 by using the ARROW button on the right, for example:
- Open the EQ of the channel Subwoofer again and take a look. This will indicate the summation of all EQs applied to that channel.
Creating some INPUTs
We can use different approaches to supply some music to those channels. But for now, assume a stereo source coming from a Dante Device / Dante Virtual Soundcard.
By using INPUTS in the Maxx Remote, we can specify MONO or STEREO Sources in the Dante network. The required information can be found in the Dante Controller, containing the HOSTNAME and the Transmit Channel name. A Dante Stream will be represented by that combination Transmit Channel@HOSTNAME.
In the example below, 01@STEFFEN-PC
- Click on INPUTS -> + INPUT SOURCES. Enter the required information.
- SOURCE LABEL: Just to identify that SOURCE in the Maxx Remote
- RECEIVE HOSTNAME: Hostname of the Dante Device
- RECEIVE LABEL: The Transmit Channel name
- Once the SOURCE is created, navigate to GROUPS -> INPUT and apply that SOURCE to that group, Room 1
- All channels in that group will now assign that INPUT SOURCE based on their ROLE, like LEFT / RIGHT / MONO.
- The channel Left is now performing a downmix from STEREO to MONO by using both INPUTS
- Since this is not what we like to see here, change the CHANNEL ROLE to LEFT by clicking on CHANNEL -> ROLE -> LEFT
- The Channel now receives only the desired Left Channel of that INPUT SOURCE
- Looking at the Dante Controller should also indicate those dynamically assigned slots marked with a “D:”
- Repeat those steps for the channel Right.
- The Subwoofer is default set to MONO, so the downmix is performed correctly.