kopia lustrzana https://github.com/Hamlib/Hamlib
Ignore ICOM transceive frames
rodzic
cef2525d0f
commit
12404aa8a6
|
@ -183,6 +183,7 @@ collision_retry:
|
|||
* up to rs->retry times.
|
||||
*/
|
||||
|
||||
again1:
|
||||
retval = read_icom_frame(rp, buf, sizeof(buf));
|
||||
|
||||
if (retval == -RIG_ETIMEOUT || retval == 0)
|
||||
|
@ -209,6 +210,11 @@ collision_retry:
|
|||
rig_debug(RIG_DEBUG_TRACE, "%s: DEBUG retval=%d, frm_len=%d, cmd=0x%02x\n",
|
||||
__func__, retval, frm_len, cmd);
|
||||
|
||||
if (buf[1] == 0x00) // then this is a transceive frame so ignore it
|
||||
{
|
||||
goto again1;
|
||||
}
|
||||
|
||||
if (retval != frm_len && cmd == C_SET_PWR)
|
||||
{
|
||||
rig_debug(RIG_DEBUG_TRACE, "%s: removing 0xfe power up echo, len=%d", __func__,
|
||||
|
@ -289,6 +295,7 @@ read_another_frame:
|
|||
* FIXME: handle padding/collisions
|
||||
* ACKFRMLEN is the smallest frame we can expect from the rig
|
||||
*/
|
||||
again2:
|
||||
buf[0] = 0;
|
||||
frm_len = read_icom_frame(rp, buf, sizeof(buf));
|
||||
|
||||
|
@ -297,6 +304,11 @@ read_another_frame:
|
|||
priv->serial_USB_echo_off = 0;
|
||||
}
|
||||
|
||||
if (buf[1] == 0x00) // then it's a transceive frame so ignore it
|
||||
{
|
||||
goto again2;
|
||||
}
|
||||
|
||||
#if 0
|
||||
|
||||
// this was causing rigctld to fail on IC706 and WSJT-X
|
||||
|
|
Ładowanie…
Reference in New Issue