mirror of
				https://github.com/mik3y/usb-serial-for-android
				synced 2025-10-31 02:17:23 +00:00 
			
		
		
		
	Driver interface: add methods for CD, CTS, DSR, DTR, RI, and RTS.
This commit is contained in:
		
							parent
							
								
									a3b9c27f84
								
							
						
					
					
						commit
						111707c92f
					
				| @ -1,9 +1,5 @@ | |||||||
| package com.hoho.android.usbserial.driver; | package com.hoho.android.usbserial.driver; | ||||||
| 
 | 
 | ||||||
| import java.io.IOException; |  | ||||||
| import java.util.LinkedHashMap; |  | ||||||
| import java.util.Map; |  | ||||||
| 
 |  | ||||||
| import android.hardware.usb.UsbConstants; | import android.hardware.usb.UsbConstants; | ||||||
| import android.hardware.usb.UsbDevice; | import android.hardware.usb.UsbDevice; | ||||||
| import android.hardware.usb.UsbDeviceConnection; | import android.hardware.usb.UsbDeviceConnection; | ||||||
| @ -11,6 +7,10 @@ import android.hardware.usb.UsbEndpoint; | |||||||
| import android.hardware.usb.UsbInterface; | import android.hardware.usb.UsbInterface; | ||||||
| import android.util.Log; | import android.util.Log; | ||||||
| 
 | 
 | ||||||
|  | import java.io.IOException; | ||||||
|  | import java.util.LinkedHashMap; | ||||||
|  | import java.util.Map; | ||||||
|  | 
 | ||||||
| /** | /** | ||||||
|  * USB CDC/ACM serial driver implementation. |  * USB CDC/ACM serial driver implementation. | ||||||
|  * |  * | ||||||
| @ -151,6 +151,46 @@ public class CdcAcmSerialDriver extends UsbSerialDriver { | |||||||
|         return baudRate; |         return baudRate; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     @Override | ||||||
|  |     public boolean getCD() throws IOException { | ||||||
|  |         return false; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public boolean getCTS() throws IOException { | ||||||
|  |         return false; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public boolean getDSR() throws IOException { | ||||||
|  |         return false; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public boolean getDTR() throws IOException { | ||||||
|  |         return false; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public boolean setDTR(boolean value) throws IOException { | ||||||
|  |         return false; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public boolean getRI() throws IOException { | ||||||
|  |         return false; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public boolean getRTS() throws IOException { | ||||||
|  |         return false; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public boolean setRTS(boolean value) throws IOException { | ||||||
|  |         return false; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     public static Map<Integer, int[]> getSupportedDevices() { |     public static Map<Integer, int[]> getSupportedDevices() { | ||||||
|         final Map<Integer, int[]> supportedDevices = new LinkedHashMap<Integer, int[]>(); |         final Map<Integer, int[]> supportedDevices = new LinkedHashMap<Integer, int[]>(); | ||||||
|         supportedDevices.put(Integer.valueOf(UsbId.VENDOR_ARDUINO), |         supportedDevices.put(Integer.valueOf(UsbId.VENDOR_ARDUINO), | ||||||
|  | |||||||
| @ -20,11 +20,6 @@ | |||||||
| 
 | 
 | ||||||
| package com.hoho.android.usbserial.driver; | package com.hoho.android.usbserial.driver; | ||||||
| 
 | 
 | ||||||
| import java.io.IOException; |  | ||||||
| import java.nio.ByteBuffer; |  | ||||||
| import java.util.LinkedHashMap; |  | ||||||
| import java.util.Map; |  | ||||||
| 
 |  | ||||||
| import android.hardware.usb.UsbConstants; | import android.hardware.usb.UsbConstants; | ||||||
| import android.hardware.usb.UsbDevice; | import android.hardware.usb.UsbDevice; | ||||||
| import android.hardware.usb.UsbDeviceConnection; | import android.hardware.usb.UsbDeviceConnection; | ||||||
| @ -34,6 +29,11 @@ import android.util.Log; | |||||||
| 
 | 
 | ||||||
| import com.hoho.android.usbserial.util.HexDump; | import com.hoho.android.usbserial.util.HexDump; | ||||||
| 
 | 
 | ||||||
|  | import java.io.IOException; | ||||||
|  | import java.nio.ByteBuffer; | ||||||
|  | import java.util.LinkedHashMap; | ||||||
|  | import java.util.Map; | ||||||
|  | 
 | ||||||
| /** | /** | ||||||
|  * A {@link UsbSerialDriver} implementation for a variety of FTDI devices |  * A {@link UsbSerialDriver} implementation for a variety of FTDI devices | ||||||
|  * <p> |  * <p> | ||||||
| @ -409,6 +409,46 @@ public class FtdiSerialDriver extends UsbSerialDriver { | |||||||
|         }; |         }; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     @Override | ||||||
|  |     public boolean getCD() throws IOException { | ||||||
|  |         return false; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public boolean getCTS() throws IOException { | ||||||
|  |         return false; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public boolean getDSR() throws IOException { | ||||||
|  |         return false; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public boolean getDTR() throws IOException { | ||||||
|  |         return false; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public boolean setDTR(boolean value) throws IOException { | ||||||
|  |         return false; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public boolean getRI() throws IOException { | ||||||
|  |         return false; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public boolean getRTS() throws IOException { | ||||||
|  |         return false; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     @Override | ||||||
|  |     public boolean setRTS(boolean value) throws IOException { | ||||||
|  |         return false; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     public static Map<Integer, int[]> getSupportedDevices() { |     public static Map<Integer, int[]> getSupportedDevices() { | ||||||
|         final Map<Integer, int[]> supportedDevices = new LinkedHashMap<Integer, int[]>(); |         final Map<Integer, int[]> supportedDevices = new LinkedHashMap<Integer, int[]>(); | ||||||
|         supportedDevices.put(Integer.valueOf(UsbId.VENDOR_FTDI), |         supportedDevices.put(Integer.valueOf(UsbId.VENDOR_FTDI), | ||||||
|  | |||||||
| @ -20,11 +20,11 @@ | |||||||
| 
 | 
 | ||||||
| package com.hoho.android.usbserial.driver; | package com.hoho.android.usbserial.driver; | ||||||
| 
 | 
 | ||||||
| import java.io.IOException; |  | ||||||
| 
 |  | ||||||
| import android.hardware.usb.UsbDevice; | import android.hardware.usb.UsbDevice; | ||||||
| import android.hardware.usb.UsbDeviceConnection; | import android.hardware.usb.UsbDeviceConnection; | ||||||
| 
 | 
 | ||||||
|  | import java.io.IOException; | ||||||
|  | 
 | ||||||
| /** | /** | ||||||
|  * Driver interface for a supported USB serial device. |  * Driver interface for a supported USB serial device. | ||||||
|  * |  * | ||||||
| @ -99,6 +99,72 @@ public abstract class UsbSerialDriver { | |||||||
|      */ |      */ | ||||||
|     public abstract int setBaudRate(final int baudRate) throws IOException; |     public abstract int setBaudRate(final int baudRate) throws IOException; | ||||||
| 
 | 
 | ||||||
