You are here: Foswiki>Software Web>TCS (23 Sep 2019, PetrKubanek)Edit Attach

Telescope Control System

TCS is controlling the LBTO observatory. It's various subsystems control and provides a readout of sensors on the building, mount, rotators, autoguiders and optics support. Most of the telescope hardware is controlled through MCSPU, UMAC motion controllers (M3, hexapods,..) are controlled directly from TCS subsystems. See for details.

TCS is versioned in GitHub -


  • AOS - Adaptive Optics System
  • ECS - Enclosure Control System
  • ENV - ENViromental subsytem
  • GCS - Guiding Control System
  • IIF - Instrument InterFace
  • LSS - Logging SubSystem
  • MCS - Mount Control System
  • OSS - Optical Support Structure
  • PCS - Pointing Control System
  • PMC - Primary Mirror Control
  • PSF - Point Spread Function

TCS Configuration

  • TCS configuration - short document about TCS networking, subsystem management, important file paths, etc.


Instruments shall communicate with TCS using ZeroC ICE. The interface is defined in iif/ice/ file.

TCS submodules communicate with each other using LBTO's RPC (remote procedure calls) mechanisms. The request is encoded in XML, transferred to the server. Responses are again XML encoded and send on the same socket to a client. TCS uses a custom XML parser to encode and decode strings.

Shared memory

TCS uses shared memory to store the actual telemetry data.


Runs on TCS cluster (tcs1 & tcs2 machines at CRA). Logs are stored in /lbt/data/logs/tcs/..., telemetry in /lbt/data/telemetry/...


Restart something

%CODE{lang="sh"}% netconfig stop netconfig start %ENDCODE%

Replace "stop" with the "kill" to kill the process instead. You can also use kill command with a process ID, or use killall. Processes are running either on tcs1 or tcs2.

%CODE{lang="sh"}% netconfig ps netconfig start all netconfig stop all # restarts rpc & shared memory servers netconfig stop netconfig start %ENDCODE%

Change binaries

%CODE{lang="sh"}% cd /lbt/tcs/current ./tcs-build show ./tcs-buidl activate <name(s)> %ENDCODE%

Operating (driving) the TCS

Switching the TCS

Software Releases

64 Bit TCS

  • Performance monitoring notes
  • As of early 2015, we have released the CentOS 7, 64 bit version of the TCS. The 64 bit mountain cluster has two computers (tcs1 and tcs2) which have only two users: tcs, and observer. ssh keys are used to authenticate access, allowing user telescope on any obs computer to ssh to a 64 bit computer as user tcs or user observer without using a password. The tcs user has sudo privileges. All the subsystems except IIF are split between tcs1 and tcs2, the IIF runs on tcs2, and all the GUIs run on tcs1.
  • The DNS entries iif, dds, and tcslog must be changed for third party applications (instruments, big displays, etc) to work properly.
  • Stephen has made a 'transport' mechanism to allow commands used on the 32 bit obs computers to be executed on the 64 bit cluster. In order to activate these 'transport' commands, the TCS build on the obs computers must be switched to build tcs64 using the lbtswitcher. (The command lbtswitcher64 is provided to run the lbtswitcher on the 64 bit cluster.) Once this is done, the TO should start the TCSGUI from the icon as normal, and then start subsystems and GUIs as normal. Just be aware that the TCSGUI is actually running on tcs1. The 'transport' mechanism treats user telescope specially: the access is made as user tcs, while for other users the access is made as user observer. We expect normal users will never need to login directly to any of the 64 bit computers. The list of supported commands is
AOSGUI         DDBrowser      ddsclient      DDViewer       ECSGUI         ENVGUI         gcsclient      GCSGUI         gshmconfig     gshmmonitor    IIFGUI         LSSGUI         lbtswitcher    mcsclient
MCSGUI         netconfig      OSSGUI         PCSGUI         pmac           PMCGUI         psfclient      PSFGUI         ptincrement    ptlist         ptmodify       ptreset        rpcconfig      TCSGUI
  • As of build 2016A the locale is back to mountain.
  • TCS sounds are now played by the LSS subsystem (not the GUI) and will emanate from one of the available computers in the control room.

Software Testing Status

TCS SW Status Reports 2008 and 2009

Building, Patching and Installing Software

Subsystem Development Documentation

Common Software Documentation

GUI Development Documentation

Utilities & Tools Documentation


I Attachment Action Size Date Who Comment
TCS_Communication_Paths-2.pdfpdf TCS_Communication_Paths-2.pdf manage 1 MB 20 Aug 2019 - 20:25 PetrKubanek TCS Communications Paths - 2009
TCS_Status_Hill.pptppt TCS_Status_Hill.ppt manage 6 MB 20 Aug 2019 - 20:24 PetrKubanek Nov-2010 TCS Overview - J Hill
TCS_training_2018-05-02.pdfpdf TCS_training_2018-05-02.pdf manage 493 K 12 Sep 2018 - 22:15 PetrKubanek  
Topic revision: r15 - 23 Sep 2019, PetrKubanek
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback