Quick start

This tutorial installs bobview, starts a simulated beamline on your own machine and walks you around its displays. It takes about ten minutes and needs no EPICS installation and no IOCs: bobview-testioc plays the part of the epics-containers example-services BL01T beamline.

You need an x86_64 or aarch64 Linux machine (an Android phone's Linux Terminal works), or a Mac. To build it with Cargo instead, see Install from crates.io.

1. Install

On Debian or Ubuntu, first install the graphics libraries:

sudo apt install libxkbcommon0 libwayland-client0 libegl1 libgl1-mesa-dri

(on RHEL and Fedora see Install bobview; macOS needs nothing). Then install bobview into ~/.local:

curl -sSfL https://raw.githubusercontent.com/gilesknap/bobview/main/install.sh | bash

Check that it is on your PATH:

bobview --version

If the command is not found, add export PATH=$HOME/.local/bin:$PATH to your shell's start-up file and open a new terminal.

2. Start the simulated beamline

bobview-testioc &

This serves, over Channel Access and PV Access, a calculator IOC (bl01t:A, bl01t:B, bl01t:SUM), two motors and a simulated area detector that streams an image.

3. Open the displays

Tell the Channel Access client to look for PVs on this machine, and start the viewer:

EPICS_CA_ADDR_LIST=127.0.0.1 bobview

With no display named, bobview opens index.bob from the test screens it installed. You should see live values within a second or two.

4. Look around

  • Hover over a widget: a tooltip shows its PV and value.
  • Right-click a widget (long-press on a touch screen): copy the PV name or value, open the PV's details, or Trend it. A trend window plots the PV against time; leave it open. Given an archiver (--archiver URL), it shows the PV's history too: see Trend PVs.
  • Middle-click a widget to copy its PV name. On Linux a middle-click in a terminal pastes it; elsewhere, paste it as usual (Ctrl+V or ⌘V).
  • Click a button that opens another display. Use Back and Forward in the toolbar to move between them, and Home to return to index.bob.
  • Click the zoom in the toolbar to see the display at 100%, then Fit to fit it to the window again. On a touch screen, pinch to zoom.
  • Open the navigator from the toolbar to see a tree of every display reachable from the home display.

5. Look at the camera

From the home display, open the camera display. The image comes over PV Access from BL01T-DI-CAM-01:PVA:OUTPUT: drifting fringes with three spots moving across them. Use the image toolbar to zoom, pan and place a crosshair that reads out the pixel under it.

6. Change a value

From the home display, open the ea-test display. Type a new number into the text entry for bl01t:A and press Enter, or drag its slider. bl01t:SUM follows, as the calculator record adds A and B.

7. Finish

Close the window to quit bobview, then stop the IOC:

kill %1

Next steps