diff --git a/android-mobile/res/xml/device_filter.xml b/android-mobile/res/xml/device_filter.xml index 59742610d..54445c997 100644 --- a/android-mobile/res/xml/device_filter.xml +++ b/android-mobile/res/xml/device_filter.xml @@ -1,11 +1,15 @@ - + + + - + + + @@ -13,6 +17,8 @@ + + @@ -27,4 +33,28 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file 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 availableDrivers = usbSerialProber.findAllDrivers(manager); if (availableDrivers.isEmpty()) {