An Arduino-based controller for Celestron CG5-series equatorial mounts.
No stable version was released yet, so you can expect some critical bugs to occur. It shouldn't be used in unattended telescopes!
Currently NextDriver was tested only with KStars/Ekos using the Celestron NexStar INDI driver to control a Celestron CG-5 GT Advanced Series mount.
NextDriver is a USB controller for the Celestron NexStar AUX protocol implemented in Arduino. The Arduino replaces the hand controller, receiving the commands from the PC (HC procotol) and controlling the mount (AUX protocol).
With NextDriver you won't need a hand control to control your Celestron mount anymore. It allows a fully remote operation of the mount by removing the tedious manual startup proceeding.
Documentation on the NexStar HC and Aux protocols:
- Dual color red-green status LED:
- Red: time not set
- Yellow: time set. no synced/aligned
- Green: synced/aligned
- Green LED: slewing
- Red LED: Error (limits, communication)
- Yellow: not used yet
Required parts:
- Arduino UNO
- Prototype Expansion Board for Arduino UNO
- Infrared sensor modules. You can build the circuit shown in the schematics or you can buy already-built modules
- Limit switch for RA axis
- Tilt switch for declination axis
- 6P6C female connector
- RJ12 male to male cable
- 1N4148 (or similar) diode
- Red, green, yellow LEDs
- Dual red-green LED
- Resistors (shown in the schematics)
- Home (index) sensors to allow remote startup without requiring manual alignment
- Limit sensors to avoid collisions beween the telescope and the mount
- Automatic meridian flip when slewing to a target
- Home and abort buttons
- Status LEDs
Supported HC commands:
- GetEqCoords
- GetAzCoords
- GetPierSide
- SyncEqCoords
- GotoEqCoords
- GotoAzCoords
- GotoInProgress
- CancelGoto
- IsAligned
- SetTrackingMode
- GetTrackingMode
- SetLocation
- GetLocation
- SetTime
- GetTime
- GetVersion
- GetVariant
- GetModel
- Hibernate (not working yet)
- Wakeup
- Echo
- PassThrough
The code is built using PlatformIO, so you'll need to install it in order to build the Arduino firmware and upload it to the board.
Test the code in your computer (it does not require an Arduino board):
pio platform install native
pio test -e native
Build the firmware for Arduino UNO (default target):
pio run
Program the board:
pio run -t upload
Currently, only CG-5 mounts in the North hemisphere are supported.