Avid S3L Remote Power On

The ICF recording studio where I do mixing for live video and internet broadcasts for is, shall we say, small. Due to its small size and the presence of multiple large screens, it can become quite warm, despite fans to help cool it.

ICF Recording Booth

To remove a source of heat generation, I moved the Avid E3 Engine outside and on top of the booth, a change that both made it quieter and much cooler. (Note, we use a separate console for recording our bands in the studio, so the E3 fan noise doesn’t cause any problems as it is normally powered off.)

Placing the device outside though means I cannot as easily flip the power switch to power it on. To get around this limitation, I did some research and found that I can power the device on using the Ethernet Wake-on-LAN protocol.

Avid E3 Engine

To remotely wake the E3 engine, you need three things:

  1. A computer that is connected to the same Ethernet network as the E3 engine. If VLANs are in use, they must be on the same VLAN.
  2. The MAC address for the engine. The MAC address is available under the Options > Devices tab and right-clicking on the E3 engine image.
  3. The IP subnet address of the network. (Optional,  depending on the software used.)

Software for remotely waking the E3 engine.

There are several software packages available to send the special Wake-on-LAN Magic Packet.

Mac

  • Wake On Lan by Depicus (Mac App Store, $1.99)
  • Remote Desktop  (Apple, $79.99) – Also useful for controlling the S3L-X remotely.

Windows

Command-line

For those comfortable with the command-line, a short Python script will also do the job. Save this script somewhere as wakeonlan.py and make it executable with chmod +x. Myself, I keep a copy of the script in my ~/usr/bindirectory.

#!/usr/bin/env python
# https://apple.stackexchange.com/questions/95246/wake-other-computers-from-mac-osx

import socket
import sys

if len(sys.argv) < 3:
    print "Usage: wakeonlan.py <ADR> <MAC>     (example: 192.168.1.255 00:11:22:33:44:55)"
    sys.exit(1)

mac = sys.argv[2]
data = ''.join(['FF' * 6, mac.replace(':', '') * 16])
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
sock.sendto(data.decode("hex"), (sys.argv[1], 9))

To wake my system, I call the  script like below, where 172.16.0.255 is the subnet of my network, and 00:90:fb:4a:13:9e the MAC address of my E3 engine.

~/usr/bin/wakeonlan.py 172.16.0.255 00:90:fb:4a:13:9e

Avid Stage 16

Unfortunately, the Stage 16 Box cannot be remotely power cycled without additional equipment. I haven’t set this up yet, but my plan would be to use one of the devices below to enable remote power on/off of the device.