EPICS Cheat Sheet
Channel Access (CA) command-lines
caget
- get the value of one of more PVscaput
- change the value of a PVcamonitor
- monitor the value of one or more PVscainfo
- print info about a PV, including which host is running the IOC
Example:
$ caget kmp3:m1.{DESC,RTYP,DTYP,VAL} kmp3:m1.DESC theta motor kmp3:m1.RTYP motor kmp3:m1.DTYP asynMotor kmp3:m1.VAL 60
Noteworthy fields
VAL
- the default field (used if no field is specified in the vast majority of cases)SCAN
- determines when a record processesNAME
- the record name (helpful if records are aliased)DESC
- record descriptionRTYP
- the record typeDTYP
- the device support type (not meaningful for all record types)DISP
- disable puts (ca = channel access & pva = pv access) from outside the IOC (when non-zero); e.g. disable a motor from the motorx_all screenDISV/DISA/SDIS
- disable record processing internally
- Record processing is disabled when
DISA
equalsDISV
(e.g. uses SDIS field to read in a value/mode, which will disable some control if a certain mode is active)
- Record processing is disabled when
DISA
is set to the value of the PV in theSDIS
field, if it isn't empty
TPRO
- trace processing: when set to 1 prints out all the records that get processed after the record is processed; used only for troubleshooting
Note: some of the fields of a record are actually record attributes (they return the same value for all instances of the record type; see https://epics.anl.gov/)
IOC shell commands
To connect to (disconnect from) the IOC shell, see here:
help [command]
- shows available commands or syntax of specified commanddbpr record_name [0-9]
- displays fields and values for a given recorddbl
- lists all records in an IOCdbl record_type
- lists all records of a specific type in an IOCdbl record_type "field_list"
- lists specified fields (space-separated list) of records of a specific type in an IOCdbpf pv_name value
- change a PV’s value – analogous to caputdbgf pv_name
- read a PV’s value – analogous to cagetepicsEnvShow
- prints environment variablesseqShow
- shows running sequence programsseqStop
- stops a running sequence program