XIA Pixie-16 MZ-TrigIO User manual

Pixie-16 MZ-TrigIO
User Manual
Version 0.51
October 18, 2019
Hardware Revisions: A
Software Revision: 0x1002
Firmware Revision and Variants:
0x0001 (standard)
XIA LLC
31057 Genstar Rd
Hayward, CA 94544 USA
Email: [email protected]
Tel: (510) 401-5760; Fax: (510) 401-5761
http://www.xia.com/
Information furnished by XIA LLC is believed to be accurate and reliable. However, no responsibility is assumed by
XIA for its use, or for any infringements of patents or other rights of third parties which may result from its use. No
license is granted by implication or otherwise under any patent or patent rights of XIA. XIA reserves the right to
change hardware or software specifications at any time without notice.

Pixie-16 MZ-TrigIO Manual Version 0.51
© 2019 XIA LLC 2
Contents
Safety ............................................................................................................................................................ 4
Specific Precautions .................................................................................................................................. 4
Power Source ........................................................................................................................................ 4
User Adjustments/Disassembly ............................................................................................................ 4
Voltage Ratings ..................................................................................................................................... 4
Servicing and Cleaning ......................................................................................................................... 4
Linux Passwords ................................................................................................................................... 4
Linux Backup ........................................................................................................................................ 4
Warranty Statement ...................................................................................................................................... 5
Contact Information: ................................................................................................................................. 5
Manual Conventions ..................................................................................................................................... 6
1 Introduction ........................................................................................................................................... 7
1.1 Pixie-16 MZ-TrigIO Features ....................................................................................................... 7
1.2 Specifications ................................................................................................................................ 8
1.3 System Requirements .................................................................................................................... 9
1.3.1 Drivers and Software ............................................................................................................ 9
1.3.2 Input Signals ......................................................................................................................... 9
1.3.3 Power Requirements ............................................................................................................. 9
1.3.4 Connectors and Cabling ...................................................................................................... 10
1.4 Software and Firmware Overview .............................................................................................. 10
1.5 Support ........................................................................................................................................ 10
2 Setup ................................................................................................................................................... 11
2.1 Power .......................................................................................................................................... 11
2.2 Serial Port (USB-UART) ............................................................................................................ 11
2.3 SSH login .................................................................................................................................... 12
2.4 Web Interface .............................................................................................................................. 12
2.5 SMB (Samba) .............................................................................................................................. 13
2.6 Required Initial Linux Commands .............................................................................................. 13
2.7 Useful Linux Commands ............................................................................................................ 13
2.8 Direct Network Connection between Pixie-16 MZ-TrigIO and a Windows PC ........................ 14
3 Pixie-16 MZ-TrigIO Operation........................................................................................................... 16
3.1 Adjust Parameters ....................................................................................................................... 16
3.2 Data Acquisition Monitoring ...................................................................................................... 17
3.3 User Interface Options ................................................................................................................ 17
3.3.1 Terminal .............................................................................................................................. 17
3.3.2 Terminal and Webpages ...................................................................................................... 17
3.3.3 Terminal, SMB and Windows programs ............................................................................ 18
3.3.4 Webpage-Only Operation ................................................................................................... 18
3.3.5 On-board ROOT Graphical User Interface ......................................................................... 19
4 API functions ...................................................................................................................................... 20
4.1 progfippi ...................................................................................................................................... 20
4.2 runstats, cgistats .......................................................................................................................... 20
4.3 clockprog..................................................................................................................................... 21
4.1 monitordaq .................................................................................................................................. 21

