↓ Skip to main content
  1. Home projects/

lvJanus: a CAEN FERS readout board in LabVIEW

··

CAEN’s FERS-5200 front-end boards come with Janus, an open-source (GPL) readout program written in C. It configures the board, talks to it over USB or Ethernet and reads the data. lvJanus turns that code into a DLL that LabVIEW can call, so the board can become part of a larger LabVIEW measurement setup.

The DLL exposes a deliberately small stdcall interface:

  • initialize() loads the Janus configuration file and connects to the board;
  • send_receive(out, out_size, in, in_size) passes a command buffer from LabVIEW to the board and returns the response;
  • dump_info() writes the board and firmware information to the log;
  • destroy() closes the connection.

Underneath it is the Janus/FERS library itself (including the register map of the A5203 picosecond TDC unit) with a thin C++ wrapper, logging through spdlog. The solution also builds a small console program, used to test the same calls without LabVIEW.

Tech: C, C++, Visual Studio (x64), vcpkg, spdlog, LabVIEW, CAEN FERS/Janus. Source on GitHub.

Related