Flxis X-ray Camera

The project Flxis (not a typo) is an X-Ray imaging subsystem. It offers a low-cost camera system in a highly intgrated package. All image enhancing controls are integrated into the system, from controlling the iris, image intensifier up to a full set of image enhancing and editing options.

The project started at Philips Medical Systems and sprouted from the idea to offer OEM customers a low-cost subsystem with built-in image enhancing capabilities. A large selection of options and a (planned) replacement of the microcontroller made flexibility the most important feature of the system, hence the project name.

A short list of features:

  • 1024x1024 camera resolution
  • Digital CameraLink input
  • Up to 2 Digital CameraLink outputs
  • DoseRate output
  • Serial CXA port
  • Service port
  • Optional CAN bus interface
  • Iris control
  • Image Intensifier control
  • Image enhancements such as noise reduction, hold, flip, rotate, review


  • Image enhancment using Spartan-3 FPGA
  • Infineon C166 controller (later XC167)
  • Flash (code), RAM (data) and EEPROM (configuration) memory
  • 3 serial ports. CXA interface, Service en Secondary Control
  • CAN bus
  • 3 PWM controls with A/D feedback. Iris, Image Intensifier en ND Filter

Realtime UML was used to create the software design. As operating systeem the real-time multi-threaded CMX system was chosen. Running 10 threads to handle multiple tasks with image enhancement being a few of them. For intercommunication simple mailboxes where chosen. To guarantuee reaction times all interrupt where coded to be as minimal as possible and have most of the real work being done in threads.

All code was programmed using Embedded C++. Tooling was used from Tasking IDE, IBM Rational suite, UCM, ClearCase, ClearQuest), TICS and C-Cover. All test and configuration tools where coded in C++ using Visual Studio .NET.