1) A bit of context

 The Anti-proton Decelerator (AD) relies on the same versatile synchrotron chain as the Large Hadron Collider (LHC) to produce Anti-protons. 

 A linear accelerator plus two synchrotrons are needed to accelerate protons up to 26GeV/c. These multi-purpose accelerators are the Linac2, the Proton-Synchrotron Booster (PSB) and the almost 70 year old Proton-Synchrotron (PS). The 26GeV/c proton beam extracted from the PS impacts the AD target and the nuclear interaction between the proton beam and the spallation material of the target (iridium at the present time) are responsible for the production of the secondary particles (among which anti-protons). The secondary particles emerge from the target with a given momentum and angular distribution, and the charged particles entering the magnetic volume generated in the 400kA (kilo-amps) pulsed horn can be deviated into a parallel beam [1]. 

 Around 1.4E13 protons from the PS are needed to inject approximately 4E7 anti-protons in the AD synchrotron.

 Once injected in the AD, the anti-protons will follow a 120 seconds deceleration cycle, composed of several processes. During this time, 3 deceleration processes will append, each followed and preceded by a beam size reduction process. These reduction processes, the so-called 'beam cooling' are the stochastic cooling [2] and the electron cooling [3].

 The purpose of the AD, and more precisely its low energy anti-protons produced, is anti-matter studies. Currently the AD serves several experiments that are studying antimatter and its properties: ALPHAASACUSAATRAP and BASE. Two other experiments, AEGIS and GBAR, are preparing to study the effects of gravity on antimatter. GBAR will be the first experiment to use antiprotons prepared by ELENA, the new decelerator [4].

2) The project

 As we saw, this anti-proton machine relies on multiple complex processes. There is a huge control infrastructure in order to drive it. For example, it is provided for operation some status fix screens, a lot of applications (software) running on the operation workstations, measurement instruments, etc...

 While there are statistics applications in order to analyse the long term performances of the AD, no fix display showing these data were present in the AD control room.

 So the aim of this project is to fill the needs of a fast viewing screen, showing the performance of the AD over the last 24h.

3) Display repair


 Yet receiving a 96x16 flip-dot display found an eBay is a challenge. It results a 1.80 meters long package traveling from England! Unfortunately this display needed some repairs. It passed the self tests but soon some part of the display start to malfunction. (hey, I knew why it was on eBay and relatively cheap)

 So lets open it and try to figure out some working principle.

 The sign was made by hanover display, and is composed of 3 panels of 16x32 dots. They are controlled by another board housing a 68000 type micro-controller.

 After some googling and readings of the datasheet of the components present on the board, it seems that each panels are driven by some rather 'common' type of signals. Such as sync clocks and data to control the counters and shift registers present on the PCB.

 It appears that one of the CD4042 binary counter were fried. Maybe an over voltage ? Anyway, I realized back at that time, the surface mounted components were glued before soldering. But after some careful heating, they went off.

4) Programming

 I would like to keep as much as possible the original electronics, mainly because it is yet engineered to be reliable. So I made some search about the protocol used by the driving board.

 It uses a RS-485 link at 4800 bauds, so it can be easily done with an USB dongle. For the protocol, I mostly learned the principle thanks to KS156's python program on github [5]. 

All the data sent to the displays are in an ASCII representation, meaning that each bytes (or, pratically, 8 dots) are represented by two ASCII bytes. For example, 0x3E will be represented by following ASCII sequence : 0x33 0x45.

 The programming language used on the linux accelerator control workstation is Java (with the possibility of python as well). After some discutions with experts to have access on the serial port with the purejavacomm library, it starts to be possible to display useful information on the flip-dot display:

 The refresh rate is rather slow (~1 second), as the column are updated sequentially, but as the purpose is to display something almost fix (refreshed every 2 min), it's not an issue.

5) Installing

Once a convenient place was found to fix the display, some cabling takes you under the control room floor:

We can now in a single look know the daily performances of our machine:

 At the time of writing it is currently the annual period when the maintenance of the accelerators are performed. It is time for some pixel "art" :

6) Some entertainment

Refreshing the screen is always fun:


1: AD-Horn Thermomechanical and Electrodynamic

2: Stochastic cooling

3: Electron coolers

4: AD home page

5: Python driver for Flipdot destination signs