Commands
The switch matrix firmware implements a simple SCPI interface to allow remote devices to control the device operation. It supports communication over both Serial and Ethernet.
A overview of the available SCPI commands can be seen here:
Here follows a more detailed documentation of the available commands.
A note on SCPI
Most commands can either perform a set operation, changing the state of the device, or a query operation, querying the state of the device. Query operations always end in a question mark (?). For example,
SWitch1:PULSe 10
changes the pulse length applied to Switch 1 to 10 ms, whileSWitch1:PULSe?
queries the currently set pulse length of Switch 1.A command starting with an asterisk (*) is a common command as defined by the SCPI standard. They always consist of three letters.
Furthermore, The SCPI standard specifies that a command can be abbreviated to only the capitalized part of the command name. This means that e.g.
SWitch1:INVert?
can equivalently be abbreviated toSW1:INV?
.
Configuration commands
These commands are primarily used to change the Ethernet settings of the device, and to query the corresponding settings.
*IDN?
: Returns the ID of this deviceIP <ip>
: Sets the IP-address of the deviceIP?
: Queries the IP-address of the deviceDNS <ip>
: Sets the DNS address of the deviceDNS?
: Queries the DNS address of the deviceGATEWAY <ip>
: Sets the Gateway IP-address of the deviceGATEWAY?
: Queries the Gateway IP-address of the deviceSUBNET <ip>
: Sets the subnet mask of the deviceSUBNET?
: Queries the subnet mask of the device
Control commands
These commands control the operation of the switch matrix. Individual switches are addressed through subcommands of the SWitch#
command, where #
is an integer. How many switches are available is depends on the chosen firmware configuration, set when flashing the microcontroller firmware during assembly.
*RST
: Resets all switches to have no connected portsSWitch#:PORT 0-6
: Connects the common pole of the switch to port 1-6. Set to 0 to open all ports.SWitch#:PORT?
: Queries currently connected port.SWitch#:PULSe <ms>
: Sets the length of the control pulse being sent to the switch to the given length (in milliseconds).SWitch#:PULSe?
: Queries the current pulse length.SWitch#:INVert 0|1
: If set to 1, inverts the control pulse current direction.SWitch#:INVert?
: Queries whether the current direction is inverted.SWitch#:*RST
: Resets the switch regardless of state, leaving no ports connected.