Skip to content
HannahCawley edited this page Oct 14, 2022 · 45 revisions

Welcome to IBEX!

  1. Using the Developer Wiki
  2. Getting Set Up
    1. Git
    2. Creating Useful Shortcuts
  3. Familiarising IBEX
  4. EPICS Introduction
    1. Further EPICS
  5. Input/Output Controller (IOC) Resources
  6. Control System Studio
  7. Office Admin Links
  8. 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.

Using the Developer Wiki

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:

Wiki Search Results

Getting Set Up

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*.

Git

We use Git for version control of the codebase. For IBEX-flavoured git help, see:

If you're not familiar with it, learn it!

Creating Useful Shortcuts

There's a couple files/commands you'll find yourself using a lot. You can make desktop shortcuts to these that will make your like a lot easier!

  • EPICSTerm (The EPICS terminal window where IOCs are built and run)
  • start_ibex_server
  • stop_ibex_server

These are found in C:\Instrument\Apps\EPICS

Familiarising IBEX

IBEX: Introduction

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.

Ironically, to get a well-explained overview of what IBEX is, and how to interact with it as a dev, the [IBEX User Manual](Home · ISISComputingGroup/ibex_user_manual Wiki · GitHub) is a really nice place to start. In particular, see:

IBEX: EPICS and technical bits

From a more technical perspective, some pages to read over:

Pages to skim over. Read in detail only when needed:

Every section after this 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.

EPICS Introduction

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:

Further EPICS

IOC (Input Output Controller) Resources

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.

Control System Studio

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.

Office Admin Links

As a new starter you should add your name and picture to the training slides.

  • 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

More about IBEX

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.

Our workflow

Here's some useful bits and bobs for how our team operates, and the conventions we use in our development process.

Clone this wiki locally