Soft Support

The following table contains an index of EPICS Soft Support modules available for use within IOCs. Record types that are part of EPICS base are not listed here – see the Record Reference Manual and Release Notes for your version of base to get more information about these.

To request a new entry in this table for your Soft Support module, use this form. Email corrections or questions about this page to our web-team.

The related Hardware Support database is available here.

Driver (Asyn)iocshDeviocsh command device supportEric Norum (
embedded linuxBuild rootfsScripts to build a minimal Linux rootfsMichael Abbott (
facilityareaDetectorSupport for cameras etc. Uses ASYNMark Rivers (
facilityASYNGeneral-purpose device interface facilityMark Rivers (
facilityasynPythonDriverAn asynPortDriver in PythonWang Xiaoqiang (
facilityasynUSBTMCASYN support for USB Test & Measurement Class devicesEric Norum (
facilityAutosaveBumpless IOC Reboot supportTim Mooney (
facilitycaPutLogLogging of CA puts to iocLogServerBenjamin Franksen (
facilitycaputRecorderRecord CA puts for replay in PythonTim Mooney (
facilitycmlogDistributed message logging systemJie Chen (
facilitydbRestoreBumpless Restart Restore from Socket or CW FileSLAC:dbRestore
facilitydevIocStatsIOC Status and ControlSLAC:devIocStats
facilitydevLib2DevLib extensions for PCIbus, mmio, VME64 CR/CSRMichael Davidsaver (
facilitydrvAsciiGeneric serial device support, uses /tyCo/nAllan Honey (
facilityIOC MonitoringExtended vxStatsPSI:iocmon
facilityPC MonitoringLinux version of IOC MonitoringMiroslaw Dach (
facilitypvloadRuntime save/restore utility, can also run on hostKevin Tsubota (
facilitypvMailSends email when PV changes from 0 to 1Pete Jemian (
facilitypyDevSupA means of writing EPICS device support code in PythonMichael Davidsaver (
facilityrtemsutilsRTEMS IOC utilities (includes spy command)Eric Norum (
facilitySave/RestoreBumpless IOC Reboot supportTim Mooney (
facilitysequencerSNL compiler & sequencerBenjamin Franksen (
facilityStreamDeviceProgrammable Serial Device Support, uses ASYNDirk Zimoch (
Interpose (Asyn)asynDribbleLimits asynOctet character output rateEric Norum (
recordbusydatabase interface to putNotify() - e.g., make a complex device useable by ca_put_callback()Tim Mooney (
recordcad, car, sir, applyImplements Gemini Command/Action Layer between IOC's.Andy Foster (
recordcamacProbes CAMACMark Rivers (
recordconcatConcatenate scalars & waveformsAndrew Starritt (
recordcvtLinear, subroutine, 1D or 2D table value conversionsBenjamin Franksen (
recordepidEnhanced PID recordMark Rivers (
recordgenSubMulti-I/O subroutine, handles arraysAndy Foster (
recordgpibProbes GPIBMark Rivers (
recordhivAccess LeCroy or CAEN HV mainframesMcCormick ( )
recordinterpGeneral-purpose interpolationKevin Tsubota (
recordmcaSupports multichannel analyzersMark Rivers (
recordmotorComprehensive record for driving motors, encoders optional.Kevin Peterson (
recordsCalcoutstring-calc-output (cf. calcout record in base)Tim Mooney (
recordscalerControl a bank of countersTim Mooney (
recordserialProbes SerialMark Rivers (
recordspectrumCalculate the one-dimensional FFT of a waveformJeff Hill (
recordsscanProgrammatically set conditions and acquire dataTim Mooney (
recordsseqstring sequence (cf. seq record in base) - Execute a sequence of EPICS writes to a set of EPICS PVs; optionally, wait for completion after write.Tim Mooney (
recordswaitmostly superceded by calcout record - Evaluate a numeric expression; write the result to an EPICS PV; optionally wait for completion.Tim Mooney (
recordtableControl a six-degree-of-freedom optical tableTim Mooney (
recordtimestampTimestamp record, exports its timestamp as a stringSLAC:timestamp
recordtransferarraySplice subarray into another arrayHiroshi Kaji (
recordtransformLike 'calcout', but supports 16 expressions that can use the results of any previously evaluated expressionsTim Mooney (
recordvmeProbes VMEbusMark Rivers (
recordwaveAnlCompute statistics on a region of interest of a waveformAPS:waveProc
soft deviceBACnetai, ao, bi, bo, mbbi, stringin over BACnet/IPBrad Webb (
soft devicedevOPCDevice Support for I/O via an OPC ServerBernhard Kuner (
soft devicedevSNMPDevice support for SNMP-protocolDESY:devSNMP
soft devicedevSymbVxWorks Global Symbol table device supportAPS:devSymb
soft deviceIOC-OCTAVEIOC Device support for driving the GNU OCTAVE packageMiroslaw Dach (
soft deviceLVDCOMControl NI LabVIEW from EPICSFreddie Akeroyd (
soft devicelvPortDriverEPICS device support for LabVIEWScott A. Baily (
soft deviceNetShrVarAccess NI Network Shared Variables from EPICSFreddie Akeroyd (
soft devicePCMONLinux CPU monitoring: uptime, loadavg ...Miroslaw Dach (
soft devicepyDeviceDevice support that calls Python codeKlemen Vodopiveck (
soft devicepyDevSupPython API for writing device supportMichael Davidsaver (
soft devicesnmp-nsclEnhanced SNMP device supportJohn A. Priller (
soft devicetciocPublish TwinCAT variables as PVsJameson Graef Rollins (
soft devicevxStats-APSIOC Resource monitor for vxWorksJanet Anderson (
soft IOCpythonIocEPICS IOC with Python Interpreter Linked inMichael Abbott (
special functionRegScanPosGenApp to enable sscan scans with a variable step sizeJ. Lewis Muir (
special functionx-ray monochromatorsupport for various x-ray monochromators (channel-cut, dispersive double crystal, spherical grating)Tim Mooney (
testingrealTimePerformRTOS Performance MeasurementShifu Xu (