std Release Notes

Release 3-4 (Jan. 13, 2015)

Release 3-3 (Nov. 10, 2014)

Release 3-2 (Apr. 17, 2013)

  • The sseq record was moved from the std module to the calc module, along with all of its databases, request files, and display files.
  • Added general purpose selector (e.g., for mirror stripe) selector.db, etc.
  • misc.db - added two current time PVs, P:iso8601 and P:datetime
  • pvHistory.db - use Soft Timestamp device support, because it's in base
  • epid.req - add autosave/restore request file for epid record
  • countDownTimer.vdb - New calc engine in base requires ?: expression to have both ? and :
  • devTimeOfDay.c - Use epicsTimeToStrftime, instead of to-be-deleted tsStampToText.
  • selector.db, selector*.adl - general purpose selector
  • Added display files for CSS-BOY and caQtDM

Release 3-1 (Nov 14, 2011)

  • Added databases and MEDM-display files for genericState database.

Release 3-0 (Sept 15, 2011)

  • The scaler record no longer makes two calls to disarm the hardware (dset->arm(0)) when the scaler completes counting normally. (Previously, the code supporting user abort of a count was also executed after normal completion.)
  • The sseq record can now treat array PVs whose elements are of type DBF_CHAR or DBF_UCHAR, as strings. Only the first 39 characters are handled, because the sseq record uses PVs of type DBF_STRING internally.
  • Previously, sseq record links could wait or not wait for completion, before going on to the next action. Now links can wait for completion after a specified action. For example, you can execute the first two actions without waiting in between, and then wait for both to complete before processing the third action.
  • The sseq record now displays the states of its DOL and LNK links.
  • Previously the sseq record did not defend itself against the possibility that it would be executed by channel access and aborted by a PV link, which would cause the record to be executed again, immediately after the abort succeeded.
  • Added support for femto_DxPCA_x00 Femto amplifier
  • drvScalerSoft.c: The callback for done must pass the value 1, not 0
  • Added userMbbo, a database of ten user-controlled menu choices.
  • scaler16m.db: Added COPT=="Always" to $(P)$(S)_calc1 (transform record)
  • Modified RELEASE; deleted RELEASE.arch
  • Added .opi display files for CSS-BOY

Release 2-9 (Aug. 10, 2010)

  • ramp_tweak.db had an illegal link in it's Init record.

Release 2-8 (Mar. 30, 2010)

  • fast_pid_control.db, devEpidFast.c. Added new parameters to the INP field, because previously the DRV_USER strings for the data and time interval were hardcoded. The length of the resulting string now is too large for INP in many cases, so put some of it in the DESC field, which is ugly.
  • epidRecord.dbd - added fields TRIG and TVAL, which are used by devEpidSoftCallback.c to support an asynchronous readback device by waiting for completion before getting the readback value.
  • async_pid_control.db, async_pid_control_settings.db, async_pid_control.adl -- new files to support pid control with an asynchronous readback device.
  • sseq_settings.req - Added SCAN
  • drvScaler974 - new file for Ortec 974 scaler
  • devScalerAsyn.c - ignore callback when DONE==0, register callbacks on address 0.
  • sseqRecord.c - fixed for 64-bit arch
  • no longer build shareBase.dbd
  • nameVal.adl, anyRecord.adl - new display files for any record type.
  • deleted some unused .adl files

Release 2-7 (Sept 10, 2008)

  • yySeq.adl, yySeq_full.adl - new files
  • genSub-record dependency replaced by aSub record in base 3.14.10