Pixie-16 MZ-TrigIO Manual Version 0.51
© 2019 XIA LLC 3
5 Web Pages........................................................................................................................................... 22
5.1 index.html ................................................................................................................................... 22
5.2 rspage.html, cgistats.cgi .............................................................................................................. 23
6 Parameters in the Settings Files .......................................................................................................... 24
6.1 System Parameters ...................................................................................................................... 24
6.2 Local Control .............................................................................................................................. 25
6.3 Trigger Control Parameters ......................................................................................................... 26
7 Data Formats ....................................................................................................................................... 28
7.1 Status Files (RS.csv) ................................................................................................................... 28
8 Registers Visible to Linux .................................................................................................................. 30
8.1 Input/Output Registers ................................................................................................................ 30
8.2 Output Registers .......................................................................................................................... 32
9 Linux Configuration ........................................................................................................................... 34
9.1 Licensing Information ................................................................................................................. 34
9.2 Software Information .................................................................................................................. 34
10 Board Architecture .............................................................................................................................. 38
10.1 Connections ................................................................................................................................. 38
10.1.1 Backplane Connections ....................................................................................................... 38
10.1.2 Front Panel Connections ..................................................................................................... 39
10.1.3 Zynq SOM Connections ...................................................................................................... 40
10.1.4 Custom Connections ........................................................................................................... 40
10.2 Power .......................................................................................................................................... 40
10.3 Clocks ......................................................................................................................................... 41
10.4 IEEE 1588 Precision Timing Protocol ........................................................................................ 41
10.4.1 Overview ............................................................................................................................. 41
10.4.2 PTP Stack Software: LinuxPTP .......................................................................................... 42
10.4.3 PTP PHY Control Software: ptp-mii-tool ........................................................................... 43
10.4.4 PTP Clock PLL Control Software: clockprog .................................................................... 43
10.4.5 Reduced General Purpose Functionality ............................................................................. 44
11 Hardware Information ......................................................................................................................... 45
11.1 Jumpers ....................................................................................................................................... 45
12 Information for Programmers ............................................................................................................. 46
12.1 Software Information .................................................................................................................. 46
12.1.1 File structure ....................................................................................................................... 46
12.1.2 Parameter Definitions ......................................................................................................... 47
12.1.3 FPGA registers .................................................................................................................... 47
12.1.4 Status Registers cgi vs file vs page .................................................................................. 47
12.1.5 Other Notes ......................................................................................................................... 47
12.2 Firmware Information ................................................................................................................. 47
13 Daughter Card Options ....................................................................................................................... 48
13.1 Daughter Card MZTIO_MEZZ01 .............................................................................................. 48

Pixie-16 MZ-TrigIO Manual Version 0.51
© 2019 XIA LLC 4
Safety
Please take a moment to review these safety precautions. They are provided both for your
protection and to prevent damage to the Pixie module and connected equipment. This
safety information applies to all operators and service personnel.
Specific Precautions
Power Source
The Pixie-16 MZ-TrigIO module is powered through an AC/DC wall adapter or a PXI
backplane. The default adapter has a variety of AC plug attachments for different localities.
Please remember to shut down the Linux OS before removing the power plug from the
Pixie-16 MZ-TrigIO or powering down the PXI chassis.
User Adjustments/Disassembly
To avoid personal injury, and/or damage, always disconnect power before accessing the
modle ineio. Thee ae a few jumpers related to clocking on the board that
experienced users may want to use.
Voltage Ratings
Signals on the inputs and outputs must not exceed ± 3.3V. Please review the pinout in the
appendix before making any connections.
Daughtercards
Daughtercards can be used as alternatives to front panel and rear inputs, which requires
caution to avoid conflicts from FPGA outputs and standard connector inputs.
Servicing and Cleaning
To avoid personal injury, and/or damage to the Pixie module or connected equipment, do
not attempt to repair or clean the inside of these units.
Linux Passwords
The Pixie-16 MZ-TrigIO Linux OS comes with default user IDs and passwords for 1) SSH
login, 2) SMB file sharing, and 3) Web Operations as described below. Users should
immediately change these passwords, especially when the Pixie-16 MZ-TrigIO is
conneced o eenal neok. Don le hacke ake over your Pixie-16 MZ-TrigIO!
Linux Backup
The Pixie-16 MZ-TrigIO Lin OS i oed on a emoable SD cad. SD cad file
systems can become corrupted, which would crash the Linux system and make the Pixie-
16 MZ-TrigIO unable to operate. Therefore periodic backup of the SD card is
recommended, for example using Win32DiskImager. (Byte for byte copy is required).
Note that all Linux passwords are stored on the SD card.

Pixie-16 MZ-TrigIO Manual Version 0.51
© 2019 XIA LLC 5
Warranty Statement
XIA LLC warrants that this product will be free from defects in materials and workmanship
for a period of one (1) year from the date of shipment. If any such product proves defective
during this warranty period, XIA LLC, at its option, will either repair the defective products
without charge for parts and labor, or will provide a replacement in exchange for the
defective product.
In order to obtain service under this warranty, Customer must notify XIA LLC of the defect
before the expiration of the warranty period and make suitable arrangements for the
performance of the service.
This warranty shall not apply to any defect, failure or damage caused by improper uses or
inadequate care. XIA LLC shall not be obligated to furnish service under this warranty a)
to repair damage resulting from attempts by personnel other than XIA LLC representatives
to repair or service the product; or b) to repair damage resulting from improper use or
connection to incompatible equipment.
THIS WARRANTY IS GIVEN BY XIA LLC WITH RESPECT TO THIS PRODUCT IN
LIEU OF ANY OTHER WARRANTIES, EXPRESSED OR IMPLIED. XIA LLC AND
ITS VENDORS DISCLAIM ANY IMPLIED WARRANTIES OF
MERCHANTABILITYOR FITNESS FOR A PARTICULAR PURPOSE. XIAS
RESPONSIBILITY TO REPAIR OR REPLACE DEFECTIVE PRODUCTS IS THE
SOLE AND EXCLUSIVE REMEDY PROVIDED TO THE CUSTOMER FOR BREACH
OF THIS WARRANTY. XIA LLC AND ITS VENDORS WILL NOT BE LIABLE FOR
ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
IRRESPECTIVE OF WHETHER XIA LLC OR THE VENDOR HAS ADVANCE
NOTICE OF THE POSSIBILITY OF SUCH DAMAGES.
Contact Information:
XIA LLC
31057 Genstar Rd.
Hayward, CA 94544 USA
Telephone: (510) 401-5760
Downloads: http://support.xia.com
Hardware Support: [email protected]
Software Support: [email protected]

Pixie-16 MZ-TrigIO Manual Version 0.51
© 2019 XIA LLC 6
Manual Conventions
The following conventions are used throughout this manual
Convention
Description
Example
»
The » symbol leads you
through nested menu items
and dialog box options.
The sequence
File»Page Setup»Options directs you to pull
down the File menu, select the Page Setup
item, and choose Options from the sub menu.
Bold
Bold text denotes items that you
must select or click on in the
software, such as menu items,
and dialog box options.
...click on the MCA tab.
[Bold]
Bold text within [ ] denotes a
command button.
[Start Run] indicates the command button
labeled Start Run.
Monospace
Items in this font denote text
or characters that you enter
from the keyboard, sections
of code, file contents, and
syntax examples.
Setup.exe efe o a file called ep.ee
on the host computer.
window
Text in quotation refers to
window titles, and quotations
from other sources
Opion indicae he indo acceed ia
Tools»Options.
Italics
Italic text denotes a new term
being introduced , or simply
emphasis
peaking time refers to the length of the slow
filter.
...it is important first to set the energy filter Gap
so that SLOWGAP to at least one unit greater
than the preamplifier risetime...
<Key>
<Shift-Alt-
Delete> or
<Ctrl+D>
Angle brackets denote a key
on the keybord (not case
sensitive).
A hyphen or plus between
two or more key names
denotes that the keys should
be pressed simultaneously
(not case sensitive).
<W> indicates the W key
<Ctrl+W> represents holding the control key
while pressing the W key on the keyboard
Bold italic
Warnings and cautionary text.
CAUTION: Improper connections or settings
can result in damage to system components.
CAPITALS
CAPITALS denote DSP
parameter names
SLOWLEN is the length of the slow energy
filter
SMALL CAPS
SMALL CAPS are used for
panels/windows/graphs in the
GUI.
go o he MCADISPLAY panel and o ee

Pixie-16 MZ-TrigIO Manual Version 0.51
© 2019 XIA LLC 7
1 Introduction
The Pixie-16 MZ-TrigIO is a Zynq System on Module
1
(SoM) combined with an
input/output carrier board. The Zynq is a combination of an FPGA (Programmable Logic,
PL) with an ARM processor (Processing System, PS). The PL captures the ADC data and
applies digital pulse processing. The PS runs a basic Linux OS with gcc, webserver, etc; it
has USB and Ethernet peripherals and 1GB of memory.
The Pixie-16 MZ TrigIO carrier board is primarily a 6U breakout board for the Pixie-16
custom PXI chassis backplane. It connects ~48 lines from the backplane to one of the SOM
headers. Another ~48 lines from the second SOM header connect to front panel I/O via
LVDS I/O buffers and RJ-45 connectors for CAT-5 cables. The backplane and front panel
connecion ae alo conneced o 0.1 heade o allo diec acce ia cable o com
signal I/O via daughtercards. The SOM can be accessed via USB/UART on its native
connectors (via cabling though an empty slot) but mainly via a PTP
2
compatible 10/100M
Ethernet port on the front panel.
Besides being operated in the Pixie-16 PXI chassis, the Pixie-16 MZ TrigIO can also be
operated as a standalone desktop unit. The front panel LVDS connectors can be directly
used in desktop mode; the backplane connections are only available with custom
daughtercards or cables. When operated in a standard 6U PXI chassis, connectors J3 and
J4 have to be removed and no backplane I/O is available.
1.1 Pixie-16 MZ-TrigIO Features
The Pixie-16 MZ-TrigIO is designed to route signals from the backplane (rear connectors)
to the front panel (front connectors) and make logical combinations between them in FPGA
fabric. It has the following features and capabilities:
Ethernet programmable trigger/coincidence control module for the Pixie-16
48+ Pixie-16 backplane trigger connections to local Zynq processor
48 front panel LVDS connections to local Zynq processor
MicroZed Zynq processor with embedded Linux, acting as a standalone PC with
built-in SD card drive, USB host, 10/100 Ethernet, webserver, etc
1588 PTP and SyncE clock synchronization
Open source user access to software and firmware
Use as standalone desktop unit or in 6U PXI chassis
Custom I/O standards via daughtercards
1
Model Avnet MicroZed 7020
2
IEEE 1588 Precision Time Protocol

