Project

General

Profile

Actions

Bug #4687

closed

icf.py: echoback causes overflow of OS's serial Rx buffer

Added by Takayoshi SASANO about 7 years ago. Updated about 4 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
03/28/2017
Due date:
% Done:

0%

Estimated time:
Chirp Version:
daily
Model affected:
(all models)
Platform:
All
Debug Log:
I read the instructions above:

Description

ICOM's cloning cable connects PC's TXD and RXD of UART. So PC always
receives echoback when sending any data to rig.

In icf.py code, data is sent by pipe.write() but its echo back
is not received immediately. Received all echobacks and response from
rig are processed after all clone data has sent.

This means OS (or its device driver) needs enough receive buffer to store
all echobacks and response. The size of the buffer is OS dependent,
we should not expect it is always enough.

So we have to call pipe.read() after pipe.write() to discard echoback
immediately. I am testing CHIRP on OpenBSD-6.0/amd64 and ICOM's IC-P7,
this fix is required to send clone data from PC to rig.


Files

icf.py.diff (1.37 KB) icf.py.diff Takayoshi SASANO, 09/05/2017 08:53 AM
Actions

Also available in: Atom PDF