THORLABS MX40G 40GHz Electrical to Optical Converter User Guide
- June 5, 2024
- THORLABS
Table of Contents
THORLABS MX40G 40GHz Electrical to Optical Converter
Introduction
Description
The MX / MBX / TLX1 / TLX2 series of instruments may be remotely controlled
via SCPI-type serial commands. This requires connecting a computer running the
Microsoft® Windows® 7 operating system, or later versions, to the instrument
using a USB cable, or connecting a computer running any operating system to
the RS-232 port on the instrument. Serial commands are sent to the USB or
RS-232 ports located on the back panel of the instrument. The touchscreen
interface remains active while the instrument is controlled remotely, and
instrument functionality remains accessible through the touchscreen interface.
This document describes the process of interfacing the instrument with the
controlling computer, defines the serial commands, and includes information
about the remote control software tool that serves as an example and a
tutorial for sending the serial commands. To download the remote control
software tool and supporting files for your MX / MBX / TLX1 / TLX2 instrument,
visit the following page and type in the instrument’s Item #:
https://www.thorlabs.com/manuals.cfm
Interfacing the Computer and the MX / MBX / TLX1 / TLX2 Instrument
The following sections use the MX40G Electrical-to-Optical Converter as an example, but the procedure and guidelines apply to all of the MX / MBX / TLX1 / TLX2 series of instruments. These instruments may be connected with a computer via USB or RS-232 ports located on the back panel, as shown in Figure
- Please note that using both USB and RS-232 connections at the same time is not supported. If it is necessary to change from a USB to a RS-232 connection, or vice versa, first power off the instrument, change the connection, and then power on the instrument. This will ensure that the instrument recognizes the new connection.
Label | Description |
---|---|
B1 | I/O Port (HDDB15 Connector) |
B2 | Laser Interlock (2.5 mm Connector) |
B3 | RS-232 Port (DB9 Connector) |
B4 | USB Port (USB Type B Connector) |
B5 | Power Connector |
B6 | Power Switch Supply On; Supply Off |
Connecting to the USB Port on the Back Panel of the MX / MBX / TLX1 / TLX2
Instrument
A USB cable can be used to connect a computer running Windows 7, or later,
with the port on the back panel of the instrument as shown in Figure 2. The
USB port is type-B. A USB cable with a type-B connector on one end and a
type-A connector on the other would allow connection with most computers.
When discovered by the Windows PC, the MX / MBX / TLX1 / TLX2 instrument will appear as a human interface device (HID), rather than as a virtual serial port. The HID class includes the computer mouse and keyboard. Please note that PC terminal software, such as Tera Term, cannot be used to communicate with the MX / MBX / TLX1 / TLX2 instrument via USB cable. This is due to PC terminal software requiring the connected instrument to be recognized by the PC as a virtual serial port. The Thorlabs remote control application discussed in Chapter 3 can scan for, discover, and open a connection with the connected MX / MBX / TLX1 / TLX2 instrument.
Connecting to the RS-232 Port on the Back Panel of the MX / MBX / TLX1 / TLX2 Instrument
If the controlling computer has an RS-232 port, or if a USB to RS-232 adapter is connected to the computer’s USB port, an RS-232 cable can be used to make the physical connection between the computer and the RS-232 port on the back panel of the MX / MBX / TLX1 / TLX2 instrument. Any software capable of sending and receiving data using serial ports can then be used to control the MX / MBX / TLX1 / TLX2 instrument. Configure the serial port of the controlling computer for 115200 baud, 8 bits, no parity, 1 stop bit, and no flow control. The Thorlabs remote control application discussed in Chapter 3 can also control the MX / MBX / TLX1 / TLX2 instrument via an RS-232 connection. The pin assignments for the DB9 connector on the back panel of the MX / MBX / TLX1 / TLX2 instrument are described by Figure 3 and the table below.
RS-232 Connector
Pin #| Description
1| Not Connected
2| RS-232 Input
3| RS-232 Output
4| Not Connected
5| Digital Ground
6| Not Connected
7| Not Connected
8| Not Connected
9| Not Connected
Connecting to the MX /MBX / TLX1 / TLX2 Instrument Using the RS-232 Port on the Controlling Computer
Figure 4 illustrates the physical connection when the RS-232 ports on the MX / MBX / TLX1 / TLX2 instrument and the controlling computer are used. The details of the connection depend on the controlling computer’s RS-232 port. When it is a:
-
9-pin DB9 male connector, an option is to use a female-to-female 9-pin “null modem” cable. National Instruments® explains the difference between a standard and a null modem cable here:
http://digital.ni.com/public.nsf/allkb/1EE0DD8AF67922FA86256F720071DECF -
25-pin DB25 male connector, a null modem cable that converts between 25 and 9 pins can be used.
In either case, if a null modem cable is not available, a null modem adapter could be used with a standard cable.
f the USB port on the controlling computer is used, a USB cable terminating in a USB to RS-232 adapter can be used to allow connection to a null modem cable. When the connector on the adapter is a 9-pin DB9 male, and the null model cable has two 9-pin female DB9 connectors, it is possible to use the adapter and null modem cable to make a connection between the computer’s USB and the MX / MBX / TLX1 / TLX2 instrument’s RS-232 ports. This is illustrated in Figure 5.
Please note that the USB port on the MX / MBX / TLX1 / TLX2 instrument should not be connected to the RS-232 port on the controlling computer; this configuration is not supported.
Supported Commands
This section describes the commands supported by firmware version V1.9.4 and later. The commands are modeled on the IEEE 488.2 standard commands for programmable instruments (SCPI) specification.
Following this convention, many commands in the “Syntax” columns of the
following tables include both uppercase and lowercase letters. Uppercase
letters identify the shortest acceptable form of the commands. If including
additional characters, all command characters must be included. (For example,
VOA:SET? and
VOA:SETPOINT? are the only acceptable variations of the VOA:SETpoint?
command.)
Each SCPI command string sent to the instrument must be terminated with either
The commands described below have been developed as a custom set, as no device
in the SCPI standard is an exact analogue.
Please note that not every command described in the following sections applies
to every MX / MBX / TLX1 / TLX2 Item #. In order for a command to apply to a
specific instrument, the instrument must have the related built-in component.
For example, the Laser Control Commands do not apply to instruments that do
not include an internal tunable laser. The following table lists the commands
supported by each instrument.
Valid commands will return a value of 1 on receipt. Valid queries return a value/string as noted in the query descriptions in Sections 0 through 2.6. The following table lists possible return values for exception handling.
Command Return Codes
Return Value | Return Explanation |
---|---|
1 | Response to a valid command |
Values without “Err:” indicator string | Response to a valid query |
Err: Feature not present | Issued a command to an instrument that does |
not have the built-in hardware. See Figure 6 for command compatibility.
System application firmware < V1.9.5 reports as Err: Hardware missing
Err: Parameter error| Issued a command with a parameter value that is
outside of the acceptable range. Refer to the command description for
acceptable value ranges.
Err: Illegal parameter value| Issued a command with a parameter value
that is outside of the range supported by this device.
Err: Data out of range| Issued a command with a data value that is
outside of the acceptable range. Refer to the command description for
acceptable value ranges.
Err: Numeric data error| Issued a command with a numeric data value that
is outside of the acceptable range. Refer to the command description for
acceptable value ranges.
Err: Data type error| Issued a command with the incorrect data type.
Refer to the command description for acceptable data types.
Err: Storage fault| An error occurred accessing the internal EEprom.
Could not continue to execute the command.
Err: System error| The system encountered an internal error while
processing the command. Could not continue to execute the command.
Err: Execution error| An error occurred attempting to execute the given
command. Check that unit is powered on and in run mode.
Err: Undefined header| Issued an invalid command or a command with
invalid formatting or a command not recognized by the current system
application firmware.
Err: Tunable laser not selected| Issued a command pertaining to a
tunable laser while the fixed wavelength laser is active. Applies to dual-band
instruments only.
Err: Laser is locked| Issued a command to access the laser and the laser
is locked by the Interlock mechanism.
Err: This command requires bootloader >= 1.7.4| Issued a command that is
only supported in bootloader code ≥ version 1.7.4.
RF Amplifier Commands
The MX series of instruments include several that have a built-in RF amplifier, and the following commands apply only to these instruments. The amplifier type is digital (limiting) in some of these products, such as the MX10A, MX40A, MX10B, MX40B, MX10C, and MX40C. In other products, such as the MX35D, MX35E, and MX65E the amplifier type is linear (analog). Only digital RF amplifiers have crossing point and swing settings, and only these RF amplifiers can operate in either analog or digital modes. In contrast, the gain may be set only for linear RF amplifiers. Unless otherwise noted, the following RF Amplifier commands apply to both amplifier types.
Command | Syntax | Description |
---|
Set Crossing Point
(Analog Mode)
| AMP:CROSSing:ANAlog: N| N is a floating point value between -1.0 and 1.0, inclusive. This parameter applies to the digital amplifier operating in analog mode and determines the location of the crossing point. N has no units; -1.0 corresponds to the maximum possible negative offset, and 1.0 corresponds to the maximum possible positive offset. The available range, which depends on the amplifier’s voltage limits and the current AMP:SWING setting, may be smaller than this full –
1.0 to 1.0 range. When this is the case, N values within
±1.0 but exceeding the currently available range will set the crossing point to the closest permitted value. This command is not available for instruments with linear (analog) amplifier types.
Get Crossing Point
(Analog Mode)
| AMP:CROSSing:ANAlog?| Returns a floating point value between -1.0 and 1.0,
inclusive. This value has no units and corresponds to the current crossing
point for the digital amplifier when it operates in analog mode. This command
is not available for instruments with linear (analog) amplifier types.
Set Crossing Point
(Digital Mode)
| AMP:CROSSing:DIGital: N| N is a floating point value between -1.0 and 1.0,
inclusive. This parameter applies to the digital amplifier operating in
digital mode and determines the location of the crossing point. Please see
AMP:CROSS:ANA for additional information. This command is not available for
instruments with linear (analog) amplifier types.
Get Crossing Point
(Digital Mode)
| AMP:CROSSing: DIGital?| Returns a floating point value between -1.0 and
1.0, inclusive. This value has no units and corresponds to the current
crossing point for the digital amplifier when it operates in analog mode. This
command is not available for instruments with linear (analog) amplifier types.
Set Gain| AMP:GAIN: N| N is a floating point value between 10.0 and 23.0
in decibels. This value sets the gain of linear (analog) type amplifiers. This
command is not available for instruments with digital (limiting) or fixed gain
amplifier types.
Get Gain| AMP:GAIN?| Returns a floating point value between 10.0 and
23.0 in decibels, which corresponds to the current gain of the linear (analog)
type amplifier. This command is not available for instruments with digital
(limiting) or fixed gain amplifier types.
Set Amplifier Mode to Analog| AMP:MODE: 1| Sets the operation of the
digital amplifier to analog mode. This includes setting the crossing point to
that currently specified for analog mode operation (AMP:CROSS:ANA) and
applying the maximum possible swing. This command is not available for
instruments with linear (analog) amplifier types.
Command| Syntax| Description
---|---|---
Set Amplifier Mode to Digital| AMP:MODE: 0| Sets the operation of the
digital amplifier to digital mode. This includes setting the crossing point to
that currently specified for digital mode operation (AMP:CROSS:DIG) and
applying the current value of swing (AMP:SWING). The default value of swing is
the amplifier’s value for Vp at 1 GHz, which is determined at the factory and
place in instrument memory. This command is not available for instruments with
linear (analog) amplifier types.
Get Amplifier Mode| AMP:MODE?| Returns 0 if the amplifier mode is set to
analog and 1 if the amplifier mode is set to digital. This command is not
available for instruments with linear (analog) amplifier types.
Set Amplifier Power On| AMP:POWer: 1| Sets amplifier power to “on” and
returns 1 on receipt of command.
Set Amplifier Power Off| AMP:POWer: 0| Sets amplifier power to “off” and
returns 1 on receipt of command.
Get Amplifier Power Status| AMP:POWer?| Returns 0 if the amplifier power
is set to “off” and 1 if the amplifier power is set to “on.” This command
returns the most recent requested power state, which may differ from
the amplifier’s currently active power state. AMP:SET? can be used to verify the last requested power state is active.
Get Amplifier Status| AMP:SETpoint?| A 1 is returned and a steady green dot shows in the AMP field of the instrument’s touchscreen when the amplifier is fully ready and has reached the requested settings.
Otherwise, a 0 is returned and the green dot blinks. Amplifier settings are updated quickly, typically within a second. However, it is possible that an immediate query after sending a command to adjust amplifier voltage will
find the amplifier in a transient state and return a zero.
Set the Amplifier Swing (Digital Mode)| AMP:SWING: N| N is a floating point value with a standard range of 3.0 to
7.0 Vpp. This command sets the swing of the digital amplifier when it operates in digital mode, and this value can be set while operating in analog mode. Some factory- customized units have an extended swing range. Use the touchscreen GUI on the instrument to view the available range. This command is not available for instruments with
linear(analog) amplifier types.
Get the Amplifier Swing (Digital Mode)| AMP:SWING?| Returns a floating point value with units of Vpp. This is the swing setting applied when the digital amplifier operates in digital mode. This value can be retrieved while operating in analog mode. This command is not available for
instruments with linear (analog) amplifier types.
Set the Amplifier Swing to V p
(Digital Mode)
| AMP:SWING:VPI| Sets the swing to the amplifier’s Vp at 1 GHz and returns 1 on receipt of command. This Vp value is found for each instrument at the factory and saved to memory. It is the “optimal swing” setting applied when the Vp button on the touchscreen interface is pressed. This command is not available for instruments with linear (analog) amplifier
types.
Laser Control Commands
These commands are available for the TLX1 / TLX2 series of instruments and
those MX series products with a built-in tunable laser, which include the
MX10B, MX40B, MX35E, MX40G, and MX70G. In the following, “Laser” refers to the
built-in tunable laser, unless otherwise specified. Please note that the ITU
channels are defined using a 50 MHz grid.
Be advised that there will be a delay between when requested laser state is
specified in a “set” command and when the requested state becomes the active
laser state, as the instrument requires a finite period of time to execute
commands. Typical execution times are given in the following table for each
relevant command. After setting laser parameter(s), the LASer:SETpoint?
command can be used to determine the laser’s active status.
Command | Syntax | Description |
---|---|---|
Set the ITU Channel Number | LASer:CHANnel: N | N is an integer from 1 and |
96, inclusive, for the C-Band laser or from 1 and 93, inclusive, for the
L-Band laser. This command sets the ITU channel of the laser and returns 1 on
receipt of command. While tuning to the desired channel, the laser’s optical
output may be temporarily reduced or turned off and then on.
Get the ITU Channel Number| LASer:CHANnel?| Returns an integer value
from 1 and 96, inclusive, for a C- Band laser or from 1 and 93, inclusive, for
an L-Band laser. This command returns the most recent requested ITU
channel, which may differ from the currently active ITU channel due to a
typical channel set time duration of <10 s. The LAS:SET? command can be used
to verify the last requested ITU channel is active.
Set Dither On| LASer:Dither: 1| Sets the laser dither to “on” and
returns 1 on receipt of command.
Set Dither Off| LASer:Dither: 0| Sets the laser dither to “off” and
returns 1 on receipt of command.
Get Dither Status| LASer:Dither?| Returns 0 if dither is set to “off”
and 1 if dither is set to “on.” This command returns the most recent
requested dither state, which may differ from the currently active
dither state due to a typical dither set time duration of <10
s. The LAS:SET? command can be used to verify the last requested dither state is active.
Set Fine Tuning Frequency Offset| LASer:FINE: N| N is an integer between
-30,000 and 30,000, inclusive. The entered value is the frequency offset in
MHz, and 1 is returned on receipt of command. Sending this command causes the
laser frequency to be tuned to the sum of the current ITU channel frequency
and this specified fine tuning frequency offset. The range of fine tuning
frequency offsets spans the full frequency range between ITU channels.
Get Fine Tuning Frequency Offset| LASer:FINE?| Returns an integer
between -30,000 and 30,000, inclusive, corresponding to the requested
frequency offset in MHz. This value may differ from the current frequency
offset due to a typical laser tuning time duration of <30 s. There is
currently no accurate way to determine, via remote control, whether a fine-
tuning operation has finished. However, other laser status information can be
obtained using:
· LAS:FREQ?
· LAS:SET?
· LAS:OOP?
Command | Syntax | Description |
---|---|---|
Get Optical Laser Frequency | LASer:FREQuency? | Returns a floating point |
value with unit of GHz. The reported optical laser frequency, which is
determined by the ITU channel (LAS:CHAN:N) and fine offset (LAS:FINE:N). As
the resolution of the returned value is limited to 0.1 GHz (100 MHz), the
values of the intermediate frequencies set using the fine-tuning feature are
reported rounded to the nearest 0.1 GHz.
Get Nominal Laser Frequency| LASer:FREQ_NOMinal?| Returns a positive
integer for the calculated frequency, generated from the nominal frequency of
the ITU channel, with the current fine-tuning frequency offset added or
subtracted. This value is in units of MHz. This is the same value that is
displayed on the LCD GUI laser settings page. Note that it is derived from the
requested frequency and does not represent a live measurement.
Get Reported Optical Output Power (OOP)| LASer:OOP?| Returns a floating
point value with units of dBm. This value corresponds to the optical output
power from the laser module measured by an integrated photodiode. A typical
operating value is 13.5 dBm. This is a different measurement than the one
reported in response to the LAS:TAP:DBM? command, which measures the
downstream optical power via optical tap. The two measurements may differ
slightly. Optical output power will be unstable during laser warm-up and
frequency tuning.
Set Laser Power On| LASer:POWer: 1| Sets the laser power to “on” and
returns 1 on receipt of command. To ensure optimal stability and full optical
output power, allow the laser to warm up for 15 minutes after powering on.
Set Laser Power Off| LASer:POWer: 0| Sets the laser power to “off” and
returns 1 on receipt of command.
Get Laser Power Status| LASer:POWer?| Returns 0 if the laser power is
set to “off” and 1 if the laser power is set to “on.” This command returns the
most recent requested power state, which may differ from the laser’s
currently active power state. The LAS:SET? command can be used to verify the
last requested power state is active. Additional laser status and setpoint
information can be obtained using:
· LAS:SET?
· LAS:OOP?
· LAS:TAP:DBM?
· LAS:TAP:MW?
Select C-band Laser| LASer:SELect: Cband| Selects the C-Band laser and returns 1 on receipt of command. This command is not available for instruments
with a single laser.
Select L-band Laser| LASer:SELect: Lband| Selects the L-Band laser and returns 1 on receipt of
command. This command is not available for instruments with a single laser.
Select 1310nm Laser| LASer:SELect: 1310| Selects the fixed 1310nm laser and returns 1 on receipt of
command. This command is not available for instruments with a single laser.
Get Selected Laser| LASer:SELect?| Returns a string corresponding to the
currently selected laser.
Command| Syntax| Description
---|---|---
Get Laser Status| LASer:SETpoint?| When the following conditions are all
true, a 1 is returned and a steady green dot shows in the laser field of the
instrument’s touchscreen. Otherwise, a 0 is returned.
· The hardware key switch interlock on the front panel is in the “on” position.
· The instrument’s microcontroller, in response to remote or touchscreen control, has commanded the laser to power on.
· The laser’s currently active dither state (on or off) matches the last requested dither state.
· The laser’s currently active ITU channel matches the last requested ITU channel.
· The laser currently reports it is in the “ready” state.
· The laser currently reports it is in the “enabled” state.
· The laser currently reports its optical output power is greater than 12.0 dBm.
Get Measured Optical Output Power in dBm| LASer:TAP:DBM?| Returns a floating point value with units of dBm. This is a measurement of the optical output power measured downstream from the laser module using an optical tap. The value returned by LAS:OOP? is a measurement made by a photodiode integrated into the laser module. The two
measurements may differ slightly. Optical output power will be unstable during laser warm-up and frequency tuning.
Get Measured Optical Output Power in mW| LASer:TAP:MW?| Returns a
floating point value with units of mW, with the measurement details identical
to those described for LAS:TAP:DBM?.
Get Nominal Laser Wavelength| LASer:WAVE_NOMinal?| Returns a positive
integer for the calculated wavelength, generated from the nominal frequency of
the ITU channel, with the current fine-tuning frequency offset added or
subtracted. The value is in units of 10 fm (femtometers). This is the same
value that is displayed on the LCD GUI laser settings page. Note that it is
derived from the requested frequency and does not represent a live
measurement.
Mach-Zehnder EO Intensity Modulator Commands
Several of the MX Series of instruments have built-in controllers for lithium- niobate-based, Mach-Zehnder EO intensity modulators (MZMs). The following commands apply only to these instruments, which include the MBX, MX10A, MX40A, MX10B, MX40B, MX35D, MX35E, MX65E, MX40G, and MX70G.
Command | Syntax | Description |
---|---|---|
Get Calibration Status | MZM:CALibrating? | Returns a 0 if the MZM |
bias is not currently being calibrated and a 1 calibration is currently in
progress. The MZM bias is calibrated automatically when the MZM Bias
controller is turned on for the first time or when recalibration is triggered
manually (MZM:RESET or using the RESET AUTO BIAS button on the touchscreen
GUI). Calibration data is maintained when the bias controller is turned off
and on without powering down the MX instrument, but MZM calibration data is
not stored upon instrument shut-down.
Set Dither Amplitude| MZM:Dither:AMPLitude: N| N is a positive integer
between 20 and 2,000, inclusive, with units of mVpp. It sets the dither
amplitude for those MZM bias modes that reference this value. Not all MZM bias
modes use dither.
Get Dither Amplitude| MZM:Dither:AMPLitude?| Returns the current dither
amplitude setting in mVpp as a positive integer between 20 and 2,000. This
will return the stored dither setting. It is not a measurement of the dither
in the output from the MZM. Not all MZM bias modes use dither.
Set Dither Frequency| MZM:Dither:FREQuency: N| N is a positive integer
between 1,000 and 10,000, inclusive, with units of Hz. Not all MZM bias modes
use dither.
Get Dither Frequency| MZM:Dither:FREQuency?| Returns the current dither
amplitude setting in Hz as a positive integer between 1,000 and 10,000,
inclusive. This will return the stored dither setting. It is not a measurement
of the dither in the output from the MZM. Not all MZM bias modes use dither.
Set Hold Ratio| MZM:HOLD:Ratio: N| N is a positive integer between 250
and 10,000, inclusive. It has no units and represents the input power required
to achieve the desired input to output power ratio. Determine N by first
choosing the desired ratio of input to output powers, then multiply that ratio
by 100. (e.g. If desired input and output power values are the same, their
ratio is 1.0 and N = 100. If the input is 100.00 times greater than the output
power, N = 10,000.) This setting is used only in Auto Power Ratio Positive
and Auto Power Ratio Negative MZM bias modes.
Get Hold Ratio| MZM:HOLD:Ratio?| Returns a positive integer between 250
and 10,000, inclusive. It has no units and represents the input power required
to achieve the desired input to output power ratio, as described in the entry
for MZM:HOLD:R:N. This will return the stored ratio setting. It is not a
measurement of the MZM bias output. It is only used in Auto Power Ratio
Positive and Auto Power
Ratio Negative MZM bias modes.
Set Hold Voltage| MZM:HOLD:Voltage: N| N is an integer between -10,000
and 10,000, inclusive, and has units of mV. This setting is used only in
Manual Voltage MZM bias mode.
Get Hold Voltage| MZM:HOLD:Voltage?| Returns an integer between -10,000
and 10,000, inclusive, and has units of mV. This will return the stored ratio
setting. It is not a measurement of the MZM bias output. It is only used in
Manual Voltage MZM bias mode.
Command| Syntax| Description
---|---|---
Set MZM Bias Mode| MZM:MODE: N| N is a positive integer between 0 and 9,
inclusive. Set this value to select the MZM bias mode. The mode associated
with each value is:
· 0: Bias control is off. 0 V is applied to the MZM bias.
· 1: Auto Peak bias mode, which uses dither to maintain operation at the peak of the modulation function.
· 2: Auto Null bias mode, which uses dither to maintain operation at the lowest point (null) of the modulation function.
· 3: Auto Quad Pos bias mode, which maintains operation at the positive quadrature position on the modulation function. This is equivalent to using the touchscreen GUI to select Quad Mode and positive slope, with dither on.
· 4: Auto Quad Neg bias mode, which maintains operation at the negative quadrature position on the modulation function. This is equivalent to using the touchscreen GUI to select Quad Mode and negative slope, with dither on.
· 5: Hold Quad Pos bias mode, which holds the bias at the last voltage found in Quad mode. It is equivalent to using the touchscreen GUI to select Quad Mode and positive slope, with dither off.
· 6: Hold Quad Neg bias mode, which holds the bias at the last voltage found in Quad mode. It is equivalent to using the touchscreen GUI to select Quad Mode and negative slope, with dither off.
· 7: Manual Voltage bias mode, which is equivalent to using the touchscreen GUI to select Manual Mode while the “bias” setting is selected.
· 8: Auto Power Ratio Pos, which is equivalent to using the touchscreen GUI to select Manual Mode while the “ratio” setting and positive slope are selected.
· 9: Auto Power Ratio Neg, which is equivalent to using the touchscreen GUI to select Manual Mode while the “ratio” setting and negative slope are selected.
Get MZM Bias Mode| MZM:MODE?| Returns a positive integer between 0 and
9, inclusive, corresponding to the current MZM bias mode. The mode associated
with each value is defined in the Set MZM Bias Mode description.
Trigger MZM Calibration| MZM:RESET| Triggers a MZM bias calibration and
returns a 1. While the calibration is running, the MZM:CAL? command returns a
- Get MZM Status| MZM:SETpoint?| A 1 is returned and a steady green dot
shows in the Bias field of the instrument’s touchscreen when the MZM bias is
stable and at setpoint. A 0 is returned and the green dot in the Bias field
blinks while the MZM is not at setpoint.
Get Post-MZM Power in dBm| MZM:TAP:DBM?| Returns the optical power, as a floating point value in dB, output by the MZM. This value is the scaled optical power measurement made at a tap located at the output of the MZM.
Get Post-MZM Power in mW| MZM:TAP:MW?| Returns the optical power, as a floating point value in mW, output by the MZM. This value is the scaled optical power measurement made at a tap located at the output of the MZM.
Get MZM Bias Voltage| MZM:Voltage?| Returns the current MZM bias voltage as a floating point value in Volts.
System Commands
The system commands described in this section apply to all MX / MBX / TLX1 / TLX2 instrument Item #s. The LED brightness commands given below allow the user to either individually set the brightness of the red, green, and blue LEDs or to set the brightness of the White LED which is a combination of the red, green and blue LEDs being controlled at the same level automatically, that contribute to the under-chassis lighting integrated into the housings of these instruments. The brightness can be set using a scale from 0.0 to 1.0, and the default combination is a value of 0.0 for the red LEDs, 0.0 for the green, 0.75 for the blue, and 0.75 for white. These LEDs can be used to provide a visual indicator of a change in instrument status. For example, the lighting could be changed to green to indicate the conclusion of a test driven by remote-control commands.
Command | Syntax | Description |
---|---|---|
Get System Bootloader Version | SYStem:BOOTloader? | Returns the |
bootloader version as a string.
Get System Firmware Version| SYStem:FIRMware?| Returns the firmware
version as a string.
Get System Hardware Version| SYStem:HARDware?| Returns the hardware
version as a string.
Get System Model Number| SYStem:MODEL?| Returns the module number as a
string.
Trigger Restart| SYStem:RESTART| Triggers a safe shutdown and reboots
the system as a quick way to restore all settings to default. Returns a 1 on
receipt of command. This will also power down the LCD GUI. After restart, the
screen will be off and the system will come up to standby mode (with the
standby button LED amber), the same state that it normally goes into after
powering on.
Get System Serial Number| SYStem:SERial?| Returns the serial number as a
string.
Trigger Sleep| SYStem:SLEEP| Puts the system in standby and returns a 1
on receipt of command.
Trigger Wake| SYStem:WAKE| Brings the system out of standby and
returns a 1 on receipt of command.
Set System Wavelength| SYStem:WAVElength: N| N is the positive integer
value 1310, 1550, or 1590 with units of nm. This command sets the system
wavelength, which is used to selected which calibration values to use when
configuring the VOA and when evaluating the power measurements made at the
taps. Setting the system wavelength optimizes the instrument for use at that
wavelength. Setting this value is equivalent to using the touchscreen GUI to
set the system wavelength.
Get System Wavelength| SYStem:WAVElength?| Returns a positive integer
value of 1310, 1550, or 1590 with units of nm that correspond to the current
system wavelength setting.
Command| Syntax| Description
---|---|---
Set Red LED Brightness| RGB:RED: N| N is an integer value between 0 and
100, which is used to set the brightness of the red LEDs that contribute to
the under-chassis accent lighting.
Get Red LED Brightness| RGB:RED?| Returns an integer value between 0 and
100, indicating the brightness of the red LEDs that contribute to the under-
chassis accent lighting.
Set Green LED Brightness| RGB:GREEN: N| N is an integer value between 0
and 100, which is used to set the brightness of the green LEDs that contribute
to the under-chassis accent lighting.
Get Green LED Brightness| RGB:GREEN?| Returns an integer value between 0
and 100, indicating the brightness of the green LEDs that contribute to the
under-chassis accent lighting.
Set Blue LED Brightness| RGB:BLUE: N| N is an integer value between 0
and 100, which is used to set the brightness of the blue LEDs that contribute
to the under-chassis accent lighting.
Get Blue LED Brightness| RGB:BLUE?| Returns an integer value between 0
and 100, indicating the brightness of the red LEDs that contribute to the
under-chassis accent lighting.
Set White LED Brightness| RGB:WHITE: N| N is an integer value between 0
and 100, which is used to set the brightness of the White accent lighting.
Get White LED Brightness| RGB:WHITE?| Returns an integer value between 0
and 100, indicating the brightness of the White accent lighting.
Set LEDs Power Mode| RGB:POWer: N|
N is a positive integer between 0 and 2, inclusive. Set this value to select the Accent lighting mode. The mode associated with each value is:
· 0: Accent lighting OFF.
· 1.Accent lighting is ON and the Red, Green and Blue can be changed independently to control the hue and the brightness.
· 2:Accent lighting is ON and the Red, Green and Blue are controlled simultaneously to create the White accent lighting. The White can be changed to control the brightness.
Get LED Power Status| RGB:POWer?| Returns a positive integer between 0 and 2, inclusive, corresponding to the current Accent lighting mode. The mode associated with each value is defined in the Set LEDs Power Mode description.
Variable Optical Attenuator (VOA) Commands
The VOA commands described in this section apply to all MX / MBX / TLX1 / TLX2 instrument Item #s. These commands are provided for controlling the VOA and determining its status are described in the following tables.
Command | Syntax | Description |
---|---|---|
Set the Optical Attenuation Value | VOA:ATTen: N | N is a floating point |
value between 1.0 and 20.0, inclusive, with units of dB. This command sets
optical attenuation of the VOA and returns 1 on receipt of command. If set
while operating in constant power mode, the operation of the VOA will not be
affected. Instead, the value will be cached and applied when constant
attenuation mode is activated.
Get the Optical Attenuation Value| VOA:ATTen?| Returns the attenuation
setting of the VOA as a floating point value between 1.0 and 20.0, inclusive,
with units of dB.
Get Difference between Actual and Setpoint Attenuation| VOA:ERRor?|
Returns the difference between the attenuation provided by the VOA and the
attenuation setpoint value as a floating point value with units of dB.
Get Measured Attenuation Provided by VOA| VOA:MEASured?| Returns the
value of attenuation provided by the VOA as a floating point value with units
of dB. The value of attenuation is the calculated ratio of the optical power
measured before and after the VOA.
Set VOA Mode to Constant Optical Output| VOA:MODE: 1| Sets the VOA mode
to constant optical output power and returns 1 on receipt of command. While
operating in this mode, the optical power measured after the VOA is monitored
and the VOA bias voltage is adjusted to maintain the requested optical output
power. Holding the optical output power constant requires adequate optical
power input.
Set VOA Mode to Constant Attenuation| VOA:MODE: 0| Sets the VOA mode to
constant optical attenuation and returns 1 on receipt of command. While
operating in this mode, optical power levels measured before and after the VOA
are monitored. The VOA bias voltage is adjusted to maintain the specified
ratio between the two.
Get VOA Mode| VOA:MODE?| Returns 0 if the VOA mode is set to constant
optical attenuation and 1 if the VOA mode is set to constant optical output
power.
Set the Optical Output Power Value in dBm| VOA:OUTput:DBM: N| N is
interpreted as a floating point value between -20.0 and 20.0, inclusive, and
the units are dBm. This command sets optical output power of the VOA and
returns 1 on receipt of command. While this range exceeds the maximum power
output of the built-in laser, the entire range is supported to accommodate the
use of higher-power external laser sources. If this value is set while
operating in constant attenuation mode, it will not affect the operation of
the VOA. In this case, the value will be cached and applied when constant
power mode is activated.
Get the Optical Output Power Value in dBm| VOA:OUTput:DBM?| Returns the
power setting of the VOA as floating point value between -20.0 and 20.0,
inclusive, with units of dBm.
Command| Syntax| Description
---|---|---
Set the Optical Output Power Value in mW| VOA:OUTput:MW: N| N is a
floating point value between 0.01 and 100.0, inclusive, and the units are mW.
This command sets optical output power of the VOA and returns 1 on receipt of
command. While this range exceeds the maximum power output of the built-in
laser, the entire range is supported to accommodate the use of higher-power
external laser sources. If this value is set while operating in constant
attenuation mode, it will not affect the operation of the VOA. In this case,
the value will be cached and applied when constant power mode is activated.
Get the Optical Output Power Value in mW| VOA:OUTput:MW?| Returns the
power setting of the VOA as a floating point value between 0.01 and 100.0,
inclusive, with units of mW.
Set VOA Power On| VOA:POWer: 1| Sets the VOA power to “on” and returns 1
on receipt of command. When the VOA is powered on, an active and automatic
software control loop is engaged to vary the VOA bias voltage. This maintains
the requested attenuation level, or optical output power, depending on the VOA
operating mode.
Set VOA Power Off| VOA:POWer: 0| Sets the VOA power to “off” and returns
1 on receipt of command. As VOA is in-line with the optical path, there is an
insertion loss associated with it. When the VOA is powered off, the VOA bias
voltage is set to 0.0 V, which minimizes the optical attenuation through the
VOA.
Get VOA Power Status| VOA:POWer?| Returns 0 if the VOA power is set to
“off” and 1 if the VOA power is set to “on.”
Get VOA Status| VOA:SETpoint?| A 1 is returned, and a steady green dot
shows in the VOA field of the instrument’s touchscreen, if the attenuation
provided by the VOA is within 0.1 dB of the attenuation setpoint. The
attenuation provided by the VOA is the calculated ratio of the optical power
measured before and after the VOA. The attenuation setpoint references the
last requested power setting if operating in constant power mode, and it
references the last requested attenuation setting if operating in constant
attenuation mode. If the difference between the attenuation provided by the
VOA and the attenuation setpoint is >0.1 dB, a 0 is returned.
This command returns a valid value whether or not the VOA is powered on.
Get Optical Power Output by the VOA in dBm| VOA:TAP:DBM?| Returns the
measured optical output of the VOA as a floating point value with units of
dBm.
Get Optical Power Output by the VOA in mW| VOA:TAP:MW?| Returns the
measured optical output of the VOA as a floating point value with units of mW.
Remote Control Software
Thorlabs provides a software tool for computers running Windows operating systems (Windows 7 and later). The Remote Control application is primarily intended to be used as a reference example as well as a tool for exploring the behavior of and interactions between the various remote control commands. Use it to experiment with all of the currently supported laser and VOA commands, as well as to see examples of the outgoing commands and replies from the MX / MBX / TLX1 / TLX2 instrument. This tool sends serial commands to the instrument, but this application software is not intended for system integration, as it does not support running scripts or processes.
Installing the Software and Opening a Connection with the Instrument
Begin by downloading the application software by visiting the following link,
typing in the Item # of the MX / MBX / TLX1 / TLX2 instrument, and clicking on
the Software Download Icon shown in the list of files available for download.
https://www.thorlabs.com/manuals.cfm
Unzip the file whose name begins with “RCUP.” Keep the “Remote Control Utility
Program.exe” file in the same directory with the “platforms” folder and other
supporting files, as the application will not run if these are separated.
Before running the application, connect the MX / MBX / TLX1 / TLX2 instrument
and the controlling computer using the appropriate cabling as described in
Section 1.2. Power on the instrument and ensure the power button on the front
panel is glowing green and the touchscreen is active. Wait until the computer
discovers the instrument, and then launch the application. The application
window is shown in Figure 7. The actual application window does not include
the red, green, blue, violet and orange outlines shown in Figure 7, these
outlines were drawn on an image of the window for illustrative purposes.
Select the “Connection Type” radio button corresponding to the utilized
connector on the instrument. (The locations of the radio buttons are indicated
by the red outline in Figure 7.) Then click the “Connect” button to open a
connection to the instrument.
After clicking the “Connect” button, the “Status” field, which is located at
the bottom of the region enclosed by the green outline, should show a number
of lines of text. If the application established a connection with the
instrument, the text shown in the status field will conclude with “Device
Opened Successfully.”
If a connection was not established between the computer and instrument, the
text in the “Status” field will note the failure. A common reason for a
failure to connect is that the instrument has not been recognized by the
computer; the software cannot find the instrument unless it has been
discovered by the computer. It may take up to 30 seconds for the computer to
recognize the instrument. If the device fails to open successfully, we
recommend closing the Remote Control application, waiting a few seconds, re-
opening the application, and attempting again to connect to the instrument.
Other reasons the application may fail to successfully open a connection to
the instrument include the connection already being open or another copy of
the application running. If none of these are the source of the problem, and
the problem persists when a different USB cable is used, please contact
Thorlabs’ Technical Support for assistance.
Using the Remote Control Application
When using the application, clicking the buttons located at the top of the application window sends serial commands to the MX / MBX / TLX1 / TLX2 instrument. The results of clicking the buttons are logged in the three rectangular text fields, which are bordered by the green outline in Figure 7. The commands sent by the computer are written to the PC Output field, the data sent back from the instrument in response to the commands are written to the Remote Instrument Output field, and the status of the software is written to the Status field.
Command responses can be saved or cleared from the Remote Instrument Output field by using the Save and Clear buttons to the right of the Remote Instrument Output field and bordered in an orange outline in Figure 7.
Commands sent by the computer and written to the PC Output field can be saved
or cleared by using the Save and Clear buttons to the right of the PC Output
field and bordered in the orange outline in Figure 7. Properly formatted text
files, either by using the save of the PC Output field or by user entry, which
contain SCPI commands can be loaded to the application using the Load button.
Once loaded, the user can select the Start button to begin to send, in
sequence, the loaded text file SCPI commands to the MX/MBX/TLX1/TLX2
instrument. Once started, the user may select the Stop button to stop sending
commands to the MX/MBX/TLX1/TLX2 instrument. Hitting the Start button again
will begin the sequence at the start of the loaded file.
The following examples illustrate the operation of the software and the
interaction between the software and the touchscreen interface on the front
panel of the MX / MBX / TLX1 / TLX2 series instrument that includes a built-in
laser, such as the MX40G.
Example: Using the Application to Change the Laser’s ITU Channel
- Adjust the “Channel” control (within the blue outline) to 5.
- Click the “Set Channel” button (within the violet outline).
- The text “LAS:CHAN 5”, which is the command sent to the instrument, is printed to the “PC Output” field (within green outline).
- After a short delay, the text “1” is printed to the “Remote Instrument Output” field (within green outline). This indicates the command was received by the instrument.
- The text printed to the “Status” field indicates the response was received.
- Click the “Get Channel” button (below the violet outline).
- The text “LAS:CHAN?” , which is the command sent to the instrument, is printed to the “PC Output” field (within green outline).
- After a short delay, the text “5”, which is the most recent ITU channel requested, is printed to the “Remote Instrument Output” field (within green outline).
Example: Using the Software Application with the MX40G’s Front Panel Touchscreen
- Navigate to the Laser Settings Page, which is shown in Figure 8, from the Home Screen
- Use the Laser Settings Page to change the ITU Chanel to 6.
- Click the “Get Channel” button (within the violet outline) in the Remote Control Application.
- The text “LAS:CHAN?” , which is the command sent to the MX40G, is printed to the “PC Output” field (within green outline).
- After a short delay, the text “6”, which is the ITU channel entered using the touchscreen, is printed to the “Remote Instrument Output” field (within green outline).
Software Application Screenshots
The functions in the Laser tab (Figure 9) correspond to the commands described in Section 2.3: Laser Control Commands
The functions in the VOA tab (Figure 10) correspond to the commands described in Section 2.6: Variable Optical Attenuator (VOA) Commands.
The functions in the Amp tab (Figure 11) correspond to the commands described in Section 2.2: RF Amplifier Commands.
The functions in the MZM Bias tab (Figure 12) correspond to the commands described in Section 2.4: Mach-Zehnder EO Intensity Modulator Commands.
The functions in the System tab (Figure 13) correspond to the commands described in Section 2.5: System Commands.
Custom Application Development
One option for users interested in developing custom software is to use our
Remote Control application as a reference and starting point. Please contact
us to request the source code. Using this source code and a development
platform such as free version of the Qt® software, our example application can
be modified and expanded.
When the computer is connected to the RS-232 port on the MX / MBX / TLX1/ TLX2
series instrument, commands are sent directly to the instrument’s universal
asynchronous receiver/transmitter (UART). This is not the case for
applications communicating with the instrument over USB. In this case,
commands sent by the computer address a Silicon Labs® USB to UART bridge chip
built into the instrument. The UART is interfaced to the bridge chip. A
dynamic-link library (DLL) available from Silicon Labs’ website can be used to
communicate with the bridge chip.
If you have questions or would like guidance as you develop a custom test
configuration, please contact us. We are happy to assist you.
Thorlabs Worldwide Contacts
For technical support or sales inquiries, please visit us at www.thorlabs.com/contact for our most up- to-date contact information.
USA, Canada, and South America Thorlabs, Inc.
sales@thorlabs.com
techsupport@thorlabs.com
Europe
Thorlabs GmbH
europe@thorlabs.com
France
Thorlabs SAS
sales.fr@thorlabs.com
Japan
Thorlabs Japan, Inc.
sales@thorlabs.jp
UK and Ireland
Thorlabs Ltd.
sales.uk@thorlabs.com
techsupport.uk@thorlabs.com
Scandinavia
Thorlabs Sweden AB scandinavia@thorlabs.com
Brazil
Thorlabs Vendas de Fotônicos Ltda. brasil@thorlabs.com
China
Thorlabs China
chinasales@thorlabs.com
References
- Thorlabs, Inc. - Your Source for Fiber Optics, Laser Diodes, Optical Instrumentation and Polarization Measurement & Control
- Thorlabs, Inc. - Your Source for Fiber Optics, Laser Diodes, Optical Instrumentation and Polarization Measurement & Control
- Thorlabs - Your Source for Fiber Optics, Laser Diodes, Optical Instrumentation and Polarization Measurement & Control.
Read User Manual Online (PDF format)
Read User Manual Online (PDF format) >>