TC400 Telescope Drive

What is isn't

The TC410 is not a complete "goto" system that you might get from commercial telescope makers like Meade and Celestron. It has no knowledge of geographical position or siderial time, it doesn't understand equatorial coordinates and it doesn't have a database of objects that it can "go to".

Despite this is can be used stand-alone as a pure "dumb" equatorial drive system since the tracking and 2-axis joystick control are all that's needed for this job. Of course it could be made into a complete integrated "goto" system by just throwing more software into it and, should the need ever arise, then that will undoubtedly happen. The thing is that we have no need for this functionality.

It is not a retail product and as not been through a certification process to determine whether it passes EMI and safety standards.

What it is

In a nutshell, it's a dual-axis motor controller. In fact it knows so little about astronomy it could probably be used to drive things other than telescopes. This was designed from the outset to be the drive component for a larger automation system. As such there is always a computer running the show so why should the embedded software do what is easier to do on a desktop computer?

The TC410 is an evolutionary version of the TC400 with a better integrated design and revised embedded software.

Motor drives

The motor coils are driven by switch-mode current drivers. The maximum phase current is software-configurable between 1.0A and 7.0A in steps of 0.1A. Motors are microstepped at 1/10th of a full step for the Gecko (on the secondary axis) and either 1/16th or 1/1256th of a step for the IMS (on the primary axis).

Velocity control

Maximum step rate is 20,000 microsteps/second which, on a a typical 200-step motor is 10 revs/second (600 rpm). 1 arc-second steps require a drive ratio of 1:648 which permits an equatorial tracking rate of 15 microsteps/second and a maximum slew rate of 5.5 degress/second. Tracking smoothness and maximum slew rate can be traded off by appropriately designing the drive train. Velocity is controllable to a resolution of about 1/1000 microstep/second allowing theoretical maximum tracking drift of about 1 arcminute/day.

Maximum motor velocity is soft-configurable (per axis) because maximum theoretical speed is not necessarily attainable with a constant-power motor. Similarly, acceleration and deceleration are independently configurable for each axis to allow suitable values to be chosen for the intertia and responsiveness. Slow acceleration is generally preferable but is annoying when driving manually with the joystick.

Velocity control is prioritized as follows:
  1. Slew to target (goto mode)
  2. Remote speed set
  3. Joystick input
  4. Autoguider input
  5. Default track rate
Slew-to-target is used by software running on the main computer to slew to a position. The computer calculates the axis positions appropriate for the object and the TC410 automatically accelerates, coasts (if necessary) and decelerates to the target position.

Joystick input is normally logarithmic allowing guiding speeds with small joystick deflections and slew speeds with large deflections.

The autoguider supports analogue inputs (similar to the joystick input) or digital.

A default track rate can be set-and-forget if the telescope is mounted equatorially, otherwise the computer can periodically update the tracking velocity for non-linear two-axis tracking.


The TC410 only keeps position in units of motor steps about each axis. All conversion to other coordinate system is done externally. Internally, the (preferred) position is keep to 10^-8 of a microstep to allow low cummulative tracking errors but, of course, physical position resolution is 1 microstep and this is what is reported if the position is queried.

Encoder inputs support up to 16-bit Gray code. Relative/incremental encoders are not supported. The main use of encoders is so the system knows where it is on power-up and to re-establish position in the event of a drive anomaly (eg motor stall, clutch slip). This includes allowing the telescope to be pushed (by hand) without losing its bearings. The encoders are not processed in any way by the TC410 (it's basically just a unified interface for them) so their integration into the feedback loop is entirely done with external software. Typically if the motor position differs from the encoder position by some threshold and the telescope is stationery (or just tracking) then the motor position is reset according to the encoders.

Support software

Currently, we only have (GUI) software for RISC OS. We have a stand-alone RISC OS driver which allows the drive to be configured, monitored and controlled as well as providing a two-way communication channel to ROCchart  (our RISC OS star chart software). This allows the telescope's position to be shown in real-time on the chart and for the telescope to be driven to an object by clicking on it.


Technical manual (revision 2, 638K pdf)
RISC OS stand-alone driver (194K zip)
Partial source code for RISC OS driver (71K zip)
ROCchart  (RISC OS startchart supporting TC410)