Pixie-16 MZ-TrigIO Manual Version 0.51
© 2019 XIA LLC 8
1.2 Specifications
Front Panel I/O
LVDS
Input/Output (48x)
12 RJ-45 connectors for general purpose LVDS I/O with CAT-5 cables
4 signal pairs each
programmable input or output direction for each signal individually
Vio H/L: +/- 100 mV
Ethernet
1 RJ-45 connector for 10/100M Ethernet
PTP and SyncE compatible
Clock Input/Output
1 MMCX coaxial connector
jumper selectable input or output
3.3V signaling standard
Power
(desktop mode only)
12V DC in.
AC adapter requirements: 12V, 10W
Barrel Plug 2.1mm I.D. x 5.5mm O.D., center positive
Rear Panel I/O
PXI J1
Used only for power, 3.3V and 5V
5V ~ 1A
3.3V ~1 A
PXI J2 (part)
PXIe XJ4
Used only for PXI clock
input to PXI_CLKIN (if located in PXI slot 2)
output from PXI_CLK
typically 50 MHz in Pixie-16 chassis, 10 MHz default chassis
PXI J3
18 backplane 3.3V trigger signals (Pixie-16 EB_Data and EB_Control)
1 clock output to right neighbor
PXI J4
34 backplane 3.3V trigger signals (Pixie-16 TriggerAll and Control)
On-Board I/O
Zynq Processor
1 USB 2.0
1 USB-UART
1 RJ45 Ethernet (10/100/1000M)
1 SD card slot
Other I/O
6 34-pin 0.1 heade fo cable o daghecad,
connecting to front/rear I/O signals (no cable drivers)
Embedded Processing
Processor
Xilinx Zynq
Data Interfaces
10/100/1000 Ethernet
USB 2.0 (host)
USB-UART

Pixie-16 MZ-TrigIO Manual Version 0.51
© 2019 XIA LLC 9
Memory
1 GB of DDR3 SDRAM
128 Mb of QSPI Flash
16 GB micro SD card (removable)
Operating System
Linux (Xillinux based on Ubuntu 15)
Operates from Linux partition on SD card
Digital Controls
Trigger Routing
and Coincidence
Firmware demo code to
- control connections between backplane and front panel
- compute multiplicity
- test for coincidence
FPGA register
programming
C software to
- program FPGA registers that enable or disable connections.
- read FPGA status registers
Time
synchronization
C software (LinuxPTP) to operate IEEE 1588 PTP timers and adjust local
clock to network clock master
C software to define PTP timed triggers
Table 1-1. Specifications for the Pixie-16 MZ-TrigIO
1.3 System Requirements
The system considered here consists of a Pixie-16 MZ-TrigIO and Pixie-16 pulse processor
system for radiation detectors in a PXI chassis. Optional connections can be made to
external electronics. A PC, smartphone or tablet is required to communicate with the Pixie-
16 MZ-TrigIO, but trigger routing and coincidence logic is fully contained in the Pixie-16
MZ-TrigIO itself.
1.3.1 Drivers and Software
The Pixie-16 MZ-TrigIO operates with an embedded Linux system that includes all
software and drivers to communicate with external devices via Ethernet or USB. It can
- Make status information available via webserver
- Read and write USB drives for data exchanges
- Share files over a Windows network
1.3.2 Input Signals
The Pixie-16 MZ-TrigIO is designed for fast rising, exponentially decaying signals. Step
pulses and short non-exponential pulses can be accommodated with specific parameter
settings. Staircase type signals from reset preamplifiers generally need to be AC coupled.
Input signals must not exceed ± 3.3V. The LVDS signaling standard is +/- 100 mV.
1.3.3 Power Requirements
The Pixie-16 MZ-TrigIO consumes roughly 10 W It requires following currents
In PXI mode from the backplane:
3.3V up to 1.0 A
5.0V up to 1.0 A
In desktop mode from the DC adapter
12V up to 1.0 A

Pixie-16 MZ-TrigIO Manual Version 0.51
© 2019 XIA LLC 10
1.3.4 Connectors and Cabling
The Pixie-16 MZ-TrigIO uses 12 RJ-45 connectors for the LVDS signal I/O. These
connectors are not capable of Ethernet connections.
The Pixie-16 MZ-TrigIO uses 1 RJ-45 connector for the Ethernet connection. Please verify
labels on the board to ensure using the correct connector for Ethernet.
A MMCX connectors are used for clock input/outputs. MMCX to BNC adapter cables are
provided with the module.
1.4 Software and Firmware Overview
The software of the Pixie-16 MZ-TrigIO consists of a small set of C programs (API
functions) applying settings to the PL, reading data from the PL, and storing it on the SD
card (or network drives). The API functions are called from the Linux command line or as
CGI scripts from a web page. Results can be viewed or downloaded via the web page, or
copied over the network. Configuration parameters are stored in an .ini file that can be
edited by the user to adjust parameter settings.
Firmware code for the PL on-board pulse processing functions is loaded to the PL as part
of the powerup boot sequence.
Users may modify the API functions (source code and gcc compiler is included in the Linux
environment on the SD card). Applications can be executed from the SD card or a mounted
USB drive.
More sophisticated graphical user interfaces can be developed, providing control buttons
and data analysis functions. Please contact XIA for details.
1.5 Support
A unique benefit of dealing with a small company like XIA is that the technical support for
our sophisticated instruments is often provided by the same people who designed them.
Our customers are thus able to get in-depth technical advice on how to fully utilize our
products within the context of their particular applications.
Please read through the following sections before contacting us. Contact information is
listed in the first few pages of this manual.

