From 1beecdd68573ce73eb4981067b22fd03434eacbb Mon Sep 17 00:00:00 2001 From: Michael Black W9MDB Date: Tue, 1 Dec 2020 16:57:10 -0600 Subject: [PATCH] Add 25ms post_write_delay for gs232a/b and a retry when \r\n is received https://github.com/Hamlib/Hamlib/issues/371 --- rotators/gs232a/gs232a.c | 8 +++++--- rotators/gs232a/gs232b.c | 4 +++- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/rotators/gs232a/gs232a.c b/rotators/gs232a/gs232a.c index 5f2067292..a2ccd3f6b 100644 --- a/rotators/gs232a/gs232a.c +++ b/rotators/gs232a/gs232a.c @@ -103,6 +103,8 @@ transaction_write: retval = read_string(&rs->rotport, data, data_len, REPLY_EOM, strlen(REPLY_EOM)); + if (strncmp(data,"\r\n",2)==0) retval = -1; + if (retval < 0) { if (retry_read++ < rot->state.rotport.retry) @@ -304,7 +306,7 @@ const struct rot_caps gs23_rot_caps = .serial_parity = RIG_PARITY_NONE, .serial_handshake = RIG_HANDSHAKE_NONE, .write_delay = 0, - .post_write_delay = 0, + .post_write_delay = 25, .timeout = 400, .retry = 3, @@ -340,7 +342,7 @@ const struct rot_caps gs232_rot_caps = .serial_parity = RIG_PARITY_NONE, .serial_handshake = RIG_HANDSHAKE_NONE, .write_delay = 0, - .post_write_delay = 0, + .post_write_delay = 25, .timeout = 400, .retry = 3, @@ -376,7 +378,7 @@ const struct rot_caps gs232a_rot_caps = .serial_parity = RIG_PARITY_NONE, .serial_handshake = RIG_HANDSHAKE_NONE, .write_delay = 0, - .post_write_delay = 0, + .post_write_delay = 25, .timeout = 400, .retry = 3, diff --git a/rotators/gs232a/gs232b.c b/rotators/gs232a/gs232b.c index 9c032004f..143f3f029 100644 --- a/rotators/gs232a/gs232b.c +++ b/rotators/gs232a/gs232b.c @@ -110,6 +110,8 @@ transaction_write: retval = read_string(&rs->rotport, data, data_len, REPLY_EOM, strlen(REPLY_EOM)); + if (strncmp(data,"\r\n",2)==0) retval = -1; + if (retval < 0) { if (retry_read++ < rot->state.rotport.retry) @@ -341,7 +343,7 @@ const struct rot_caps gs232b_rot_caps = .serial_parity = RIG_PARITY_NONE, .serial_handshake = RIG_HANDSHAKE_NONE, .write_delay = 0, - .post_write_delay = 0, + .post_write_delay = 25, .timeout = 400, .retry = 3,