public static final int ao_flight_landed = 8;
public static final int ao_flight_invalid = 9;
+ /* USB product IDs */
+ public final static int vendor_altusmetrum = 0xfffe;
+
+ public final static int product_altusmetrum = 0x000a;
+ public final static int product_telemetrum = 0x000b;
+ public final static int product_teledongle = 0x000c;
+ public final static int product_teleterra = 0x000d;
+ public final static int product_telebt = 0x000e;
+ public final static int product_telelaunch = 0x000f;
+ public final static int product_telelco = 0x0010;
+ public final static int product_telescience = 0x0011;
+ public final static int product_telepyro =0x0012;
+ public final static int product_megametrum = 0x0023;
+ public final static int product_megadongle = 0x0024;
+ public final static int product_altusmetrum_min = 0x000a;
+ public final static int product_altusmetrum_max = 0x0024;
+
+ public final static int product_any = 0x10000;
+ public final static int product_basestation = 0x10000 + 1;
+ public final static int product_altimeter = 0x10000 + 2;
+
+ /* Bluetooth "identifier" (bluetooth sucks) */
+ public final static String bt_product_telebt = "TeleBT";
+
/* Telemetry modes */
public static final int ao_telemetry_off = 0;
public static final int ao_telemetry_min = 1;
}
return loaded_library;
}
-
- static int usb_vendor_altusmetrum() {
- load_library();
- return 0xfffe;
- }
-
- static int usb_product_altusmetrum() {
- load_library();
- return 0x000a;
- }
-
- static int usb_product_altusmetrum_min() {
- load_library();
- return 0x000a;
- }
-
- static int usb_product_altusmetrum_max() {
- load_library();
- return 0x0013;
- }
-
- static int usb_product_telemetrum() {
- load_library();
- return 0x000b;
- }
-
- static int usb_product_teledongle() {
- load_library();
- return 0x000c;
- }
-
- static int usb_product_teleterra() {
- load_library();
- return 0x000d;
- }
-
- static int usb_product_telebt() {
- load_library();
- return 0x000e;
- }
-
- static int usb_product_telelaunch() {
- load_library();
- return 0x000f;
- }
-
- static int usb_product_telelco() {
- load_library();
- return 0x0010;
- }
-
- static int usb_product_telescience() {
- load_library();
- return 0x0011;
- }
-
- static int usb_product_telepyro() {
- load_library();
- return 0x0012;
- }
-
- public final static int vendor_altusmetrum = usb_vendor_altusmetrum();
- public final static int product_altusmetrum = usb_product_altusmetrum();
- public final static int product_telemetrum = usb_product_telemetrum();
- public final static int product_teledongle = usb_product_teledongle();
- public final static int product_teleterra = usb_product_teleterra();
- public final static int product_telebt = usb_product_telebt();
- public final static int product_telelaunch = usb_product_telelaunch();
- public final static int product_tele10 = usb_product_telelco();
- public final static int product_telescience = usb_product_telescience();
- public final static int product_telepyro = usb_product_telepyro();
- public final static int product_altusmetrum_min = usb_product_altusmetrum_min();
- public final static int product_altusmetrum_max = usb_product_altusmetrum_max();
-
- public final static int product_any = 0x10000;
- public final static int product_basestation = 0x10000 + 1;
-
- static String bt_product_telebt() {
- load_library();
- return "TeleBT";
- }
-
- public final static String bt_product_telebt = bt_product_telebt();
-
- public static AltosBTKnown bt_known = new AltosBTKnown();
}
}
public AltosBTDevice(String name, String addr) {
+ Altos.load_library();
libaltos.altos_bt_fill_in(name, addr,this);
}
bt_pref = AltosUIPreferences.bt_devices();
load();
}
-}
\ No newline at end of file
+
+ static AltosBTKnown known;
+
+ static public AltosBTKnown bt_known() {
+ if (known == null)
+ known = new AltosBTKnown();
+ return known;
+ }
+}
try {
serial_line = new AltosSerial(device);
try {
- if (!device.matchProduct(Altos.product_telemetrum))
+ if (!device.matchProduct(Altos.product_altimeter))
remote = true;
init_ui();
} catch (InterruptedException ie) {
manage_bluetooth = new JButton("Manage Bluetooth");
manage_bluetooth.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
- AltosBTManage.show(owner, Altos.bt_known);
+ AltosBTManage.show(owner, AltosBTKnown.bt_known());
}
});
c.gridx = 0;
private AltosDevice[] devices() {
java.util.List<AltosDevice> usb_devices = AltosUSBDevice.list(product);
int num_devices = usb_devices.size();
- java.util.List<AltosDevice> bt_devices = Altos.bt_known.list(product);
+ java.util.List<AltosDevice> bt_devices = AltosBTKnown.bt_known().list(product);
num_devices += bt_devices.size();
AltosDevice[] devices = new AltosDevice[num_devices];
if ("select".equals(e.getActionCommand()))
value = (AltosDevice)(list.getSelectedValue());
if ("manage".equals(e.getActionCommand())) {
- AltosBTManage.show(frame, Altos.bt_known);
+ AltosBTManage.show(frame, AltosBTKnown.bt_known());
update_devices();
return;
}
}
public static void main(final String[] args) {
+ load_library(null);
try {
UIManager.setLookAndFeel(AltosUIPreferences.look_and_feel());
} catch (Exception e) {