X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Fhardware%2Fgwinstek-gpd%2Fprotocol.c;h=e69995902cfe82a4ee95c50800d456dfadf1f065;hb=b81cfbc349a12e28f8212110699652b7e2d7aec4;hp=6038c637ee9e751df3888723ae82d41111384478;hpb=3e33089b725f7fdaf1bf7dad0103825b316c1541;p=libsigrok.git diff --git a/src/hardware/gwinstek-gpd/protocol.c b/src/hardware/gwinstek-gpd/protocol.c index 6038c637..e6999590 100644 --- a/src/hardware/gwinstek-gpd/protocol.c +++ b/src/hardware/gwinstek-gpd/protocol.c @@ -51,7 +51,7 @@ SR_PRIV int gpd_receive_reply(struct sr_serial_dev_inst *serial, char *buf, { int l_recv = 0, bufpos = 0, retc, l_startpos = 0, lines = 1; gint64 start, remaining; - const int timeout_ms = 100; + const int timeout_ms = 250; if (!serial || !buf || (buflen <= 0)) return SR_ERR_ARG; @@ -69,7 +69,7 @@ SR_PRIV int gpd_receive_reply(struct sr_serial_dev_inst *serial, char *buf, if (bufpos == 0 && buf[bufpos] == '\n') continue; - if (buf[bufpos] == '\n') { + if (buf[bufpos] == '\n' || buf[bufpos] == '\r') { buf[bufpos] = '\0'; sr_dbg("Received line '%s'.", &buf[l_startpos]); buf[bufpos] = '\n'; @@ -175,6 +175,7 @@ SR_PRIV int gpd_receive_data(int fd, int revents, void *cb_data) } devc->reply_pending = FALSE; + sr_sw_limits_update_samples_read(&devc->limits, 1); } } else { if (!devc->reply_pending) {