aboutsummaryrefslogtreecommitdiffstats
path: root/android-mobile/src/org/subsurfacedivelog/mobile/AndroidSerial.java
diff options
context:
space:
mode:
authorGravatar Christof Arnosti <charno@charno.ch>2020-03-06 15:03:13 +0100
committerGravatar Dirk Hohndel <dirk@hohndel.org>2020-03-07 12:34:43 -0800
commitdebc7ae1f28c52d7234a96a0fef2c60e3b93b4ef (patch)
tree9b2b5ec2788bdb2f0ba1a53ce1ab98ee5115256d /android-mobile/src/org/subsurfacedivelog/mobile/AndroidSerial.java
parent6e38f85ba7365efd2f27b407cf001b1e10dff1c8 (diff)
downloadsubsurface-debc7ae1f28c52d7234a96a0fef2c60e3b93b4ef.tar.gz
usb-serial-for-android: add PID/VIDs
Signed-off-by: Christof Arnosti <charno@charno.ch> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'android-mobile/src/org/subsurfacedivelog/mobile/AndroidSerial.java')
-rw-r--r--android-mobile/src/org/subsurfacedivelog/mobile/AndroidSerial.java16
1 files changed, 11 insertions, 5 deletions
diff --git a/android-mobile/src/org/subsurfacedivelog/mobile/AndroidSerial.java b/android-mobile/src/org/subsurfacedivelog/mobile/AndroidSerial.java
index 88b167fda..59b8dc9e9 100644
--- a/android-mobile/src/org/subsurfacedivelog/mobile/AndroidSerial.java
+++ b/android-mobile/src/org/subsurfacedivelog/mobile/AndroidSerial.java
@@ -1,8 +1,6 @@
package org.subsurfacedivelog.mobile;
-import com.hoho.android.usbserial.driver.UsbSerialDriver;
-import com.hoho.android.usbserial.driver.UsbSerialPort;
-import com.hoho.android.usbserial.driver.UsbSerialProber;
+import com.hoho.android.usbserial.driver.*;
import android.hardware.usb.UsbDeviceConnection;
import android.hardware.usb.UsbManager;
@@ -91,9 +89,17 @@ public class AndroidSerial {
// Find all available drivers from attached devices.
Context context = SubsurfaceMobileActivity.getAppContext();
UsbManager manager = (UsbManager) context.getSystemService(Context.USB_SERVICE);
- UsbSerialProber usbSerialProber = UsbSerialProber.getDefaultProber();
+ ProbeTable usbSerialProbetable = UsbSerialProber.getDefaultProbeTable();
- // TODO attach custom VID / PID / Drivers
+ usbSerialProbetable.addProduct(0x0403, 0xf460, FtdiSerialDriver.class); // Oceanic Custom PID
+ usbSerialProbetable.addProduct(0x0403, 0xf680, FtdiSerialDriver.class); // Suunto Custom PID
+ usbSerialProbetable.addProduct(0x0403, 0x87d0, FtdiSerialDriver.class); // Cressi (Leonardo) Custom PID
+
+ usbSerialProbetable.addProduct(0x04B8, 0x0521, ProlificSerialDriver.class); // Mares (Nemo Sport) / Cressi Custom PID
+ usbSerialProbetable.addProduct(0x04B8, 0x0521, ProlificSerialDriver.class); // Zeagle Custom PID
+ usbSerialProbetable.addProduct(0xFFFF, 0x0005, CdcAcmSerialDriver.class); // Mares Icon HD Custom PID
+
+ UsbSerialProber usbSerialProber = new UsbSerialProber(usbSerialProbetable);
List<UsbSerialDriver> availableDrivers = usbSerialProber.findAllDrivers(manager);
if (availableDrivers.isEmpty()) {