- /* Let's see if we have anything good. */
- if (good_packets == 0)
- continue;
-
- sr_info("Found device on port %s.", conn);
+ /*
+ * If we dropped more than two packets worth of data, something is
+ * wrong. We shouldn't quit however, since the dropped bytes might be
+ * just zeroes at the beginning of the stream. Those can occur as a
+ * combination of the nonstandard cable that ships with this device and
+ * the serial port or USB to serial adapter.
+ */
+ dropped = len - FS9721_PACKET_SIZE;
+ if (dropped > 2 * FS9721_PACKET_SIZE)
+ sr_warn("Had to drop too much data.");