|  |     /** | ||||||
|  |      * Gets the CD (Carrier Detect) bit from the underlying UART. | ||||||
|  |      * | ||||||
|  |      * @return the current state, or {@code false} if not supported. | ||||||
|  |      * @throws IOException if an error occurred during reading | ||||||
|  |      */ | ||||||
|  |     public abstract boolean getCD() throws IOException; | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * Gets the CTS (Clear To Send) bit from the underlying UART. | ||||||
|  |      * | ||||||
|  |      * @return the current state, or {@code false} if not supported. | ||||||
|  |      * @throws IOException if an error occurred during reading | ||||||
|  |      */ | ||||||
|  |     public abstract boolean getCTS() throws IOException; | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * Gets the DSR (Data Set Ready) bit from the underlying UART. | ||||||
|  |      * | ||||||
|  |      * @return the current state, or {@code false} if not supported. | ||||||
|  |      * @throws IOException if an error occurred during reading | ||||||
|  |      */ | ||||||
|  |     public abstract boolean getDSR() throws IOException; | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * Gets the DTR (Data Terminal Ready) bit from the underlying UART. | ||||||
|  |      * | ||||||
|  |      * @return the current state, or {@code false} if not supported. | ||||||
|  |      * @throws IOException if an error occurred during reading | ||||||
|  |      */ | ||||||
|  |     public abstract boolean getDTR() throws IOException; | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * Sets the DTR (Data Terminal Ready) bit on the underlying UART, if | ||||||
|  |      * supported. | ||||||
|  |      * | ||||||
|  |      * @param value the value to set | ||||||
|  |      * @throws IOException if an error occurred during writing | ||||||
|  |      */ | ||||||
|  |     public abstract boolean setDTR(boolean value) throws IOException; | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * Gets the RI (Ring Indicator) bit from the underlying UART. | ||||||
|  |      * | ||||||
|  |      * @return the current state, or {@code false} if not supported. | ||||||
|  |      * @throws IOException if an error occurred during reading | ||||||
|  |      */ | ||||||
|  |     public abstract boolean getRI() throws IOException; | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * Gets the RTS (Request To Send) bit from the underlying UART. | ||||||
|  |      * | ||||||
|  |      * @return the current state, or {@code false} if not supported. | ||||||
|  |      * @throws IOException if an error occurred during reading | ||||||
|  |      */ | ||||||
|  |     public abstract boolean getRTS() throws IOException; | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * Sets the RTS (Request To Send) bit on the underlying UART, if | ||||||
|  |      * supported. | ||||||
|  |      * | ||||||
|  |      * @param value thje value to set | ||||||
|  |      * @throws IOException if an error occurred during writing | ||||||
|  |      */ | ||||||
|  |     public abstract boolean setRTS(boolean value) throws IOException; | ||||||
|  | 
 | ||||||
|     /** |     /** | ||||||
|      * Returns the currently-bound USB device. |      * Returns the currently-bound USB device. | ||||||
|      * |      * | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user