Pixie-16 MZ-TrigIO Manual Version 0.51
© 2019 XIA LLC 11
2 Setup
When powered up, the Pixie-16 MZ-TrigIO automatically boots the FPGA configuration
and starts the Linux OS. There are several ways for a user to connect to the Pixie-16 MZ-
TrigIO Linux OS:
1. Serial port via USB-UART
2. Network SSH terminal
3. Web server
4. SMB (Samba) file sharing
The typical procedure for setup would be to first to power up the Pixie-16 MZ-TrigIO (2.1),
then install and configure drivers for the serial port on a USB master PC (2.2). Log on via
serial port terminal, find the Pixie-16 MZ-TrigIO IP adde, and eece a fe ep
programs (2.5). After that, the Pixie-16 MZ-TrigIO can be operated through terminal, web
interface and/or SMB.
2.1 Power
To power up the Pixie-16 MZ-TrigIO in a PXI chassis, first verify power selection jumpers
ae e o PXI and inall he modle in an aailable PXI lo
3
. Then turn on the chassis
power.
To power up the Pixie-16 MZ-TrigIO in desktop mode, simply connect the 12V DC power
plug from the AC adapter. The center pin must be positive and the adapter must be rated
for 18W or more.
Several outputs and internal settings are undefined after powerup, so it is recommended to
log in quickly via serial port or SSH and apply the settings.
To power down the Pixie-16 MZ-TrigIO, first shut down the Linux OS (type halt), then
turn off chassis power or remove the 12V DC power plug (and UART cable).
2.2 Serial Port (USB-UART)
The serial port connection on the Zynq SOM is made via a micro USB cable. It requires a
driver to map the UART to a Windows serial port as well as a terminal running on the USB
master PC. Windows installation consists of the following steps:
1. Download and extract/install the Silicon Labs CP210x USB-to-UART driver from
www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers. For
more information, see
microzed.org/sites/default/files/documentations/CP210x_Setup_Guide_1_2.pdf
2. Download and install Tera Term (or other suitable terminal program). See
http://ttssh2.osdn.jp/
3. Connect USB cable between Zynq SOM board and PC, then power up the Pixie-16
MZ-TrigIO (see 2.1)
3
Note that the connections in J3 (EB_Data) connect within a PXI segment only (slots 1-7 or 8-14) while
connections in J4 connect to all slots (TrigegrAll).

Pixie-16 MZ-TrigIO Manual Version 0.51
© 2019 XIA LLC 12
(PC: any USB port, Pixie-16 MZ-TrigIO: micro USB port on [red] Zynq SOM
board)
4. From the Silicon Labs installation, run CP210xVCPInstaller_x64.exe to create a
COM port
- Find the new COM port nmbe in the Windows device manager
- The COM port assignment is device specific, so this has to be repeated
every time switching to a different Pixie-16 MZ-TrigIO unit. For the
same Pixie-16 MZ-TrigIO, this is a one-time operation.
5. Open Tera Term.
- Connect via the serial port showing the COM number above
- Select Setup > Serial port. Defaults are ok, except baud rate must be 115200
- Adjust the font and size if desired
- Currently, no login credentials are required for Linux login via serial port
On a Linux system, it is possible to use the Minicom utility as for serial port I/O. Usually
no installation or drivers are required. It can be configured via
sudo minicom –s
and by specifying ttyUSB0 as the port, with no HW flow control. See also
https://help.ubuntu.com/community/Minicom.
2.3 SSH login
Tera Term or another suitable program can be used to log in via the network once the Pixie-
16 MZ-TrigIO is powered, connected to a network, and its IP address is known. The IP
address can be found by
connecting via serial port terminal as described above, and typing ifconfig
log on to router, see list of connected devices
just try the one it had before, IP addresses seem fairly persistent through power
cycles
To connect, open a terminal and make connection to the Pixie-16 MZ-TrigIO IP adde.
Default ID/PW is root/xia17pxn (please change).
To poible fee SSH eminal pogam fo Andoid ae SSH Clien and JiceSSH,
allowing login from a tablet or smartphone.
2.4 Web Interface
Any web browser can be used to log in via the network once the Pixie-16 MZ-TrigIO is
powered, connected to a network, and its IP address is known. The IP address can be found
by
connecting via serial port terminal as described above, and typing ifconfig
log on to router, see list of connected devices
just try the one it had before, they seem fairly persistent through power cycles
To connect, enter the Pixie-16 MZ-TrigIO IP adde a he eb adde in your browser.
Any browser should work; XIA uses Firefox and does not test for compatibility with other
browsers. No password is required for the Pixie-16 MZ-TrigIO home page, however, login

Pixie-16 MZ-TrigIO Manual Version 0.51
© 2019 XIA LLC 13
is required for web operations duplicating terminal access (not yet implemented). The
default ID/PW is webops/xia17pxn (please change).
For proper operation of most links in the home page, prior execution of a function in the
Linux terminal is required. See below for details.
2.5 SMB (Samba)
The Pixie-16 MZ-TrigIO Linux OS is running Samba, a Windows interoperability suite
of programs for Linux and Unix. I allo he file in he Lin paiion of he Pixie-16
MZ-TrigIO SD card to be shared with Windows networking. By default, only one folder
is shared (/var/www) which is the location of the API functions.
To connect, type \\192.168.1.xxx\PNvarwww in the Windows Explorer location
bar, where 192.168.1.xxx is the IP Address of the Pixie-16 MZ-TrigIO found as
above and PNvarwww is the name given to /var/www for file sharing purposes in Samba.
Windows will prompt for login; the default ID/PW is root/xia17pxn (please change).
The settings file settings.ini, output data files, and all (source and executable) files
of the API functions can now easily be copied or edited with Windows tools and programs.
However, to execute the API functions, serial port or SSH login is required (or in some
cases, API functions can be executed from the web interface)
2.6 Required Initial Linux Commands
Once logged on via the Linux terminal or the web operations page, the following steps
must be performed:
1. Change directory: cd /var/www
This is the directory visible via the web server. Data created by execution of XIA
API functions can be read via the web browser from this directory. For convenience,
it contains a eleae of all XIA SW fnctions and is used as the default working
directory. (Not required for web operations page)
2. Apply settings to FPGA: ./progfippi
2.7 Useful Linux Commands
The following commands may be helpful
1. Type ifconfig to find the IP address
The network does not come up by itself occasionally. Type ifconfig eth1 up
xxx.xxx.xxx.xxx with a known allowed IP number to restart. The IP number
can be omitted in some cases. Or, for a change of restart, type sudo
/etc/init.d/networking restart else power cycle.
2. The temperature is reported as a raw number in
/sys/devices/soc0/amba/f8007100.adc/iio:device0/in_temp0
_raw; the actual temperature can be computed by subtracting 2219 and multiplying
with 0.12304. Board and Zynq temperatures are also reported in the status
information and by ./progfippi
3. To change a parameter value in the settings file without opening/editing/closing the
file, a sed command as follows can be used:

Pixie-16 MZ-TrigIO Manual Version 0.51
© 2019 XIA LLC 14
sed –i ‘/RUN_TYPE/c RUN_TYPE 1281 settings.ini
This replaces (-i = in the file) the line containing the string RUN_TYPE ih he
e RUN_TYPE 1281.
4. To mount a USB drive (e.g. to copy data or SW updates), type
mount /dev/sda1 /mnt/usb
/var is not a suitable directory to mount the USB stick, as it confuses the web server
5. Type date to verify Linux time automagically updated to UTC
6. Use the mount command to mount external network drives. For example, to mount
NASdrive/data from a PC with IP address 192.168.1.123, type
mount //192.168.1.123/data /mnt/data –o
“username=[user],password=[passwd]”
with the appropriate values filled in for [user] and [passwd]
7. To mount the SD card boot partition to a folder /mnt/sd, execute
mount /dev/mmcblk0p1 /mnt/sd
this is useful to update the boot files without removing the SD card. The Pixie-16
MZ-TrigIO has to be rebooted before the new boot files become effective.
8. To clear the command line history, type
history –c
history –w
2.8 Direct Network Connection between Pixie-16 MZ-TrigIO and a
Windows PC
The above description of setup and operation of the Pixie-16 MZ-TrigIO assumes both
Pixie-16 MZ-TrigIO and the user device (PC, tablet, smartphone) are connected to a local
network with DHCP server and gateway. Instead, it is possible to directly connect the
Pixie-16 MZ-TrigIO to a laptop or desktop with a standard Ethernet cable (no crossover
cable required). However, a number of configurations have to be set manually:
1. On the Pixie-16 MZ-TrigIO terminal, type ifconfig eth1 up 192.168.1.86
to bring up the Ethernet connection and assign the IP number. In some cases, eth0 or
eth2 has to be used instead of eth1.
2. On the Windows PC (here Windows 7), go to Start > Control Panel > Network and
Sharing Center > Change Adapter Settings > Local Area Connection

