DAQ Networking

From PREX Wiki
Revision as of 12:31, 22 April 2019 by Cameronc (Talk | contribs)

Jump to: navigation, search

See also - DAQ Doc Portal

DAQ Network Components


A portserver is a telnet (insecure network interface) capable, serial cable connected, network interface. The advantage to using serial connections is it allows a network connection during boot and enables easy remote power cycling and NVRAM restoration to ROCs.

See here for some useful commands.

Login, Log Off, Kick Idles

Command Line Functions


Setup a new Portserver

To set up a new portserver you need to

  • Request a IP address for it's MAC
  • Use that IP to modify the portserver's settings through an instance of Minicom


  • In general you need a serial port connection to port 1 to get started. On atedf3 this is set up, I believe. It uses port /dev/ttyS0 on atedf3 which needs root permissions to read/write (it is the case on atedf3).
  • Type "minicom" on atedf3. Connect to portserver:
login: root, password: ****
  • Now you have a prompt:
  • Execute commands below, appropriately adjusted for your device.
    • Note on how to exit minicom:
    • When you're done, type
    • ctrl-A
    • then "Z" (without the quotes), and finally "X".
    • This leads to the quesiton of whether you want to quit minicom, answer Yes.


#> set config ip =
IP Address Changes will be valid on next reboot (if dhcp=off).
#> set config nyname = hatsv28
Syntax error: nyname
#> set config myname = hatsv28
#> set config dhcp=off
#> set config domain = jlab.org
#> set config nameserv =
#> set config submask =
Submask Changes will be valid on next reboot (if dhcp=off).
#> set config gateway =
#> set port dev=term range=1
#> set port dev=prn range=2-4
  • (this is assuming a 4-port portserver, obviously if there are more ports your range should cover them. Also "term" is for a /dev/ttyS0 while "prn" works best for frontends, empirically).

TEDF 1546 Portserver backups:

  • hatsv28 - 00:40:9d:ad:aa:b7 - - port 7
  • hatsv29 - 00:40:9d:ad:aa:4e - - port 9
  • hatsv17 - 00:40:9d:4c:47:04 - - port 11

Console Server

SSH to use telnet

Raspberry Pi


Ethernet Switch

NFS Network File System

Main Article - NFS Installation Guide

To mount an NFS filesystem to a ROC (linux or VXworks) there are several steps involved (see How To Forge - NFS Guide)

  • Have NFS serve the CODA 2.6.2 directory to localhost (
  • Mount it, in a different location (pretending to me the VME controller):
    • example /etc/exports:
/coda/2.6.2/    localhost(rw,sync,no_root_squash,no_subtree_check)
mount it /somewhere_else
    • (as root)
mkdir /somewhere_else 
mount localhost:/coda/2.6.2 /somewhere_else


For linux systems:

  • Make sure that the ethernet ports being used are configured to DHCP over the ethernet network
    • Edit the /etc/sysconfig/network-scripts/ifcfg-eth# configuration files are correctly set to allow the desired ethernet port to DHCP on-boot (on RHEL and Centos only)
    • Acquire a static IP from the ethernet network you are using (if its a LAN you manage set these in the router or switch yourself)
    • Identify the hostnames and IPs of the local machine and remote server you want to connect to in the /etc/hosts file
    • Make sure the /etc/sysconfig/network file has the localhost's hostname set in it (can also be done with the 'host' unix command)
    • On the NFS host server ensure that the /etc/exports file correctly targets the IPs or entire network (using .0 as the last digit of the IP address) that you want to server the NFS contents to
      • After updating a network connection or target computer in /etc/exports run the "service autofs restart" or "exports -a" command as root
      • Make sure the /etc/hosts file includes the same information for all computers on the local network involved in the NFS file sharing, with assigned to 'localhost' on all
    • Make sure that the permissions for the shared files allow for appropriate read, write, and execute privileges for all users and groups, on local and remote computers
      • To check the user and group permissions are set correctly, the naming conventions can be deceptive - use ls -n to show the number of users and groups, which is what really matters
      • Even if two separate computers have the same user and group names but their user and group numbers are different you are able to tell this and assign the rwx privileges correctly on the shared folders (using 'chown -R' and 'chmod -R 777' or whatever correct permissions you want to set)

For VXworks systems:

  • The same things apply as for ethernet network mounted file systems, except that VXworks uses the ~/.rhosts file to determine which IPs to allow to mount an NFS shared folder
    • Therefore, follow the /etc/exports file convention, except with ~/.rhosts instead for VXworks ROC file sharing
    • The ROC_name and ROC_name.jlab.org addresses both need to be listed for it to work

DAQ Network Map

For History, see DAQ Network Map

As of July 27th 2018 DAQ Network Map
Location SSH Hostname Software ROC# Hardware ROC# and Branch Serial Access Method Access Command Log Out
RHRS 'happex7' 26 02 branch 4 serial port via portserver hatsv3 port 2 'telnet hatsv3 2002' ctrl+], q
LHRS 'hallavme14' 25 05 branch 4 serial port via portserver hatsv21 port 4 'telnet hatsv21 2004' ctrl+], q
TS 'happex4' no ROC no ROC serial port via network console server acons1 port 8 'ssh adaq:ttyS8\@acons1' ctrl+z, exit
Counting House 'halladaq6' 23 00 branch 1 serial port via network console server acons1 port 4 'ssh adaq:ttyS4\@acons1' ctrl+z, exit
Injector 'qweak1' 24 00 branch 2 serial port via network rpi12 server 'minicom' 'ssh pi@rpi12' then 'run_minicom' ctrl+a, z, x, enter

Accessible Computers

DAQ Computers

Workspace Computers
Location SSH Hostname Username
Hall A LHRS halla-lpt1 ahut
Hall A RHRS halla-lpt2 ahut
rpi4 pi
Hall A Counting House adaq1 apar
adaq2 apar
adaq3 apar
adaq4 apar
Test Lab GEM setup (off halla-daq-sw-2 switch)
SSH Hostname IP Username Purpose
daq3-prex GEM DAQ/linearity analyzer
rpi1-prex Raspberry Pi for RHRS motion control and camera
rpi2-prex Raspberry Pi for linearity tests
rpi3-prex Raspberry Pi for for gain
daq4-prex Integrating DAQ for linearity tests
rocdaq4-prex VME Linux ROC for linearity tests
rocdaq3-prex VME Linux ROC for GEM and QDC
rpi4-prex Raspberry Pi for LHRS motion control and camera


There is also a computer on wheels in the Injector area. To log in to this computer you need to have a Machine Control Center (MCC) account, which is independent of the main JLab CUE system (but not agnostic of it). To get a MCC/ACE account follow these steps.

  • Go to the main JLab CCPR system here
  • Click on the link at the top for ACE CCPRs here
  • Then select New User Account in the category menu and proceed with your request
  • They will process your request and send you an email asking you to log in with your JLab CUE account to change your ACE password
  • You need to log in to a computer that has a static DHCP managed JLab IP address and follow that link to change your password (which cannot be the same as your current CUE password)

Phone Numbers

Commonly Used Phone Numbers
Who Why Number
Machine Control Center (MCC) To control the accelerator (757) 269 7047 or 7048
Security Guards Emergency (757) 269 5822
Normal (757) 269 7169
Hall A Counting House Back Room (757) 269 5505
(757) 269 5509
Control Room (757) 269 5501
Radcon Radiation help (757) 876 1743
Computer Helpdesk Computer or network help (757) 269 7155
Health Clinic Health questions (757) 269 7539

For table formatting help see MediaWiki Help:Tables