12.3. Starting the GUI for the RC-bus through an MxDC device

The set up for this is a bit more involved because it operates over the slow-controls server that is built into the VMUSBReadout program.

  1. The very first step is to connect the NIM busy output of the Mesytec digitizer (MADC-32, MTDC-32, or MQDC-32) to the MCFD-16 and to properly terminate the bus with 50 ohms.

  2. The next step is to set up the VMUSBReadout program to receive remote requests for the RC-bus. To do so, the user should add the following code to their ctlconfig.tcl script.

          Module create mxdcrcbus myproxy
              Module config myproxy -base 0xffff0000

    This causes a new slow controls module named "myproxy" to be loaded into the server that seeks to fulfull RC-bus requests through a device at base address 0xffff0000. Of course, this will only work when the device at the specified base address is a Mesytec family digitizer (MADC-32, MTDC-32, or MQDC-32).

  3. The user must next start up VMUSBReadout. This can be done by executing the ReadoutShell with VMUSBReadout registered as a data provider and then pressing the "Start" button. It can alternatively be accomplished by starting VMUSBReadout from the commmand-line. It really doesn't matter so long as VMUSBReadout is running.

    By default, the slow-controls server will listen for connections on port 27000. This can be different if the host computer is running other programs that were listening on that port first. If the user suspects that the latter is the case, the port can be found by executing lsof -i TCP in a terminal. Find the row associated with your VMUSBReadout program by searching for the pid. The port being listened on will be listed in the right-hand column.

  4. With the slow-controls server up and running, the user can then go to a new shell and type:

          MCFD16Control --protocol mxdcrcbus --module myproxy

    By default, this assumes that the --host is localhost, --port is 27000, and --devno is 0. The first two of these are probably correct unless other slow-controls servers are running. In which case, the user should determine the relevant information as described in the prior step. The device number (--devno) is the number of the device as it is identifiable by the RC-bus. For the MCFD-16, this is set via a switch on the back of the device.

  5. The user will then be presented with the following display and should control the parameters through the various widgets. The state of the GUI is not committed to the device until the "Commit to Device" button is pressed. If the user seeks to read the state of the device, the "Update from Device" button should be pressed.

    Figure 12-2. MCFD16Control Graphical User Interface for MxDC-RCbus