Pixie-16 MZ-TrigIO Manual Version 0.51
© 2019 XIA LLC 15
In the Local Area Connection Properties dialog, elec Inene Poocol Version 4
(TCP/IP4) and click Popeie.
In the properties dialog, set IP address, subnet mask, and gateway as shown above.
(The gateway is equal to Pixie-16 MZ-TrigIO IP adde.)
Note: The network will not be able to connect to the internet. The date/time of the Pixie-
16 MZ-TrigIO will likely be initialized to 1970.

Pixie-16 MZ-TrigIO Manual Version 0.51
© 2019 XIA LLC 16
3 Pixie-16 MZ-TrigIO Operation
Basic operation of the Pixie-16 MZ-TrigIO uses a combination of terminal commands and
web interface. The former controls all parameter settings (and possible DAQ monitoring)
and requires login to the system. The latter displays data and is accessible to anyone. This
provides a measure of security in instrument control while making it convenient to view
data.
3.1 Adjust Parameters
The FPGA parameters control the connections between backplane and front panel, for
example direction (front to back vs back to front) and output enable. In addition they
conol he poceing of he inp, fo eample bilding mliplici m and appling
coincidence tests.
All settings are stored in an .ini file. A default settings file, defaults.ini, contains all the
parameter settings as described in section 6. Settings are arranged into system (e.g.
requested run time), local logic, and triggers (e.g. enable front panel output). In the triggers
sections, each parameter is repeated 5 times; 3 times for the front panel groups (FRONT
A-C, 16 signals each, in 4 RJ-45 connectors) and the 2 times for the backplane groups
(TRIGGERALL with 32 signals and EBDATA with 16 signals). A condensed settings file,
settings.ini, contains the most important parameters and will override the defaults. The
normal method to change settings is to edit settings.ini and then execute ./progfippi
to apply them to the FPGA. If necessary, lines with additional parameters can be copied
from defaults.ini into settings.ini; also lines can be deleted from settings.ini if there is no
need to vary specific parameters. The file defaults.ini should be considered a read-only file.
Editing can be accomplished with a built-in Linux editor through the terminal (for example
VI) or by opening the file in a Windows editor through the SMB file sharing.
The most important parameters for initial setup are
FRONT_A_OUTENA Enable outputs on FPGA to LVDS buffer, one bit
set or cleared for each signal in group A.
LVDS_A_OUTENA Enable output of LVDS buffers to front panel
FRONT_A_OUTPUT_SELECT A number between 0 and 5 to choose which signal
to output
and equivalent for group B, C and the backplane groups
After execution of ./progfippi, you can also open/refresh the Status page in the web
browser or execute ./runstats and read the output parameters in the resulting RS.csv
file. The current state of the inputs, results of coincidence tests, temperatures, and FPGA
system time will be reported. In a Windows Explorer window pointing to
\\<Pixie_Net IP>\PNvarwww, the file RS.csv can be copied or opened by Windows
tools and programs.
The typical startup sequence (see also section 2.6) is to run ./progfippi pretty much
as soon as the modules is powered up to initialize all parameters in the FPGA logic. Every
time there is a change in settings.ini, run ./progfippi to apply the changes to the pulse
processing logic.

Pixie-16 MZ-TrigIO Manual Version 0.51
© 2019 XIA LLC 17
3.2 Data Acquisition Monitoring
The C funcion moniodaq is a template demonstrating how to periodically read FPGA
status registers and print them to file.
3.3 User Interface Options
There are a variety of interface options to operate the Pixie-16 MZ-TrigIO. They range
from basic terminal and file I/O to plug-ins for data acquisition or data analysis software.
Fundamentally, the Pixie-16 MZ-TrigIO communicates through generic interfaces such as
serial port and Ethernet, so that any program emulating a serial port and reading files from
a network drive can be used to operate the system. A few examples are listed in the
following sections
3.3.1 Terminal
At the most basic level, users can log in to the Pixie-16 MZ-TrigIO with a terminal program
and execute the C programs to set up and read status (e.g. ./progfippi and
./runstats). Settings are modified by editing the settings file settings.ini with a basic
text editor like VI. Results are files on the Pixie-16 MZ-TrigIO SD cad, hich can be
viewed with a text editor or copied to mounted network drives.
This environment may appeal most to users familiar with Linux, and also allows
modification and recompilation of the C programs with the built-in gcc compiler.
3.3.2 Terminal and Webpages
For direct graphical feedback, users can log in via terminal as in the preceding section, but
view results as a webpage. The Pixie-16 MZ-TrigIO is running a web server, and the output
files are formatted as plots or tables on webpages with a variety of java scripts.