Release 2-6 (Sept 10, 2008)

  • The sseq record was failing to process immediately after a reboot, when ordered to process because of a CP input link.
  • The gpibRecord has been replaced by the asynRecord, which is loaded from the asyn module.
  • New databases: alarmClock, autoShutter, countDownTimer, ramp_tweak, scaler16m
  • The sseqRecord (string Sequence, a variant of the seq record in EPICS base) can now be told to abort the sequence it's executing.
  • The scaler record has a new field, COUTP, which is like the COUT field, but is not delayed by a nonzero setting of the DLY field.
  • If the scaler-record DLY field was less that 1, it was not honored. (Thanks to Xuesong Jiao for the fix.)
  • New link-help displays do a better job of describing the effects on link attributes, particularly as they bear on completion detection (i.e., the behavior of a data when written to by ca_put_callback).

    Release 2-5-5 (April, 2007)

    • Added scaler16m.db database, and corresponding MEDM displays. These differ from scaler16.db and its display files only in the implementation of end calculations. The new support provides end calcs for all 16 signals.
    • New link-help displays.
    • Added pvHistoryRegister to stdSupport.dbd
    • Added field COUTP, an output link, to the caler record. This is similar to the COUT link, which sends the value of the CNT field to its target whenever CNT changes. COUTP differs from COUT in that it doesn't wait for the delay specified in the DLY field, but sends promptly after CNT changes.
    • Minor change to devScalerAsyn to support change in API for asyn callbacks.
    • Minor change to devEpidFast to support change in API for asyn callbacks.
    • Added ramp_tweak database and assoc. support
    • Minor change to devScalerAsyn to support change in API for asyn callbacks.
    • Minor change to devEpidFast to support change in API for asyn callbacks.
    • Added ramp_tweak database and assoc. support

    Release 2-5-4 (Dec. 6, 2006)

    • Changes to scaler record:

      • PRn and Sn fields are now DBF_ULONG rather than DBF_LONG.
      • No longer hardcode VME_IO device type in the record logic.
      • Removed .CARD record field.
      • Changed interface to device support so that all functions pass precord rather than card, and init_record passes pointer to device callback structure.
      • Move callback structures from dpvt to rpvt so record does not access dpvt.

    • Added asyn device support for scaler record. This is currently used by the SIS3820 device support in mcaApp/SISSrc, but all scaler device support will eventually be changed to use asyn.

    • Changed stdApp/Db/scaler*.db so that $(OUT) is a macro parameter, rather than assuming VME_IO link type.

    • Deleted CARD field from stdApp/op/adl/scaler*.adl.

    • Deleted stdApp/src/femto.dbd, not needed.

    • Added timer.db (resettable software timer) and related software: timer.req, timer*.adl

    Release 2-5-3

    • epid record still had some FLOAT stuff to convert to DOUBLE. Fixed record and docs.

    • added userStringSeq10 database, autosave request, and medm display files.

    • Added support for the Femto current amplifier (

    Release 2-5-2

    • sseqRecord.html rewritten. The old version was a minimal modification of seqRecord.html, from the EPICS Record Reference Manual, and was not very clear.

    • scaler record: v3.18: Don't post CNT field unless record-support changed its value. Modified debug macro.

    • devEpidFast.c: changed strtok_r to epicsStrtok_r

    • pvHistory: new software to maintain short-term history of a few PV's in the ioc. Software comprises pvHistory.c (genSub routines), devTimeOfDay.c, pvHistory.db, pvHistory.req (autosave-request file), and pvHistory*.adl, and relies on autosave to save/restore the value arrays.

    • softMotor.db: shortened some .DESC field values so they fit.

    • all_com_4.db: new file

    • softMotorConfig.adl: related-display callups were using sCalcout files for calcout records, because synApps did not contain calcout medm displays. Now the calc module does contain calcout displays, so we use them.

    Release 2-4

    • mpf-related stuff replaced by asyn-related stuff

    • minor scaler-record changes to accommodate Joerger VS series. Existing support for other scaler devices should not require any modifications.

    • BitBus is no longer supported

    • ioc-status info now provided by vxStats module

    • PID support rearranged around the asyn module

    • SSEQ-record delays now snap to nearest clock period, and show user the delay that will actually be used. Fixed bug that was crashing on Linux and Windows.

    • cvs log

    Release 2-3

    This is what's left of the synApps std module after the modules autosave, calc, optics, sscan, and vme were split out.

    This version is intended to build with EPICS base 3.14.5. Differences from std 2.2:

    • scaler record - device support that used "struct callback" defined in devScaler.h must now replace that with "CALLBACK", and must include epics/base/include/callback.h

    • sseq record - Now allows user to specify whether or not the record should wait, after putting a link value, for the resulting processing to complete before processing the next link. Some code cleanup. Added seqRecDebug.

    • topDAC8.adl - Deleted to avoid conflict with dac128V module.

    • VXstats_full.adl

    • pid_control_settings.req - added delta time

    • Added device-independent scaler database and save-restore settings files.

    • timeString.db - new capability in 3.14.5: stringin record can get time date.

    Suggestions and Comments to:
    Tim Mooney : (