minor fix in ftdi data stream

pull/4/head
Felipe Herranz 2014-05-29 13:03:42 +02:00
rodzic 5bf592bd82
commit 1dbe983cc7
5 zmienionych plików z 12 dodań i 5 usunięć

Plik binarny nie jest wyświetlany.

Wyświetl plik

@ -120,12 +120,19 @@ public abstract class UsbSerialDevice implements UsbSerialInterface
byte[] data = serialBuffer.getDataReceived(); byte[] data = serialBuffer.getDataReceived();
// FTDI devices reserves two first bytes of an IN endpoint with info about // FTDI devices reserves two first bytes of an IN endpoint with info about
// modem and Line. // modem and Line.
if(isFTDIDevice()) if(isFTDIDevice() && data.length > 2)
{
data = FTDISerialDevice.FTDIUtilities.adaptArray(data); data = FTDISerialDevice.FTDIUtilities.adaptArray(data);
// Clear buffer, execute the callback
// Clear buffer, execute the callback and queue another request serialBuffer.clearReadBuffer();
serialBuffer.clearReadBuffer(); onReceivedData(data);
onReceivedData(data); }else
{
// Clear buffer, execute the callback
serialBuffer.clearReadBuffer();
onReceivedData(data);
}
// Queue a new request
requestIN.queue(serialBuffer.getReadBuffer(), SerialBuffer.DEFAULT_READ_BUFFER_SIZE); requestIN.queue(serialBuffer.getReadBuffer(), SerialBuffer.DEFAULT_READ_BUFFER_SIZE);
} }
} }