Software Distribution

Software developed at the Helmholtz-Zentrum Berlin is distributed under one of these licenses:

Have a look at the file LICENSE at each project to see what license applies.

For projects that have no license information, the HZB License applies.

Tools and Utilities

bii_scripts

A collection of tools we wrote, mostly for development.

darcs-notify

Shell script to manage automatic sending of emails for darcs repos. Similar to darcs-monitor, but faster, simpler, and easier to set up.

hgen

A perl script to generate c header files from special comments in c source files.

pyexpander

A a powerful macro processing language based on Python. Instead of simple macro replacement it offers evaluation of arbitrary python expressions and execution of python code. pyexpander may also be used to replace msi.

pymsi

An EDSL in Python similar in syntax and semantics to msi

rsync-dist

A Perl script for managing distributions of binary files.

Sch2db.pl

CapFast schematic to EPICS database converter.

StructuredData

A universal data storage with type declarations and a shell.

sumo

Maintaining versions and automaically building EPICS support modules.

sumo-edit

Command line tool for viewing and editing the sumo database file with a minimalistic approach.

udp-broadcaster

A program to forward UDP broadcasts to other networks. Used by the Channel Access Gateway configuration at the HZB.

EPICS CA Clients

DM2K

An EPICS display manager derived from medm.

Pezca

Perl binding for the EPICS easy channel access module.

EPICS Support Modules

caPutLog

CA put logging facility. Please note that this version is out-dated, the caPutLog module is now community maintained at github.

csm

Library support for one- and two-dimensional interpolation tables plus cvtRecord type for general (table-driven and other) conversions

MultiCAN

EPICS device and driver support for the CAN bus

OPC Device Support

EPICS device support for accessing an OPC server

PMAC

EPICS device & driver support for PMAC Motor Controller

Sequencer

The EPICS State Notation Language and Sequencer

RTEMS

rtems-from-scratch

A project that builds the rtems cross compiler toolchain “from scratch”. The original RTEMS source builder script has some problems building old RTEMS versions on modern linux systems, which this project fixes before calling the source builder. Supported RTEMS versions are 4.9, 4.10, 4.11 and 5. As a default, this builds the cross compiler tools for the Power-PC platform.

rtems-build-tool

A project that builds the rtems kernel for the mvme2100 and mvme5500 CPU as it is used the the HZB. The script downloads the RTEMS kernel and some additional libraries that are hosted or mirrored at the HZB. This project be used like an EPICS device support together with sumo.

Applications

IDCP

The Insertion Device Control Program. Note: Documentation is here: Insertion Device Control Documentation.

id_db

The StructuredData database with parameters for Insertion Devices, used by IDCP.

P_SERVER

The software that runs on our embedded controllers and provides low-level power supply control