Linux Support for Antares CCD Controllers

PixCellent Imaging Ltd does not provide Linux support for its cameras itself. However a Linux driver has been developed by the University of Geneva Observatory for the PixCellent Imaging Ltd Antares controllers. This is available directly from the Observatory from their ftp site: At this location there is the tar file and a README file in the directory pub/simond .

The README file is listed out below. Most of the basic components are very straightforward so experienced 'C' programmers should find it possible to use these drivers very easily. This driver package has, in fact, been used by several other astronomy departments successfully. In addition to the information provided by the Geneva Observatory, users wishing to use this driver will need to have a copy of the Antares 42 GCI manual. This can be provided in electronic form free of charge or in paper form at a miminal fee. No support is available from PixCellent Imaging Ltd for this Linux driver but it is believed to be very self explanatory.

(The 42gci package was originally produced by AstroMed Ltd, which became AstroCam Ltd, then LSR AstroCam and is now EG&G Life Sciences. It is available from PixCellent Imaging Ltd.)

I have renamed the astromed atlink driver 'lilink' for linux link. So every
function name have changed from atlink_xxx to lilink_xxx

The code is based on the atlink driver code and telmat driver code.

I have tried to keep linux code as close as possible to the original astromed code.

Concerning the linux driver part 'lilinkd':

I did not change any of the assembler code.
Only the df data input and transformation function have been completely
recoded in C, but we used only the df0 and df1.

The control register initial value of the astromed board was different under
MSDOS and Linux:

0xffff under Linux and 0x81c1 under MSDOS

I assume that the control port was not correctly initialized under linux.
So the Linux driver sets this value at driver initialization.
This is also used to check if the hardware is present at this address

Other modifications to original C code are only
linux specific kernel code and linux system calls changes.
All the linux specific part of the code is OK and probably you can reuse it
as it is. But you are certainly more able than I am to improve the astromed
specific part of the driver.

Concerning the 42gci library part 'lilink':
All the code is roughly the same. Only the function names and the df functions
have changed. I did not know if all the df functions are OK as we did not use
all of them. So you probably have to pay attention to those ones.

The driver can be build as a linux loadable module or as a builtin
kernel driver. We use it now as a loadable module, but the kernel version
as also been tested (this was the first version working).

To build a loadable module you just have to type make in the lilinkd
directory, then load it using /sbin/insmod

To build a kernel driver you have to copy the driver code to
/usr/src/linux/drivers/char directory, change the makefile and the
mem.c files.
All is describe in the documentation about building a linux device driver

We are using the slackware distribution version 3.0 (latest one).
This is a complete distribution including Linux kernel 1.2.13, X11R6,
Openwindows and all the GNU developement tools.
The installation is pretty easy and straightforward.
Our version of the GCI library is 1.70

I hope you will be able to use this driver. You can contact me if you
have any questions about my code, or about linux installation, driver, etc

Gilles Simond Observatoire de Geneve
Phone#: +41 (22) 755 26 11 Chemin des Maillettes, 51
Fax# : +41 (22) 755 39 83 CH-1290 Sauverny


The pages on this Web Site are Copyright of PixCellent Imaging Ltd., Cambridge, England. Reproduction in part is permitted with acknowledgement to PixCellent Imaging Ltd., and of this Web Site Address (
Comments, please, to
Site last updated: 15 January 2002.