diff --git a/include/hamlib/rotlist.h b/include/hamlib/rotlist.h index 2bca46078..f3f3ce922 100644 --- a/include/hamlib/rotlist.h +++ b/include/hamlib/rotlist.h @@ -314,6 +314,7 @@ #define ROT_MODEL_GS232A_EL ROT_MAKE_MODEL(ROT_GS232A, 10) #define ROT_MODEL_GS232B_AZ ROT_MAKE_MODEL(ROT_GS232A, 11) #define ROT_MODEL_GS232B_EL ROT_MAKE_MODEL(ROT_GS232A, 12) +#define ROT_MODEL_GS23_AZ ROT_MAKE_MODEL(ROT_GS232A, 13) /** diff --git a/rotators/gs232a/gs232a.c b/rotators/gs232a/gs232a.c index 4aa2c7fdf..6bdaf008b 100644 --- a/rotators/gs232a/gs232a.c +++ b/rotators/gs232a/gs232a.c @@ -422,6 +422,51 @@ const struct rot_caps gs23_rot_caps = .set_level = gs232a_rot_set_level, }; + +/* ************************************************************************* */ +/* + * Generic GS23 azimuth rotator capabilities. + */ + +const struct rot_caps gs23_az_rot_caps = +{ + ROT_MODEL(ROT_MODEL_GS23_AZ), + .model_name = "GS-23 azimuth", + .mfg_name = "Yaesu/Kenpro", + .version = "20220527.0", + .copyright = "LGPL", + .status = RIG_STATUS_STABLE, + .rot_type = ROT_TYPE_AZIMUTH, + .port_type = RIG_PORT_SERIAL, + .serial_rate_min = 150, + .serial_rate_max = 9600, + .serial_data_bits = 8, + .serial_stop_bits = 1, + .serial_parity = RIG_PARITY_NONE, + .serial_handshake = RIG_HANDSHAKE_NONE, + .write_delay = 0, + .post_write_delay = 50, + .timeout = 400, + .retry = 3, + + .min_az = -180.0, + .max_az = 450.0, /* vary according to rotator type */ + .min_el = 0.0, + .max_el = 0.0, + + .has_get_level = GS232A_LEVELS, + .has_set_level = ROT_LEVEL_SET(GS232A_LEVELS), + + .level_gran = { [ROT_LVL_SPEED] = { .min = { .i = 1 }, .max = { .i = 4 }, .step = { .i = 1 } } }, + + .rot_init = gs232a_rot_init, + .get_position = gs232a_rot_get_position, + .set_position = gs232a_rot_set_position, + .stop = gs232a_rot_stop, + .get_level = gs232a_rot_get_level, + .set_level = gs232a_rot_set_level, +}; + /* ************************************************************************* */ /* * Generic GS232 rotator capabilities. diff --git a/rotators/gs232a/gs232a.h b/rotators/gs232a/gs232a.h index 681fbc850..47f1d2d9f 100644 --- a/rotators/gs232a/gs232a.h +++ b/rotators/gs232a/gs232a.h @@ -31,6 +31,7 @@ extern const struct rot_caps gs232b_az_rot_caps; extern const struct rot_caps gs232b_el_rot_caps; extern const struct rot_caps f1tetracker_rot_caps; extern const struct rot_caps gs23_rot_caps; +extern const struct rot_caps gs23_az_rot_caps; extern const struct rot_caps gs232_rot_caps; extern const struct rot_caps amsat_lvb_rot_caps; extern const struct rot_caps st2_rot_caps;