Upgrading TC Electronic DBMax firmware

This post provides steps for updating TC Electronic DBMax firmware.

The latest firmware (v2.90) along with installation instructions are available from the tc electronic Music Tribe site. The instructions only describe using a M5000, which I don’t have, so I needed another solution.

The DBMax has a built-in PCMCIA card reader for storing settings, and which can be used to upgrade the firmware. According to the manual, the DBMax supports Type 1 PCMCIA cards with a minimum of 64KB SRAM and a maximum of 2 MB. Although settings can also be stored and recalled via MIDI, the firmware can only be updated via PCMCIA.

TC Electronic devices interact with the PCMCIA card as a raw storage device, and do not utilize a filesystem such as FAT. This means that the firmware must be copied as raw data to the device using software capable of doing so.

The solution I’ve found for copying the firmware to a PCMCIA card with a CSM OmniDrive USB2 Professional PCMCIA card reader. Unfortunately, PCMCIA cards are no longer common as they once were, and finding a drive proved to be both difficult, and expensive ($350 on eBay), but it works. Alternatively, an old laptop with a PCMCIA card reader should work, or with a TC Electronic M5000 (not the M5000X) and a 3.5″ floppy drive.

OmniDrive USB LF SD
OmniDrive USB LF SD

The OmniDrive site provides downloads for Windows which include a Software Driver (v3.3.4) that enables reading/writing of a PCMCIA card as a normal drive, and PC Card Manager (PCM) (v3.1.1) which enables reading/writing of a PCMCIA card as a raw storage device. The PC Card Manager is required for updating firmware.

To copy the firmware to the PCMCIA card…

  1. Unzip the dbmv290.zip file, which should provide a dbmv290.wiz file.
  2. Open the PC Card Manager software.
  3. Click the “Copy file(s) to a PC Card” icon.
  4. Select “New” to start a new Copy Job.
  5. Choose the dbmv290.wiz file as the Source File, and click “OK”. If the file isn’t listed, make sure file dialog is showing “All files”, not just “Images (*.PCC;*.PCA)” files.
  6. Click “Copy”. This should take <1 second.

To copy the firmware to the DBMax…

  1. Insert the PCMCIA card into the DBMax.
  2. Power the DBMax on while holding the “Help” button.
  3. Press the “OK” button to initiate the firmware upgrade. This should take <10 seconds.
  4. Power cycle the device.

That’s it!

Testing Phantom Power

I’m the proud owner of an Earthworks M30 30kHz measurement microphone, which I use it to measure and calibrate sound systems using Smaart v8 from Rational Acoustics, along with a MOTU UltraLite mk3 audio interface.

Background

A few of years ago, I was attempting to measure a system, but had the strange behavior that after 15s or so, the signal from the microphone faded away completely, making it impossible to calibrate the system. I eventually realized that by swapping the 10m XLR cable I was using for a 3m cable, the problem went away.

As I’d used the setup without issue in the past, I assumed the issue was the with the particular XLR cable itself, but eventually realized that the longer cables produced hit-and-miss results, and that I needed to dig deeper into the problem. I also realized that I had always connected the mic through the console of the system I was measuring (to ensure I was calibrating the full path), but on this occasion I was calibrating directly with the interface as customers were expected to provide their own console, and only the system was a fixed installation.

As my father has decades of experience in audio, he was my first source for troubleshooting. He suggested that the mic had a high impedance, and that the 10m cable would cause issues with such a high impedance. Contacting MOTU, they also suggested that the mic might be the issue. The M30 model I own is a 600Ω impedance model which I’ve owned for 7y+.

With this information, I contacted Earthworks directly. After some discussion of the issue via email, Earthworks suggested that the impedance of the older M30 models might only be part of the issue, and that my audio interface might not be capable of maintaining 48V phantom with the longer cables. They provided me with a test procedure which I could use to verify my setup experimentally.

Testing

Phantom power test procedure

To perform the tests, I needed to build a cable. As I didn’t have a 47Ω resistor, I used a 50Ω resistor instead as it was close enough.

Rather than only check my UltraLite mk3, I set about testing the phantom power every XLR mic inputs that I had available to me at home at the time. I studied Physics in university, and doing experiments like this interest me!

The results below are based on the various document sections of the test procedure.
1.A. Measure voltage between pins 1 (neg) and 2 (pos). Expect 48V DC (±1V).
1.B. Measure voltage between pins 1 (neg) and 3 (pos). Expect 48V DC (±1V).
2.B. Measure current between resistor and pin 2. (47Ω resistor across pins 1 & 3; 47Ω resistor from pin 1). Expect >= 6.2 mA.
2.C. Measure voltage from above. Expect close to 48V DC.

1.A (V)1.B (V)2.B (mA)2.C (V)
Avid S3L-X E3 Engine48.2548.28747.59
M-Audio ProFire 610 (FireWire)49.4849.49748.17
Mackie 802VLZ447.3347.34746.8
MotU 828mk348.0148.01541.8
MotU UltraLite mk3 (FireWire)48.348.31541.5
MotU UltraLite mk3 (external)48.348.31542.16
MotU UltraLite AVB4949.05631.8

Results

The clear result was that none of my MotU devices were not capable of providing phantom power necessary to drive my Earthworks M30 mic.

After presenting the results to Earthworks, they informed me that they offer replacement circuity for the M30 to convert it from 600Ω to 150Ω. I chose to keep the microphone in its original state, and I instead purchased the ART Phantom II Pro that was recommended in the testing document. With the inclusion of that device, I have had no further problems with my setup, and I continue to use the MOTU UltraLite mk3 successfully for measurement and calibration.

As a follow-up, I contacted MOTU with the results of my tests. It turns out that all of the devices are somewhat older, and that their newer devices apparently have fixes for this particular issue. I haven’t had a chance to verify the results experimentally though.

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.