Pixie-16 MZ-TrigIO Manual Version 0.51
© 2019 XIA LLC 18
While still requiring familiarity with Linux, the graphical feedback makes for an easier
setup and a better presentation of the results.
3.3.3 Terminal, SMB and Windows programs
With SMB file sharing, Windows programs can be used to directly view, edit, and analyze
settings and results. For example, the workflow could be
1) Using WordPad, open, modify, and save settings.ini
2) Execute ./progfippi and ./runstats in the terminal
3) Open RS.csv in Excel or other program to view, analyze, and plot results
3.3.4 Webpage-Only Operation
Not yet implemented
As an alternative to the terminal entry and execution of the C programs to set up and read
status (e.g. ./progfippi and ./runstats), there is a [moderately] secure web page
that allows execution of the C programs as a cgi script through a browser. The Web
Operation page can be eached ia a link in he CGI Cen Daa ecion of he Pixie-
16 MZ-TrigIO Home page. It essentially lists the C functions that would normally be called
by typing in the terminal; clicking on the function name executes the function. Data is
created in a separate subdirectory with Linux permissions for data write access for the
webserver (/var/www/webops). The Web Operation page shows the equivalent links from
the Pixie-16 MZ-TrigIO home page to download and display the data.
Settings files can currently not be modified through the Web Operation page.
As this webpage allows generation and execution of files from any remote user, the
webserver has been set up to require authentication to access this webpage. Details of the
setup are described in section 10. The default user ID/password is webops/xia17pxn,

Pixie-16 MZ-TrigIO Manual Version 0.51
© 2019 XIA LLC 19
currently specified as plain text in the file /var/www/webopspasswords. Obviously, this is
only moderately secure and should be a) changed by the user as soon as possible and b)
upgraded to encrypted password storage for sensitive environments.
3.3.5 On-board ROOT Graphical User Interface
Not yet implemented
A further alternative to the terminal entry and execution of the C programs is available on
Pixie-16 MZ-TrigIO systems with the Ubuntu 15 operating system, which comes with the
ROOT software package installed. A ROOT GUI can be developed that can configure the
Pixie-16 MZ-TrigIO (./progfippi etc), view ADC traces, read the status information
(./startdaq), and display the results.
To use this option, two steps are required:
1) Graphical log on
The Pixie-16 MZ-TrigIO processor is capable of generating a graphical desktop, but
since there is no video output, direct connection of a monitor is not possible. Instead,
users can log on remotely with either
a. Windows Remote Desktop: Start Remote Desktop on a remote Windows PC
and enter the Pixie-16 MZ-TrigIO IP adde, hen log on (defal
user/password root/xia17pxn)
b. Linux SSH X11 forwarding: ssh -Y and -X let you run an X11 program on a
remote machine, with its windows appearing on the local X monitor. For
example, in a terminal window of the remote Linux PC, type
2) Start ROOT and Pixie-16 MZ-TrigIO application
- Open a terminal on the graphical desktop
- Type cd /var/www to change to the main DAQ directory
- Type root to start ROOT
- Type .x pixieNet.C to start the Pixie-16 MZ-TrigIO ROOT application

Pixie-16 MZ-TrigIO Manual Version 0.51
© 2019 XIA LLC 20
4 API functions
4.1 progfippi
Functions performed
- Parse .ini file, extract FPGA parameters
- Cone ino FPGA ni, e.g. nmbe of ample inead of (where necessary)
- Apply limits and dependencies, if not ok, give feedback and abort
- Read data from PROM and verify the current version of the Pixie-16 MZ-TrigIO hardware
is supported by the software
- Write to FPGA registers to apply settings
- Toggle I2C lines (0x002) to set LVDS direction etc.
Arguments: fied o settings.ini
Output: Errors for bad settings, prints hardware info from PROM and temperatures
Restrictions: Do not execute during a data acquisition
4.2 runstats, cgistats
These functions are used to read and output the status registers. runstats writes them to a local file
RS.csv. cgistats prints them as a webpage to std out, which can be piped into the webserver; this
i diplaed a he Status ebpage. These functions can be used for development, setup, and
diagnostics, for example the run statistics include module revision and serial number, temperature,
ICR and OOR.
Status registers can also be read and written to the file RS.csv by data acquisition monitoring
routines (to be implemented). During a data acquisition, do not execute runstats and cgistats (i.e.
do no load ebpage Current status = cgia.cgi) o aoid conflicing acce o he n status
registers and possible delays and dead times. Instead monitor the file RS.csv (i.e. load webpage
Status File= page.hml)
Functions performed
- Read Runstats registers in PL
- Read I2C info from PROM
- write to file
Arguments: none
Output: RS.csv
Restrictions: Do not execute during a data acquisition
Notes: The cgi program requires presence of the web page template rspage.html in the same folder.
Other manuals for Pixie-16 MZ-TrigIO
2
Table of contents
Other XIA Control Unit manuals