You got here from Controller Overview

From the Controller Overview page, click on sACN Bridge to get to this view.

Miranda can be used to create an arbitrary network of controllers that can be controlled by a single Miranda taking sACN from any source. Typically that's a console like a ETC Nomad or GrandMA.

<aside> 🐡 Please note that this feature is considered late-alpha early-beta. It may not be as stable as we'd like. It's unlikely to knock a controller offline in a way that a reboot or power cycle wouldn't bring it back, but please don't rely on it where a controller is human-inaccessible.

</aside>

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/7ca0e093-0439-46b7-aaa9-6402459c08d7/Screen_Shot_2020-05-25_at_12.14.43_PM.png

Enabling the Bridge

To enable the sACN bridge:

  1. Pick which controller is going to be the sACN input node.
  2. Select your input universe (that is, which universe you are sending data from), and press "Save Universe ID".
  3. From that controller, press the "Enable sACN node" button (there will be a confirmation).

The controller will reboot into sACN mode.

You will see the "Booted as sACN input node" message whenever this controller boots. Notably, changing the input universe will require a reboot, but changing the ID does not trigger an immediate reboot.

The Miranda will now not output any DMX data, and will subscribe to the correct multicast address for that universe.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/b17bd400-8105-4618-8c2f-39436e234c09/Screen_Shot_2020-05-25_at_12.16.16_PM.png

Showfile Format for sACN input node

If you are not already familiar with the JSON Showfile Format, please go review it, as this only covers the changes.

The sACN input node needs to know three things:

  1. What sACN DMX start address to use for each fixture
  2. Which controller to route this fixture to
  3. Which fixture_id this fixture is on the other controller

For the first, we use the normal start_address key.

For the second, we use the fixture label. The fixture label should contain only the MAC address of the remote system, in the standard format we use elsewhere. This means all capital letters, and : between octets. So BC:DD:C2:C9:00:3F is correct, but bc:dd:c2:c9:00:3f is incorrect.

For the third, we overload the fixture_type key. So, when writing show files for sACN input nodes, fixture_id contains the fixture_id for the sACN input node, while fixture_type contains the fixture_id for the remote Miranda.


As an example, this is a fixture document for an sACN input node:

{
"controller": 1,
"channel_map": [1, 2, 3, 4],
"start_address": 1,
"fixture_type": 1,
"num_channels": 4,
"fixture_id": 1,
"label": "BC:DD:C2:C9:00:3F"
}

In this case, fixture_id 1 is fixture_id 1 on the remote controller BC:DD:C2:C9:00:3F.

The usual limit of 300 fixtures applies, and at this moment we only support a single input universe.

It's notable that fixture_type does not have to equal fixture_id on the input node. This is a valid document:

{
"controller": 1,
"channel_map": [1, 2, 3, 4],
"start_address": 16,
"fixture_type": 1,
"num_channels": 4,
"fixture_id": 5,
"label": "BC:DD:C2:C9:00:3F"
}

<aside> 🐡 Note that the start_address only applies to the input node, it does not apply to the remote, that address is set through the remote's showfile.

</aside>

<aside> 🐡 At this moment, it's required to have at least one cue in the showfile. While in sACN input mode, the stack section is ignored, it causes an error when loading the showfile in normal mode. We expect this to be fixed soon.

</aside>