IDCS Logo
  • Introduction
    • The Control Hardware
    • The Control Software
  • IDCS - The Insertion Device Control System of BESSY II
    • Preface
      • A Brief introduction to Insertion Devices
    • Overview over major components of IDCS
      • Hardware-Components
        • The ID-IOC
        • The MOCON
        • The UniDrive
      • Software-Components
        • IDCP
        • MOSERV
        • MOSIM (a Test-Program)
        • UNISERV
        • UNISIM
    • External Interfaces
      • The MC-IOC Interface
      • The Machine Control System Interface
      • The Motor-Interface
      • The Measurement System Interfaces
    • Internal Interfaces
    • Existing Software-Components used by IDCS
      • Programming Languages
      • Operating Systems
      • Drivers
        • VCAN
      • Libraries
        • SCI
        • GPS
        • LowCAL
        • SDO
        • GPS Device Support
        • EPICS
        • CALMVP
    • Design-Outline of the IDCS software components
      • Outline of MOSIM
      • Outline of MOSERV
      • Outline of UNISERV
      • Outline of IDCP
  • The insertion device control program (IDCP)
    • How to build and install IDCP
      • Prerequisites
        • RTEMS
        • Linux
      • Prepare your $HOME/.hgrc file
      • Create a directory where to build the application
      • Method 1: Repository checkout
      • Method 2: Recreate repository with MQ Patches from installed version
      • Configure IDCP
      • Build IDCP
        • Troubleshooting
      • Distribute a version
      • Activate a version
    • Edit configuration files in an installed version
      • Step One, make a backup
      • Step Two, edit the files
      • Step Three, activate the changes on the IOC
        • Reload the configuration file idcpnn_config.tab
          • Reload with caput (preferred)
          • Alternatively reload on the IOC console
        • Reload the current correction tables idcpnn_gap2ccmm.tab
          • Reload with caput (preferred)
          • Alternatively reload on the IOC console
      • Complete example
    • IDCP User Interface
      • Preface
      • Naming conventions for process variables (“PVs”)
      • Basic components of the undulator
      • Normal operation
        • How to detect the end of a movement
      • List of Process variables
        • Undulator State
          • State
          • Error
          • Position
          • Calculated Position
        • Controls
          • Destination
          • Command
          • Exec
          • Stop
          • Drive mode
          • Local/Remote
          • couple gap/shift
          • Dynamic Speed
        • Energy Table support
          • Topdir
          • Subdir
          • File
          • Energy column selectors
          • Gap column selectors
          • Shift column selectors
          • Select columns
          • Set energy
          • Energy speed
          • autostart
          • speed_control
      • Panels
        • User Panel
        • Energy Panel
      • Advanced concepts
        • Dynamic speed
          • Activating Dynamic Speed
          • Setting Dynamic Speed via Channel Access
          • Setting Dynamic Speed via the CAN Bus
        • Energy Table Support
          • How to load an energy table
          • How to select table columns
          • How to select an energy
          • How to move with constant energy speed
    • IDCP Status and Error Codes
      • Main panel
        • Status Codes
        • Error Codes
      • UniDrive undulators, UNIDRV Panel
        • Status codes
        • Error codes
        • Warning codes
      • UniDrive undulators, DIAG Panel
        • Status codes
        • Error codes
      • MOCON undulators, MOCON Panel
        • Status codes
        • Error codes
        • Warning codes
        • HW Error codes
    • CAN Object ID conventions at the HZB
      • Preface
      • Two ways to construct COBs
      • Node channel scheme
      • Node subobject scheme
    • The Monochromator CAN bus interface specification
      • Preface
      • Node-ID
      • CONFMESSAGE
      • PARAMETER
        • Dynamic Speed
      • FASTMESSAGE
    • IDCP correction coil control (ACS)
      • Introduction
      • Tables
        • One-dimensional tables
        • Two-dimensional tables
      • The configuration file
      • Calculated axle definition
      • Changing the configuration
    • The idcp-dist-info tool
      • Original documentation
      • Examples
        • Simple report for a single insertion device
        • Get fallback information for an insertion device
        • Show all active software versions for all insertion devices
        • Show the 5 most recently used software versions for all insertion devices
        • Show the 5 most recently used software versions for a single insertion device
      • Report ordered by version names
        • Format of the report
        • Show all versions ordered by version names
        • Report versions that are active on at least one insertion device
        • Show which !IOCs use or used a specific version
      • Report with additional information for a software version
        • Format of the report
        • Example
      • Report on version lifetimes
        • Format of the report
      • Report IOC boot times
        • Format of the report
    • Change IDCP versions used by IOCs (rsync-dist)
      • Introduction
      • Using idcp-dist-info to generate reports
      • Checking out the source with idcp-get-source
        • Examples for for getting IDCP sources
        • Display information with idcp-get-source
      • how to activate a version
    • The IDCP parameter database
      • Parameter database locations
        • Globally installed file
        • From working copy of the id-db repository
        • XML-RPC
      • Database queries with the iddb tool
        • Installing iddb
          • Installing with bii_scripts
          • Direct install
            • From the internal network at the BESSY II site
            • From anywhere else
        • iddb Usage
      • Using an editor to view the data
      • Using SDview to query the data
        • Starting SDview
        • SDview basics
        • Organization of the data
        • A first overview
        • Showing all parameter groups of a single undulator
        • Showing a single parameter group of an undulator
        • Showing a single parameter group of an undulator
        • Searching for a given parameter name
        • Searching for a value
      • Using SDpyshell to query the data
        • Starting SDpyshell
        • SDpyshell basics
        • Organization of the data
        • Simple queries
        • Parameter metadata
          • Parameter metadata: parameter-info
          • Parameter metadata: id-path-info
        • Finding a parameter if the exact name is not known
        • Comparing a parameter for all insertion devices
        • Querying a group of parameters
        • Find parameters that have a certain value
        • A complex query
        • Programming
      • Query the data with xmlrpc
    • List of IOC Bootparameters
      • List of IOCs
      • List of bootparameters:
        • eis3g.blc03.bessy.de
        • eis5g.blc05.bessy.de
        • eis6g.blc06.bessy.de
        • eis7g.blc07.bessy.de
        • eis8g.blc08.bessy.de
        • eis9g.blc09.bessy.de
        • eis10g.blc10.bessy.de
        • eis11g.blc11.bessy.de
        • ei1s11g.blc11.bessy.de
        • eis12g.blc12.bessy.de
        • ei1s12g.blc12.bessy.de
        • eis13g.blc13.bessy.de
        • eis15g.blc15.bessy.de
        • eis4gp.mlscs.bessy.de (MLS)
        • 10.3.4.199 (SESAME)
  • How to set up the IOC hardware
    • Linux PC
      • HTTP Proxy settings
      • Basic setup
        • Create bootable image
        • Install
        • http proxy
        • ssh setup
        • apt-file setup
      • Packages
      • NTP setup
      • ioc user setup
      • idadm user setup
      • Access to remote file system
      • Set up console server
      • Install EPICS Base
      • Set up caRepeater service
      • Set up idcp script directory
      • Set up CAN bus initialization service
      • Set up idcp IOC as a service
      • Console access
    • VME Bus CPU with RTEMS
      • Set up NVRAM
        • Preparations
        • Set up real-time clock
        • Set up boot information
        • Set up auto boot
        • Monitor the boot process
        • Configure boot parameters
    • UniDrive device
      • SM-Application and SM CAN-Open
        • Prerequisites
        • Setup of a new device
      • SI-Application and SI CAN-Open
        • Prerequisites
        • Setup of a new device
  • The UniDrive Motor control system
    • The uniserv application
      • Finding the source code that is in use at an insertion device
      • Rebuilding the source directory for an installed version
      • Get and install uniserv
        • Get a working copy from the central repository
        • Configure the application
        • Create a local build
        • Install on the version server
      • Install the DPL files on the UniDrive devices
        • First time installation
        • Normal installation
        • Troubleshooting
    • The uniserv CAN bus interface specification
      • uniserv CAN Bus Protocol
        • Node-ID
        • CANOpen sync object
        • CANOpen PDO variables
        • CANOpen SDO variables
        • How to move an axle
    • Initialization of PDO objects on a UniDrive device
      • Setting the mode
      • The PDO and SYNC COB initialization
        • Definition of the SYNC COB
        • Initialize Tx3 PDO, CAN_STATUS
        • Initialize Tx5 PDO, CAN_CURR_POS
        • Initialize Tx6 PDO, CAN_TABLE_DELTA
        • Initialize Rx1 PDO, CAN_SPEED_VAR
        • Initialize Rx3 PDO, CAN_BROADCAST
        • Initialize Rx5 PDO, CAN_MAX_TIME
        • Initialize Rx6 PDO, CAN_DATA_ITEM
    • The unisim application
      • Download the application
      • Configure and build
      • Set up of your environment variables
      • Configure the virtual CAN Bus
      • Start the application
  • The MOCON motor control
    • Get and install MOSERV on the MOCON device
      • Checkout the moserv application
        • If you access as user “rcsadm” to our repository server
        • In all other cases (read-only access)
        • Location of the files
      • Install APOS and the MOSERV program code on a windows PC
        • Setup you PC
        • Use”APOS” to transfer the MOSERV application to the MOCON device
          • Connect the MOCON with your PC with a serial cable
          • Start dosbox
          • Configure MOSERV
          • Start APOS
          • Load MOSERV
          • Store MOSERV on the MOCON
          • Mark the program executable
          • Save the program
        • Test if the program is loaded
          • Exit APOS
    • The MOSIM application
      • Checkout the mosim application
      • Installing mosim
  • How to simulate IDCP on a Linux PC
    • Overview
    • Prerequisites (incomplete)
    • unisim
    • idcp
    • Configure virtual CAN Bus
    • Start unisim
    • Start idcp
    • Initialize undulator
    • Start DM2K
    • Use
  • CAN Bus Specifications and Troubleshooting
    • Cabling
    • Topology
    • Termination
    • VME-CAN4 Interface card
      • Manual
      • VME-CAN4 diagnostic LEDs
    • CAN Cable lengths
    • Troubleshooting
      • Termination
      • Connectors
      • Ports
      • Diagnose with a Linux Notebook
      • CAN line to the monochromator
        • Diagnose with LED
        • Diagnose with channel access
        • Diagnose with Linux notebook
          • Check if the Undulator IOC has a problem
          • Check if the cable prevents the sending of CAN objects
          • Check if one of the monochromator IOCs causes the problem
  • Insertion Device Cryo control program
    • The source
    • How to compile
    • How to put the software on the server
    • How to restart the server
    • IP Address translation
  • IP Addresses and DNS names
    • IOCs
    • Lantronics terminalserver (Unidrive Remote Access)
    • Lantronics Terminalserver configuration on hosts vmi1c.blc.bessy.de and vmi2c.blc.bessy.de
    • Unidrive IP access
    • Power supply addresses
  • Sites
    • BESSY II Storage ring
    • Metrology Light Source
    • SESAME
  • The Source Code
    • The idcp documentation project
    • The Insertion Device Control Program (idcp)
  • IDCP, uniserv, moserv and mosim license

Imprint / Legal Notice
IDCS
  • Search


© Copyright 2026, Helmholtz-Zentrum Berlin.

Built with Sphinx using a theme provided by Read the Docs.