Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
[fw/altos] / altosui / AltosUSBDevice.java
index dc746a64fb4aa7de038872bbf18f5fde13d7d523..0c953cbf377629a3ab4e18d568e261358d7a8b4a 100644 (file)
@@ -15,7 +15,7 @@
  * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
  */
 
-package altosui;
+package AltosUI;
 import java.lang.*;
 import java.util.*;
 import libaltosJNI.*;
@@ -39,6 +39,13 @@ public class AltosUSBDevice  extends altos_device implements AltosDevice {
 
        }
 
+       public String getErrorString() {
+               altos_error     error = new altos_error();
+
+               libaltos.altos_get_last_error(error);
+               return String.format("%s (%d)", error.getString(), error.getCode());
+       }
+
        public SWIGTYPE_p_altos_file open() {
                return libaltos.altos_open(this);
        }
@@ -64,7 +71,12 @@ public class AltosUSBDevice  extends altos_device implements AltosDevice {
                if (want_product == Altos.product_basestation)
                        return matchProduct(Altos.product_teledongle) ||
                                matchProduct(Altos.product_teleterra) ||
-                               matchProduct(Altos.product_telebt);
+                               matchProduct(Altos.product_telebt) ||
+                               matchProduct(Altos.product_megadongle);
+
+               if (want_product == Altos.product_altimeter)
+                       return matchProduct(Altos.product_telemetrum) ||
+                               matchProduct(Altos.product_megametrum);
 
                int have_product = getProduct();