35#define DLL_EXPORT __declspec(dllexport)
37#define DLL_EXPORT extern
81#define AHP_DEBUG_INFO 0
82#define AHP_DEBUG_ERROR 1
83#define AHP_DEBUG_WARNING 2
84#define AHP_DEBUG_DEBUG 3
220 InquireMotorBoardVersion =
'e',
221 InquireGridPerRevolution =
'a',
222 InquireTimerInterruptFreq =
'b',
223 InquireHighSpeedRatio =
'g',
224 InquirePECPeriod =
's',
225 InstantAxisStop =
'L',
226 NotInstantAxisStop =
'K',
227 SetAxisPositionCmd =
'E',
228 GetAxisPosition =
'j',
232 SetGotoTargetIncrement =
'H',
233 SetBreakPointIncrement =
'M',
240 SetST4GuideRateCmd =
'P',
243 InquireAuxEncoder =
'd',
379#define AHP_GT_VERSION 0x163
DLL_EXPORT int ahp_gt_detect_device()
Detect the currently selected device.
DLL_EXPORT int ahp_gt_get_current_device()
Obtain the current device address.
DLL_EXPORT int ahp_gt_get_address()
Get the current device address.
DLL_EXPORT void ahp_gt_set_address(int address)
Change the current device address.
DLL_EXPORT void ahp_gt_select_device(int address)
Select a device on a serial bus.
DLL_EXPORT void ahp_gt_correct_tracking(int axis, double target_period, int *interrupt)
Start a tracking motion correction.
DLL_EXPORT void ahp_gt_get_ra_dec_coordinates(double Alt, double Az, double *Ra, double *Dec)
Get the azimuth tracking multiplier for AZ mounts.
DLL_EXPORT void ahp_gt_stop_tracking_thread()
Stop the tracking thread.
DLL_EXPORT void ahp_gt_set_aligned(int aligned)
Set the alignment state of the current device.
DLL_EXPORT void ahp_gt_sync_radec(double ra, double dec)
Set both axes positions to celestial coordinates.
DLL_EXPORT double ahp_gt_get_time_offset()
Get current time offset.
DLL_EXPORT double ahp_gt_tracking_cosine(double Alt, double Az, double Lat)
Get the azimuth tracking multiplier for AZ mounts.
DLL_EXPORT void ahp_gt_goto_radec(double ra, double dec)
Move both axes to celestial coordinates.
DLL_EXPORT double ahp_gt_tracking_sine(double Alt, double Az, double Lat)
Get the altitude tracking multiplier for AZ mounts.
DLL_EXPORT void ahp_gt_start_tracking_thread()
Start the tracking thread.
DLL_EXPORT double ahp_gt_get_ra()
Get the current right ascension.
DLL_EXPORT void ahp_gt_set_location(double latitude, double longitude, double elevation)
Set geographic coordinates.
DLL_EXPORT int ahp_gt_get_tracking_mode()
Get the tracking mode.
DLL_EXPORT void ahp_gt_set_time_offset(double offset)
Set current time offset.
DLL_EXPORT void ahp_gt_start_tracking(int axis)
Start a test tracking motion.
DLL_EXPORT int ahp_gt_is_aligned()
Get the alignment state of the current device.
DLL_EXPORT double ahp_gt_get_time()
Get current time.
DLL_EXPORT int ahp_gt_start_synscan_server(int port, int *interrupt)
Start an TCP server on the given port and stop after interrupt equals to 1.
DLL_EXPORT double ahp_gt_get_ha()
Get the current hour angle.
DLL_EXPORT void ahp_gt_set_tracking_mode(int mode)
Set the tracking mode.
DLL_EXPORT void ahp_gt_get_alt_az_coordinates(double Ra, double Dec, double *Alt, double *Az)
Get current altitude and azimuth.
DLL_EXPORT void ahp_gt_get_location(double *latitude, double *longitude, double *elevation)
Get geographic coordinates.
DLL_EXPORT void ahp_gt_goto_altaz(double alt, double az)
Move both axes to horizontal coordinates.
DLL_EXPORT void ahp_gt_set_time(double seconds)
Set current time.
DLL_EXPORT double ahp_gt_get_dec()
Get the current declination.
DLL_EXPORT void ahp_gt_read_values(int axis)
Read values from the GT controller.
DLL_EXPORT void ahp_gt_write_values(int axis, int *percent, int *finished)
Write values from the GT controller.
DLL_EXPORT unsigned int ahp_gt_is_detected(int index)
Report detection status.
DLL_EXPORT int ahp_gt_get_fd()
Return the file descriptor of the port connected to the GT controllers.
DLL_EXPORT void ahp_gt_disconnect()
Disconnect from the GT controller.
DLL_EXPORT void ahp_gt_set_fd(int fd)
Set the file descriptor that links to the controller.
DLL_EXPORT int ahp_gt_connect(const char *port)
Connect to the GT controller.
DLL_EXPORT int ahp_gt_connect_udp(const char *address, int port)
Connect to the GT controller throught an UDP connection.
DLL_EXPORT int ahp_gt_get_mc_version(void)
Get the GT firmware version.
DLL_EXPORT unsigned int ahp_gt_get_version(void)
Obtain the current libahp-gt version.
Definition ahp_gt.h:389
DLL_EXPORT unsigned int ahp_gt_is_connected()
Report connection status.
DLL_EXPORT int ahp_gt_connect_fd(int fd)
Connect to the GT controller using an existing file descriptor.
DLL_EXPORT void ahp_set_app_name(char *name)
set the application name
DLL_EXPORT char * ahp_get_app_name()
get the application name
DLL_EXPORT int ahp_get_debug_level()
get the debug level
DLL_EXPORT void ahp_set_debug_level(int value)
set the debug level
DLL_EXPORT void ahp_set_stderr(FILE *f)
set the error log stream
DLL_EXPORT void ahp_set_stdout(FILE *f)
set the output log stream
#define AHP_GT_VERSION
AHP_GT_VERSION This library version.
Definition ahp_gt.h:379
DLL_EXPORT int ahp_gt_is_axis_moving(int axis)
Determine if an axis is moving.
DLL_EXPORT double ahp_gt_get_position(int axis, double *timestamp)
Get the axis position.
DLL_EXPORT void ahp_gt_goto_absolute(int axis, double target, double speed)
Move an axis to a position.
DLL_EXPORT void ahp_gt_goto_relative(int axis, double increment, double speed)
Move an axis by an offset.
DLL_EXPORT void ahp_gt_stop_motion(int axis, int wait)
Stop an axis motion.
DLL_EXPORT void ahp_gt_start_motion(int axis, double speed)
Move an axis.
DLL_EXPORT void ahp_gt_set_position(int axis, double value)
Set the axis position in radians.
DLL_EXPORT SkywatcherAxisStatus ahp_gt_get_status(int axis)
Get an axis status.
DLL_EXPORT void ahp_gt_set_motor_steps(int axis, double value)
Set the motor steps number.
DLL_EXPORT void ahp_gt_set_crown_teeth(int axis, double value)
Set the crown gear teeth number.
DLL_EXPORT double ahp_gt_get_worm_teeth(int axis)
Get the current worm gear teeth number.
DLL_EXPORT GT1SteppingConfiguration ahp_gt_get_stepping_conf(int axis)
Get the stepping configuration.
DLL_EXPORT double ahp_gt_get_speed_limit(int axis)
Get the speed limit.
DLL_EXPORT void ahp_gt_set_mount_flags(GT1Flags value)
Set the mount flags.
DLL_EXPORT int ahp_gt_get_rs232_polarity(void)
Get the rs232 port polarity.
DLL_EXPORT double ahp_gt_get_acceleration_angle(int axis)
Get the acceleration angle.
DLL_EXPORT void ahp_gt_set_feature(int axis, GT1Feature value)
Set the GT features.
DLL_EXPORT double ahp_gt_get_guide_steps(int axis)
Get the guiding rate.
DLL_EXPORT void ahp_gt_set_rs232_polarity(int value)
Set the rs232 port polarity.
DLL_EXPORT void ahp_gt_set_direction_invert(int axis, int value)
Set the forward direction.
DLL_EXPORT double ahp_gt_get_max_speed(int axis)
Get the maximum speed.
DLL_EXPORT void ahp_gt_set_motor_teeth(int axis, double value)
Set the motor gear teeth number.
DLL_EXPORT void ahp_gt_set_acceleration_angle(int axis, double value)
Set the acceleration in high speed mode.
DLL_EXPORT MountType ahp_gt_get_mount_type(void)
Get the current GT mount type.
DLL_EXPORT double ahp_gt_get_timing(int axis)
Get the timing value of the axis.
DLL_EXPORT void ahp_gt_set_totalsteps(int axis, int value)
Set the total number of steps.
DLL_EXPORT int ahp_gt_get_direction_invert(int axis)
Get the forward direction.
DLL_EXPORT double ahp_gt_get_motor_steps(int axis)
Get the current motor steps number.
DLL_EXPORT GT1SteppingMode ahp_gt_get_stepping_mode(int axis)
Get the stepping mode.
DLL_EXPORT GT1Flags ahp_gt_get_mount_flags()
Get the mount flags.
DLL_EXPORT double ahp_gt_get_crown_teeth(int axis)
Get the current crown gear teeth number.
DLL_EXPORT void ahp_gt_set_features(int axis, SkywatcherFeature value)
Set the Skywatcher features.
DLL_EXPORT void ahp_gt_set_guide_steps(int axis, double value)
Set the guiding speed.
DLL_EXPORT void ahp_gt_set_wormsteps(int axis, int value)
Set the worm number of steps.
DLL_EXPORT int ahp_gt_get_wormsteps(int axis)
Get the worm number of steps.
DLL_EXPORT double ahp_gt_get_acceleration_steps(int axis)
Get the acceleration increment steps number.
DLL_EXPORT void ahp_gt_set_timing(int axis, int value)
Set the timing value of the axis.
DLL_EXPORT GT1Feature ahp_gt_get_feature(int axis)
Get the current GT features.
DLL_EXPORT int ahp_gt_get_totalsteps(int axis)
Get the total number of steps.
DLL_EXPORT void ahp_gt_set_max_speed(int axis, double value)
Set the maximum goto speed.
DLL_EXPORT double ahp_gt_get_divider(int axis)
Get the divider in the current configuration.
DLL_EXPORT double ahp_gt_get_motor_teeth(int axis)
Get the current motor gear teeth number.
DLL_EXPORT void ahp_gt_set_stepping_mode(int axis, GT1SteppingMode value)
Set the stepping mode.
DLL_EXPORT void ahp_gt_set_divider(int axis, int value)
Set the divider in the current configuration.
DLL_EXPORT SkywatcherFeature ahp_gt_get_features(int axis)
Get the current SkyWatcher features.
DLL_EXPORT void ahp_gt_set_worm_teeth(int axis, double value)
Set the worm gear teeth number.
DLL_EXPORT void ahp_gt_set_multiplier(int axis, int value)
Set the multiplier in the current configuration.
DLL_EXPORT void ahp_gt_set_stepping_conf(int axis, GT1SteppingConfiguration value)
Set the stepping configuration.
DLL_EXPORT void ahp_gt_set_pwm_frequency(int value)
Set the microstepping pwm frequency.
DLL_EXPORT double ahp_gt_get_multiplier(int axis)
Get the multiplier in the current configuration.
DLL_EXPORT void ahp_gt_set_mount_type(MountType value)
Set the mount type.
DLL_EXPORT int ahp_gt_get_pwm_frequency(void)
Get the microstepping pwm frequency.
GT1SteppingConfiguration
Motor coils phase winding configuration.
Definition ahp_gt.h:122
SkywatcherDirection
Direction.
Definition ahp_gt.h:350
MountType
Default Mount types.
Definition ahp_gt.h:190
SkywatcherMotionMode
Motion Mode.
Definition ahp_gt.h:322
SkywatcherFeature
Skywatcher default features - EQ8/AZEQ6/AZEQ5 only.
Definition ahp_gt.h:166
GT1Feature
ST-4 port configuration.
Definition ahp_gt.h:142
SkywatcherSpeedMode
Speed Mode.
Definition ahp_gt.h:342
SkywatcherSlewMode
Slew Mode.
Definition ahp_gt.h:334
SynscanCommand
Commands for the SynScan protocol implementation.
Definition ahp_gt.h:253
GT1Flags
GT1 custom flags.
Definition ahp_gt.h:154
GT1SteppingMode
Stepping mode.
Definition ahp_gt.h:132
@ ABBA
ABBA Motor winding.
Definition ahp_gt.h:128
@ AABB
AABB Motor winding.
Definition ahp_gt.h:124
@ ABAB
ABAB Motor winding.
Definition ahp_gt.h:126
@ DIRECTION_BACKWARD
Move backward.
Definition ahp_gt.h:354
@ DIRECTION_FORWARD
Move forward.
Definition ahp_gt.h:352
@ isMF
Fork Mount.
Definition ahp_gt.h:208
@ isHEQ5
Sky-Watcher HEQ5.
Definition ahp_gt.h:194
@ isAZEQ5
Sky-Watcher AZEQ5.
Definition ahp_gt.h:204
@ isAZEQ6
Sky-Watcher AZEQ6.
Definition ahp_gt.h:202
@ isEQ5
Sky-Watcher EQ5.
Definition ahp_gt.h:196
@ isCustom
Custom mount.
Definition ahp_gt.h:214
@ isEQ8
Sky-Watcher EQ8.
Definition ahp_gt.h:200
@ is114GT
114GT
Definition ahp_gt.h:210
@ isDOB
Dobsonian mount.
Definition ahp_gt.h:212
@ isGT
Sky-Watcher GT.
Definition ahp_gt.h:206
@ isEQ3
Sky-Watcher EQ3.
Definition ahp_gt.h:198
@ isEQ6
Sky-Watcher EQ6.
Definition ahp_gt.h:192
@ MODE_GOTO_HISPEED
High-speed (half-stepping mostly) Goto.
Definition ahp_gt.h:324
@ MODE_SLEW_HISPEED
High-speed (half-stepping mostly) Slew.
Definition ahp_gt.h:330
@ MODE_SLEW_LOSPEED
Low-speed (microstepping possibly) Slew.
Definition ahp_gt.h:326
@ MODE_GOTO_LOSPEED
Low-speed (microstepping possibly) Goto.
Definition ahp_gt.h:328
@ hasHalfCurrentTracking
Mount allows half-current tracking.
Definition ahp_gt.h:184
@ hasCommonSlewStart
Mount has a common slew start.
Definition ahp_gt.h:182
@ hasEncoder
Mount has an encoder.
Definition ahp_gt.h:172
@ inPPEC
PPEC correction in progress.
Definition ahp_gt.h:170
@ hasWifi
Mount provides a WiFi communication.
Definition ahp_gt.h:186
@ hasPPEC
Mount has PPEC.
Definition ahp_gt.h:174
@ inPPECTraining
PPEC training in progress.
Definition ahp_gt.h:168
@ hasHomeIndexer
Mount has an home indexer.
Definition ahp_gt.h:176
@ isAZEQ
Mount is an AZEQ.
Definition ahp_gt.h:178
@ hasPolarLed
Mount has a polar scope led.
Definition ahp_gt.h:180
@ GpioUnused
The ST4 port will remain unused.
Definition ahp_gt.h:144
@ GpioAsPulseDrive
The ST4 port will drive an external Step/Dir power drive.
Definition ahp_gt.h:150
@ GpioAsST4
The ST4 port will work as autoguider.
Definition ahp_gt.h:146
@ GpioAsEncoder
The ST4 port will be connected to an encoder.
Definition ahp_gt.h:148
@ SPEED_LOW
Low-speed (microstepping possibly)
Definition ahp_gt.h:344
@ SPEED_HIGH
High-speed (half-stepping mostly)
Definition ahp_gt.h:346
@ MODE_SLEW
Slew, no target, will stop upon request only.
Definition ahp_gt.h:336
@ MODE_GOTO
Goto, targeted, will stop upon request or on target reached.
Definition ahp_gt.h:338
@ SetLocation
Set Location.
Definition ahp_gt.h:300
@ GetModel
Get Model 0 = EQ6 GOTO Series 1 = HEQ5 GOTO Series 2 = EQ5 GOTO Series 3 = EQ3 GOTO Series 4 = EQ8 GO...
Definition ahp_gt.h:308
@ SyncPreciseRaDec
Sync precise RA/DEC.
Definition ahp_gt.h:273
@ GotoPreciseAzAlt
GOTO precise AZM-ALT.
Definition ahp_gt.h:269
@ CancelGOTO
Cancel GOTO.
Definition ahp_gt.h:316
@ SetTrackingMode
Set Tracking Mode.
Definition ahp_gt.h:277
@ GetLocation
Get Location.
Definition ahp_gt.h:298
@ GetSynScanVersion
Get Version.
Definition ahp_gt.h:306
@ GetRaDec
Get RA/DEC.
Definition ahp_gt.h:255
@ SetTime
Set Time.
Definition ahp_gt.h:304
@ Slew
Definition ahp_gt.h:296
@ SyncRaDec
Sync RA/DEC.
Definition ahp_gt.h:271
@ GetMountPointingState
Get Mount Pointing State.
Definition ahp_gt.h:318
@ GotoPreciseRaDec
GOTO precise RA/DEC.
Definition ahp_gt.h:265
@ GetTime
Get Time.
Definition ahp_gt.h:302
@ GetPreciseRaDec
Get precise RA/DEC.
Definition ahp_gt.h:257
@ GetPreciseAzAlt
Get precise AZM-ALT.
Definition ahp_gt.h:261
@ Echo
Echo - useful to check communication.
Definition ahp_gt.h:310
@ GetAzAlt
Get AZM-ALT.
Definition ahp_gt.h:259
@ GetTrackingMode
Get Tracking Mode.
Definition ahp_gt.h:275
@ GotoAzAlt
GOTO AZM-ALT.
Definition ahp_gt.h:267
@ AlignmentComplete
Is Alignment Complete? - align=1 if aligned and 0 if not.
Definition ahp_gt.h:312
@ GOTOinProgress
Is GOTO in Progress? - Response is ASCII'0' or '1'& '#'.
Definition ahp_gt.h:314
@ GotoRaDec
GOTO RA/DEC.
Definition ahp_gt.h:263
@ halfCurrentRA
Half-current high-speed on RA.
Definition ahp_gt.h:158
@ halfCurrentDec
Half-current high-speed on Dec.
Definition ahp_gt.h:160
@ isForkMount
Fork mount, will avoid meridian flip.
Definition ahp_gt.h:156
@ bauds_115200
high Baud Rate 115200
Definition ahp_gt.h:162
@ HalfStep
Half-stepping in low speed, Half-stepping in high speed.
Definition ahp_gt.h:138
@ Microstep
Microstepping in low speed, Microstepping in high speed.
Definition ahp_gt.h:136
@ Mixed
Microstepping in low speed, Half-stepping in high speed.
Definition ahp_gt.h:134
Axis Status.
Definition ahp_gt.h:358
SkywatcherSlewMode Mode
Current slew mode.
Definition ahp_gt.h:364
SkywatcherSpeedMode Speed
Current speed mode.
Definition ahp_gt.h:366
SkywatcherDirection Direction
Current direction.
Definition ahp_gt.h:368
int Initialized
Motor was initialized.
Definition ahp_gt.h:360
int Running
Motor is running.
Definition ahp_gt.h:362