-
Notifications
You must be signed in to change notification settings - Fork 2
IOCs
Remember, EPICS is a collaboration! Why create an IOC when you can just use one that's already out there? If the device is not ISIS specific, before thinking about creating an IOC check whether it is listed here and, if not, email the mailing list here.
Building a new IOC? Before you get started, take a look at the relevant instrument page to see if there's any useful information for the device you're about to write an IOC for. Otherwise, let's get going. If you have problems see See IOC and device Troubleshooting.
If you're building a new StreamDevice IOC you can use the IOC Generator script, for developer info see the wiki.
If you're not creating a StreamDevice IOC or you you would like to know how an IOC could be created manually see:
-
You can now flesh out your IOC to work. I would encourage you to do this in a TDD style (if not write the tests afterwards) and make sure you follow the conventions. To write in a TDD style use:
If you used the script to create your IOC an empty emulator and IOC tests will have been created for you.
-
- Additional for motors:
-
Add any manuals used to the manuals directory
- aSub records
- Motor IOCs
- Libraries to include
- Creating a MODBUS IOC
- Using LVDCOM
- Convert Record
- Multi-value Protocols Tricks
- IOC Utilities includes general templates
- Removing or Renaming an IOC module
- IOC Testing framework
- Complexity of LabVIEW Drivers
- Typical start up log for an ioc
- Some Design thoughts for a serial/Ethernet IOC
For information on specific IOCs see Specific Device IOC