Skip to content

Releases: mik3y/usb-serial-for-android

v3.9.0

10 Mar 17:11
Compare
Choose a tag to compare

features:

  • read() with timeout now allows unlimited read size for Android 9+
  • SerialInputOutputManager now executes read and write in separate threads, so writeAsync is executed now immediately and not delayed any more until a read succeeded or timed out.

changes:

  • before was possible to start SerialInputOutputManager with Executors.newSingleThreadExecutor().submit(ioManager). Now you have to use ioManager.start() as already used in the example.

v3.8.1

28 Oct 20:17
0b5950c
Compare
Choose a tag to compare

fixes:

  • values supported by default setFlowControl() consistent with getSupportedFlowControl()
  • catch all Throwables from SerialInputOutputManager.Listener methods (#601)
    to avoid breaking Interface changes, Error from onNewData() is wrapped into Exception when calling onRunError()

v3.8.0

05 Jul 20:08
0a32c3f
Compare
Choose a tag to compare

features:

  • flowcontrol for ftdi, pl2303, cp210x

v3.7.3

02 Jun 13:11
2755900
Compare
Choose a tag to compare

fixes:

  • improved error handling for read() with concurrent close() (#569).
    (reworked previous solution from change 8b9ad7e / v3.7.1 because closeInt() was not working any more)
  • write() throws SerialTimeoutException if connection still valid, instead of IOException which is typically handled as connection lost
  • SerialInputOutputManager.writeAsync() handles SerialTimeoutException internally

v3.7.2

13 May 20:21
a4ee5c2
Compare
Choose a tag to compare

fixes:

  • handle uncaught NPE causing App termination in prolific driver controlline background thread (issue was introduced in v3.7.1)

v3.7.1

25 Apr 16:45
Compare
Choose a tag to compare

changes:

  • Add read() and write() with length argument (#544)
  • improved error handling for read() with concurrent close() (#569)
    • isOpen() returns false during concurrent close()
    • less tracing in SerialInputOutputManager

v3.7.0

15 Oct 15:08
880c007
Compare
Choose a tag to compare

features:

  • new Chrome OS CCD (Closed Case Debugging) ChromeCcdSerialDriver (#540)

changes:

  • consolidate control line method results, if no control lines supported (GsmModemSerialDriver, ChromeCcdSerialDriver):
    • getSupportedControlLines returns EnumSet.noneOf(ControlLine.class)
    • getControlLines() throws UnsupportedOperationException, similar to get/set<SingleControlLine>()

v3.6.0

06 Sep 05:56
80a555a
Compare
Choose a tag to compare

fixes:

  • return Connection closed IOException from read on concurrent close instead of NPE

features:

  • improved composite CDC devices support:
    • skip non ACM control interfaces
    • get correct ACM data interface from IAD
  • new GsmModem device driver, e.g. for Unisoc based Fibocom GSM modems (#521)
  • moved util/HexDump.java from example to library

v3.5.1

15 Mar 06:50
Compare
Choose a tag to compare

fixes:

  • support composite CDC devices with non-consecutive interface IDs

v3.5.0

11 Mar 18:22
Compare
Choose a tag to compare

fixes:

  • skip RNDIS related data interfaces in composite CDC devices

features:

  • probe CDC devices by USB interface types instead of fixed VID+PID
    • no more custom prober required for standard CDC devices
    • legacy (singleInterface) CDC devices still have to be added by VID+PID
    • for autostart VID+PID still have to be added to device_filter.xml