Wykres commitów

26 Commity (f4166f34a0035d3783a7a96c8b456f3f7767edc3)

Autor SHA1 Wiadomość Data
kai-morich f4166f34a0 read w/o timeout now throws exception on connection lost or buffer to small
SerialInputOutputManager already returned connection lost exception, as the next read failed
2021-03-26 18:11:23 +01:00
Daniel Hugenroth b8c3057967 Use monotonic clock for timeouts 2021-03-16 22:39:00 +00:00
kai-morich cbed086279 fix write timeout calculation 2021-02-14 14:16:25 +01:00
kai-morich 4ffcc8d0fb simplify write timeout handling 2021-02-13 21:07:21 +01:00
kai-morich f60414f8ec improve write timeout handling
Return type of write() method changed to void. The return value was redundant before, as it always was the request length or an exception was thrown.

If timeout is reached, write() now throws a SerialTimeoutException with ex.bytesTransferred filled with known transferred bytes.

Added CommonUsbSerialPort.getReadEndpoint() and .getWriteEndpoint() to assist in setting the optimal write buffer size with port.setWriteBufferSize(port.getWriteEndpoint().getMaxPacketSize()).

By default the write buffer size is > MaxPacketSize and the Linux kernel splits writes in chunks. When the timeout occurs, it's unknown how many chunks have already been transferred and the exception typically stores 0. With optimal write buffer size, this value is known and stored in SerialTimeoutException, but due to more kernel round trips write() might take slightly longer().
2021-02-07 16:37:01 +01:00
kai-morich 85d0348844 improve error quality + test for PR #339 2021-01-31 19:58:59 +01:00
kai-morich fc610a9764 IntDef Parity for better warnings
but no @Intdef for databits, stopbits as these are frequently used with numbers instead of constants
remove redundant modifiers
2021-01-16 23:21:10 +01:00
Yehezkiel Syamsuhadi ebc8d791fc catch exception thrown by `close()` 2020-12-14 10:23:29 +11:00
kai-morich 768f716600 new setBreak() method 2020-10-14 20:36:49 +02:00
kai-morich 26999e3626 read with timeout now throws error on connection lost, e.g. device disconnected
and similar connection lost detection for prolific input control lines
2020-09-12 21:17:52 +02:00
kai-morich c53c3ed0ae check read buffer size 2020-09-06 09:48:10 +02:00
kai-morich 6f4cd0313c FTDI read() now waits until timeout
previously returned after periodic FTDI status response (default 16 msec)
2020-09-05 12:00:37 +02:00
kai-morich a664082f23 throw UnsupportedOperationException instead of returning false 2020-08-01 10:06:51 +02:00
kai-morich 2d13b90f59 move from LGPL to MIT license (#244)
moving away from LGPL possible, as the FTDI driver is rewritten and not based any more on LGPL code from libftdi.
2020-07-29 11:03:26 +02:00
kai-morich 7423fd9d79 new getControlLines() and getSupportedControLines() methods
getControlLines() requires less USB calls than calling getRTS() + ... + getRI() individually.
getSupportedControlLines() tells you, which control lines are supported by a driver. Previously you had to check the driver implementation.
2020-06-30 18:10:02 +02:00
kai-morich 735fa3d70f make all SerialPort classes public
and test FtdiSerialPort methods
2020-06-10 19:09:34 +02:00
Behxhet Sadiku 37324c6b0f Expose isOpen on CommonUsbSerialPort 2020-05-19 20:50:42 +02:00
kai-morich ce97a3408b reuse UsbRequest
less LogCat output
2019-12-13 21:13:48 +01:00
kai-morich e2e9df8463 reimplement read timeout 2019-11-15 21:45:22 +01:00
kai-morich 24187b3af6 refactor duplicated code in close method 2019-11-09 22:48:00 +01:00
kai-morich 5767298636 refactor duplicated read/write methods 2019-11-09 20:26:50 +01:00
kai-morich e1b62cf675 write + purge tests, remove unused read buffer code 2019-11-03 19:34:14 +01:00
kai-morich 5c6748e1b8 improve setParameter() error handling
harmonize exception messages, more UI friendly messages
distinguish IllegalArgumentException and UnsupportedOperationException
2019-11-02 13:49:08 +01:00
Kai Morich f7399c2aad more coverage tests
purgeHwBuffers: adjust parameter names to match read/write methods and actual behavior
2019-10-25 22:23:00 +02:00
bens-unit01 09c84a4a3c added support to retrieve the device serial number 2014-09-16 11:50:50 -07:00
mike wakerly 95592f984a Convert to gradle. 2014-06-14 12:55:24 -07:00