This page is the home of quadEM.
quadEM supports quad electrometers/picoammeters, typically used for photodiode-based x-ray beam position monitors, or split ion chambers. They can also be used for any low-current measurement that requires high speed digital input. There is support for two models:
The AH401 series, NSLS_EM, and APS_EM are based on the same principle of an op-amp run as a current amplifier with a large feedback capacitor, and a high resolution ADC. The AH501 series and TetrAMM are based on a transimpedance input stage for current sensing, combined with analog signal conditioning and filtering stages. The AH501C/D and TetrAMM have an integrated programmable bias supply.
The quadEM driver derives from the asynNDArrayDriver base class from the EPICS areaDetector module. The driver collects the current, sum, difference and position readings during a user-defined "averaging period" and puts the time series of readings into a number of NDArray objects. The NDArrays are passed via callbacks to any NDArray plugins. These plugins include the
Please email any comments and bug reports to Mark Rivers who is responsible for coordinating development and releases.
The software can be downloaded from the links in the table below. The software can also be accessed through the github repository.
The quadEM support typically uses the synApps modules mca (for digital scope mode), std (for the EPID fast feedback support), and ipUnidig for interrupt support . But the quadEM module does not actually depend on these other modules to be built.
Module version | Requires module | Release needed | Required for |
---|---|---|---|
9-4 | EPICS base | 3.15.6 or 7.0.4.1 | Base support |
asyn | 4-41 | Driver support | |
areaDetector/ADCore | 3-10 | Used for NDArray plugins that compute statistics, stream data to disk, etc. | |
busy | 1-7-2 | Busy record. Used in databases to support ca_put_callback. | |
ipUnidig | 2-12 | Used in test application for interrupt callback support for APS_EM. | |
ipac | 2-15 | Used in test application for Industry Pack support for ipUnidig. | |
autosave | 5-10 | Used in test application for save/restore. | |
sscan | 2-11-3 | Used in test application for scanning. | |
calc | 3-7-3 | Used in test application for sscan. | |
9-3 | EPICS base | 3.15.6 or 7.0.3.1 | Base support |
asyn | 4-39 (required for asynFloat64Average I/O Intr scan support) | Driver support | |
areaDetector/ADCore | 3-9 | Used for NDArray plugins that compute statistics, stream data to disk, etc. | |
busy | 1-7-2 | Busy record. Used in databases to support ca_put_callback. | |
ipUnidig | 2-11 | Used in test application for interrupt callback support for APS_EM. | |
ipac | 2-15 | Used in test application for Industry Pack support for ipUnidig. | |
autosave | 5-10 | Used in test application for save/restore. | |
sscan | 2-11-3 | Used in test application for scanning. | |
calc | 3-7-3 | Used in test application for sscan. | |
9-2 | EPICS base | 3.15.5 or 7.0.1.1 | Base support |
asyn | 4-34 (required for asynFloat64Average I/O Intr scan support) | Driver support | |
areaDetector/ADCore | 3-3-2 | Used for NDArray plugins that compute statistics, stream data to disk, etc. | |
busy | 1-7 | Busy record. Used in databases to support ca_put_callback. | |
ipUnidig | 2-11 | Used in test application for interrupt callback support for APS_EM. | |
ipac | 2-15 | Used in test application for Industry Pack support for ipUnidig. | |
autosave | 5-9 | Used in test application for save/restore. | |
sscan | 2-11-1 | Used in test application for scanning. | |
calc | 3-7 | Used in test application for sscan. | |
9-0 | EPICS base | 3.15.5 | Base support |
asyn | 4-32 | Driver support | |
areaDetector/ADCore | 3-1 | Used for NDArray plugins that compute statistics, stream data to disk, etc. | |
busy | 1-7 | Busy record. Used in databases to support ca_put_callback. | |
ipUnidig | 2-11 | Used in test application for interrupt callback support for APS_EM. | |
ipac | 2-14 | Used in test application for Industry Pack support for ipUnidig. | |
autosave | 5-8 | Used in test application for save/restore. | |
sscan | 2-10-2 | Used in test application for scanning. | |
calc | 3-6-1 | Used in test application for sscan. | |
8-0 | EPICS base | 3.15.5 | Base support |
asyn | 4-31 | Driver support | |
areaDetector/ADCore | 3-0 | Used for NDArray plugins that compute statistics, stream data to disk, etc. | |
busy | 1-6-1 | Busy record. Used in databases to support ca_put_callback. | |
ipUnidig | 2-10 | Used in test application for interrupt callback support for APS_EM. | |
ipac | 2-14 | Used in test application for Industry Pack support for ipUnidig. | |
autosave | 5-7-1 | Used in test application for save/restore. | |
sscan | 2-10-2 | Used in test application for scanning. | |
calc | 3-6-1 | Used in test application for sscan. | |
7-1 | EPICS base | 3.15.5 | Base support |
asyn | 4-31 | Driver support | |
areaDetector/ADCore | 2-6 | Used for NDArray plugins that compute statistics, stream data to disk, etc. | |
busy | 1-6-1 | Busy record. Used in databases to support ca_put_callback. | |
ipUnidig | 2-10 | Used in test application for interrupt callback support for APS_EM. | |
ipac | 2-14 | Used in test application for Industry Pack support for ipUnidig. | |
autosave | 5-7-1 | Used in test application for save/restore. | |
sscan | 2-10-2 | Used in test application for scanning. | |
calc | 3-6-1 | Used in test application for sscan. | |
7-0 | EPICS base | 3.14.12.5 | Base support |
asyn | 4-30 | Driver support | |
areaDetector/ADCore | 2-5 | Used for NDArray plugins that compute statistics, stream data to disk, etc. | |
busy | 1-6-1 | Busy record. Used in databases to support ca_put_callback. | |
ipUnidig | 2-10 | Used in test application for interrupt callback support for APS_EM. | |
ipac | 2-13 | Used in test application for Industry Pack support for ipUnidig. | |
autosave | 5-7-1 | Used in test application for save/restore. | |
sscan | 2-10-2 | Used in test application for scanning. | |
calc | 3-6-1 | Used in test application for sscan. | |
6-0 | EPICS base | 3.14.12.5 | Base support |
asyn | 4-28 | Driver support | |
areaDetector/ADCore | 2-4 | Used for NDArray plugins that compute statistics, stream data to disk, etc. | |
mca | 7-6 | Fast sweep driver for time series | |
busy | 1-6-1 | Busy record. Used in databases to support ca_put_callback. | |
ipUnidig | 2-10 | Used in test application for interrupt callback support for APS_EM. | |
ipac | 2-13 | Used in test application for Industry Pack support for ipUnidig. | |
seq | 2-2-3 | Used by quadEM_TimeSeries to synchronize acquisition and to compute FFTs. | |
autosave | 5-7-1 | Used in test application for save/restore. | |
sscan | 2-10-2 | Used in test application for scanning. | |
calc | 3-6-1 | Used in test application for sscan. | |
5-0 | EPICS base | 3.14.12.4 | Base support |
asyn | 4-23 | Driver support | |
areaDetector | 2-0 | Used for NDArray plugins that compute statistics, stream data to disk, etc. | |
mca | 7-5 | Fast sweep driver for time series | |
busy | 1-6 | Busy record. Used in databases to support ca_put_callback. | |
ipUnidig | 2-9 | Used in test application for interrupt callback support for APS_EM. | |
ipac | 2-11 | Used in test application for Industry Pack support for ipUnidig. | |
seq | 2-1-10 | Used by quadEM_TimeSeries to synchronize acquisition and to compute FFTs. | |
autosave | 5-1 | Used in test application for save/restore. | |
sscan | 2-9 | Used in test application for scanning. | |
calc | 3-2 | Used in test application for sscan. | |
4-1 | EPICS base | 3.14.12.3 | Base support |
asyn | 4-22 | Driver support | |
areaDetector | 2-0 | Used for NDArray plugins that compute statistics, stream data to disk, etc. | |
mca | 7-4 | Fast sweep driver for time series | |
busy | 1-6 | Busy record. Used in databases to support ca_put_callback. | |
ipUnidig | 2-9 | Used in test application for interrupt callback support for APS_EM. | |
ipac | 2-11 | Used in test application for Industry Pack support for ipUnidig. | |
seq | 2-1-10 | Used by quadEM_TimeSeries to synchronize acquisition and to compute FFTs. | |
autosave | 5-1 | Used in test application for save/restore. | |
sscan | 2-9 | Used in test application for scanning. | |
calc | 3-2 | Used in test application for sscan. | |
4-0 | EPICS base | 3.14.12.3 | Base support |
asyn | 4-21 | Driver support | |
areaDetector | 1-9-1 | Used for NDArray plugins that compute statistics, stream data to disk, etc. | |
mca | 7-3-1 | Fast sweep driver for time series | |
busy | 1-4 | Busy record. Used in databases to support ca_put_callback. | |
ipUnidig | 2-9 | Used in test application for interrupt callback support for APS_EM. | |
ipac | 2-11 | Used in test application for Industry Pack support for ipUnidig. | |
seq | 2-1-10 | Used by quadEM_TimeSeries to synchronize acquisition and to compute FFTs. | |
autosave | 5-0 | Used in test application for save/restore. | |
sscan | 2-8-1 | Used in test application for scanning. | |
calc | 3-0 | Used in test application for sscan. | |
3-3 | EPICS base | 3.14.12.2 | Base support |
asyn | 4-20 | Driver support | |
mca | 7-2 | Fast sweep driver for time series | |
busy | 1-4 | Busy record. Used in quadEM_TimeSeries.template. | |
ipUnidig | 2-9 | Used in test application for interrupt callback support for APS_EM. | |
ipac | 2-11 | Used in test application for Industry Pack support for ipUnidig. | |
seq | 2-1-9 | Used by quadEM_TimeSeries to synchronize acquisition and to compute FFTs. | |
autosave | 5-0 | Used in test application for save/restore. | |
3-2 | EPICS base | 3.14.12.2 | Base support |
asyn | 4-20 | Driver support | |
mca | 7-2 | Fast sweep driver for time series | |
busy | 1-4 | Busy record. Used in quadEM_TimeSeries.template. | |
ipUnidig | 2-9 | Used in test application for interrupt callback support for APS_EM. | |
ipac | 2-11 | Used in test application for Industry Pack support for ipUnidig. | |
seq | 2-1-9 | Used by quadEM_TimeSeries to synchronize acquisition and to compute FFTs. | |
autosave | 5-0 | Used in test application for save/restore. | |
3-1 | EPICS base | 3.14.12.2 | Base support |
asyn | 4-20 | Driver support | |
mca | 7-2 | Fast sweep driver for time series | |
busy | 1-4 | Busy record. Used in quadEM_TimeSeries.template. | |
ipUnidig | 2-9 | Used in test application for interrupt callback support for APS_EM. | |
ipac | 2-11 | Used in test application for Industry Pack support for ipUnidig. | |
seq | 2-1-9 | Used by quadEM_TimeSeries to synchronize acquisition and to compute FFTs. | |
autosave | 4-9 | Used in test application for save/restore. | |
3-0 | EPICS base | 3.14.12.2 | Base support |
asyn | 4-20 | Driver support | |
mca | 7-2 | Fast sweep driver for time series | |
busy | 1-4 | Busy record. Used in quadEM_TimeSeries.template. | |
ipUnidig | 2-9 | Used in test application for interrupt callback support for APS_EM. | |
ipac | 2-11 | Used in test application for Industry Pack support for ipUnidig. | |
seq | 2-1-9 | Used by quadEM_TimeSeries to synchronize acquisition and to compute FFTs. | |
autosave | 4-9 | Used in test application for save/restore. | |
2-6 | EPICS base | 3.14.12.1 | Base support |
asyn | 4-18 | Driver support | |
2-5 | EPICS base | 3.14.12.1 | Base support |
asyn | 4-17 | Driver support | |
mca | 7-0 | MCA record | |
busy | 1-3 | Busy record | |
2-4 | EPICS base | 3.14.8.2 | Base support |
asyn | 4-10 | Driver support | |
mca | 6-10 | MCA record | |
sscan | 2-6 | Busy record | |
2-3 | EPICS base | 3.14.8.2 | Base support |
asyn | 4-7 | Driver support | |
mca | 6-8 | MCA record | |
sscan | 2-5-3 | Busy record | |
2-2 | EPICS base | 3.14.7 | Base support |
asyn | 4-2 | Driver support | |
mca | 6-5 | MCA record | |
sscan | 2-5 | Busy record | |
2-1 | EPICS base | 3.14.7 | Base support |
asyn | 4-2 | Driver support | |
mca | 6-4 | MCA record | |
sscan | 2-5 | Busy record | |
2-0 | EPICS base | 3.14.4 | Base support |
mpf | 2-4-2 | Message passing | |
mca | 6-2 | MCA record support | |
std | 2-3 | Fast feedback | |
dac128V | 2-2 | Fast feedback | |
ipUnidig | 2-2 | Interrupt support | |
1-1 | EPICS base | 3.13.7 | Base support |
mpf | 1-10 | Message passing | |
mca | 5-5 | MCA record support | |
std | 1-4 | Fast feedback | |
dac128V | 1-4 | Fast feedback | |
ipUnidig | 1-3 | Interrupt support |
After obtaining a copy of the distribution, it must be installed and built for use at your site. These steps only need to be performed once for the site (unless versions of the module running under different releases of EPICS and/or the other required modules are needed).
gunzip quadEMRX-Y.tar.gz tar xvf quadEMRX-Y.tarwhere X-Y is the release.
.../support/quadEMRX-Y
This software was originally developed by Mark Rivers.