autoparamDriver is an EPICS module that facilitates writing a generic device
driver based on asyn that does not know ahead of time which (or how many)
parameters the device supports, delegating the job of defining them to the EPICS
database. If you've ever used EPICS modules like modbus or s7plc, you
already know what this is about. In any case, check out the documentation to
learn what autoparamDriver can do for you.
Note: When learning how to use autoparamDriver, please do not try to
learn from the autoparamTestApp included with the driver. As its name says,
it is used for testing and is not a good resource. Please refer to the
Tutorial section of the documentation instead.
Familiarity with installation of EPICS modules is assumed.
Dependencies:
- EPICS base, tested with version 7.0.5
- asyn, tested with version R4-41
Dependencies for building documentation:
To install:
- configure the
configuration/RELEASEfile, pointing theEPICS_BASEandASYNvariables to the locations where EPICS base andasynare installed (this is more efficiently done by placing aRELEASE.localfile a level above theautoparamDriverdirectory); - configure any other build settings as needed for your EPICS environment (if you don't know what this means, it's probably not needed);
- run
make.
To use from another module:
- configure the
configuration/RELEASEfile of the depending module, setting theEPICS_BASE,ASYNandAUTOPARAMvariables to the locations where the respective modules are installed; - update
yourIocApp/src/MakefileaddingyourIoc_DBD += asyn.dbdyourIoc_LIBS += autoparamDriveryourIoc_LIBS += asyn
- follow the tutorial in the documentation.
To build documentation:
- install
doxygen,breathe,sphinxandsphinx_rtd_theme; - run
make docs; - find the documentation at
docs/build/html/index.html.
Copyright 2022 Cosylab d.d. https://www.cosylab.com
Provided under the terms of the MIT license.
Files that are trivial, generated by the EPICS build system, or otherwise considered to contain little creative expression, are provided under the terms of the MIT-0 license.
See the LICENSES/ directory and headers of individual files for more
information. This package is REUSE compliant.