-
Notifications
You must be signed in to change notification settings - Fork 2
New Starters
- Using the Developer Wiki
- Getting Set Up
- Familiarising IBEX
- EPICS Introduction
- Input/Output Controller (IOC) Resources
- Control System Studio
- Office Admin Links
- More about IBEX
This page is designed to be used as a comprehensive reference to getting started in the Instrument Controls team. Written by new-ish starters, for the newest starters. It's a collection of useful resources which will speed up your onboarding and get you developing.
There are many how-to guides in the Developer's manual. If you're searching for a particular nugget of information and can't find the relevant page, double check the results in the 'Wikis' tab:
First off you're going to need all the developer tools we use, a copy of the existing codebase, and the Eclipse GUI for IBEX*.
We use Git for version control of the codebase. If you're not familiar with it, learn it!
It's handy to create desktop shortcuts for frequently used links:
- EPICSTerm (The terminal window where IOCs are built and run)
- start_ibex_server
- stop_ibex_server
These are found in C:\Instrument\Apps\EPICS
While that's installing, get to know the IBEX components. Get to know EPICS. It's the software environment that IBEX uses to control the ISIS instruments. Pages to read over:
Pages to skim over. Read in detail only when needed:
Every section after his line contains reference information that you do not necessarily have to read before you do your first ticket, but it is where you should take a look when you find out you need to learn new things in order to do your work.
There is much to learn about EPICS and it can be difficult to know what you're looking for. You do not have to read these resources until you get to writing your first IOC. Here are some overviews:
- Old but still good overview - https://epics.anl.gov/docs/GSWE.php
- More recent overview http://www.aps.anl.gov/epics/docs/training.php in particular http://www.aps.anl.gov/epics/docs/USPAS2014.php
- Powerpoint EPICS overview
- Training Course
- Database Principles (what's a record? And more)
- Database Principles II (with examples)
- State Notation Language 1 State Notation Language 2
- ASYN/Stream Device overview
- YouTube Videos covering the epics.gov.anl slideshows
When building an IOC, emulator, or writing tests, much can be learned by looking at existing IOCs. However, there are also several places online to find good sources for learning and referencing.
- Protocol Files and Record Types - Excellent reference for when you're mixing up your %d's and %f's. Bookmark this one!
- Sequencer - State Notation in IOCs - All about implementing a state machine into an IOC, if needed.
We use a number of parts of CSS in our GUI (Alarms, Databrowser etc.). Most of these resources require little developer interaction apart from creating Operator Interfaces (OPIs - GUIs, essentially) for the instrument controllers. Here's an overview and get started guide.
Other wiki resources that you might want to check if you need to find out some information needed for your work:
As a new starter you should add your name and picture to the training slides.
- IBEX Project Board - Work tickets
- ISIS Sharepoint - Shared ISIS documents, manuals, meeting minutes etc
- Oracle Login - Book leave, create timesheets
- Flexi Time - If you're on Flexi time and need to view/edit your work history
There are some training materials available that we use to train scientists on IBEX. It is a good way to get started on learn about what IBEX is and the features that are available in it.