From: Ramakrishnan Muthukrishnan Date: Wed, 12 Jan 2022 05:44:10 +0000 (+0530) Subject: rigctl: implement zzmg correctly X-Git-Url: https://git.rkrishnan.org/Site/Content/simplejson/status?a=commitdiff_plain;h=8f7da1e5997cf6a1b13adf8daa4091606acd0ad4;p=pihpsdr.git rigctl: implement zzmg correctly --- diff --git a/rigctl.c b/rigctl.c index 100c98f..fc5c66b 100644 --- a/rigctl.c +++ b/rigctl.c @@ -1817,14 +1817,17 @@ gboolean parse_extended_cmd(char *command, CLIENT *client) { } break; case 'G': // ZZMG - // set/read mic gain - if (command[4] == ';') { - sprintf(reply, "ZZMG%03d;", (int)mic_gain); - send_resp(client->fd, reply); - } else if (command[7] == ';') { - mic_gain = (double)atoi(&command[4]); - } - break; + // set/read mic gain + if (command[4] == ';') { + sprintf(reply, "ZZMG%03d;", (int)(((mic_gain + 12.0) / 72.0) * 100.0)); + send_resp(client->fd, reply); + } else if (command[7] == ';') { + command[7] = '\0'; + double gain = (double)atoi(&command[4]); + gain = ((gain / 100.0) * 72.0) - 12.0; + set_mic_gain(gain); + } + break; case 'L': // ZZML // read DSP modes and indexes if (command[4] == ';') {