1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2024-12-11 19:24:10 +01:00
Commit Graph

372 Commits

Author SHA1 Message Date
James Cotton
905a81844c AndroidGCS OSG: Now shows a cow. The model path is hardcoded. 2012-08-21 00:23:04 -05:00
James Cotton
129edf4398 AndroidGCS OSG: Get context showing 2012-08-21 00:04:26 -05:00
James Cotton
34b21bec3c AndroidGCS: OSG import basic OSG code 2012-08-20 22:56:21 -05:00
James Cotton
caff64ed7e AndroidGCS Telemetry: Fix the determination of whether a transaction is pending 2012-08-16 03:44:11 -05:00
James Cotton
b614368359 AndroidGCS Telemetry: Use a runnable for the transaction timeout. Now all of
telemetry is using handlers nicely, but we still can have multiple
transactions queued for the same object.
2012-08-16 03:44:11 -05:00
James Cotton
9f326f28d8 AndroidGCS: Handler based telemetry. Now reschedule transactions if one is
pending.
2012-08-16 03:44:11 -05:00
James Cotton
a78fd852b1 AndroidGCS Telemetry: Finish moving telemetry into a runnable. 2012-08-16 03:44:11 -05:00
James Cotton
319baa9e6f AndroidGCS: Start moving the telemetry object queue to a handler and a looper 2012-08-16 03:44:11 -05:00
James Cotton
d5c1e3578e AndroidGCS HID: Remove more locks to try and prevent HID deadlocking 2012-08-16 03:44:10 -05:00
James Cotton
f96b419a85 AndroidGCS: Add a toast message when connected (all objects downloaded) 2012-08-16 03:44:10 -05:00
James Cotton
53d4d8b507 AndroidGCS HID: Use the dettached message to shut down HID telemetry properly 2012-08-16 03:44:10 -05:00
James Cotton
5e163861a4 AndroidGCS HID: Go back to a read and write thread but now use synchronous
bultTransfer for write which gets rid of the segfaults with running two
asynchronous transfers.
2012-08-16 03:44:10 -05:00
James Cotton
785cda8052 AndroidGCS: Add back a few synchronize blocks in telemetry to avoid removing
elements twice.
2012-08-16 03:43:29 -05:00
James Cotton
335ccc54a3 AndroidGCS Controller: Make sure to remove the callback on manual control
settings before updating it.
2012-08-16 03:43:28 -05:00
James Cotton
75ce520503 Make sure the USB scheduling is thread safe. 2012-08-16 03:43:28 -05:00
James Cotton
69fbefee85 HID: Since there is only one usb device connection queue read and write events
onto that single connection and wait for either.
2012-08-16 03:43:28 -05:00
James Cotton
6b4a14fa87 Remove legacy code for supporting two USB interfaces 2012-08-16 03:43:28 -05:00
James Cotton
050ec8096b HID: move all the variables to the top 2012-08-16 03:43:28 -05:00
James Cotton
f8ba049d56 AndroidGCS: In the telemetry class use a thread safe queue for transations and
removed the synhronized blocks to prevent deadlocks.
2012-08-16 03:43:28 -05:00
James Cotton
405c5a60f0 AndroidGCS: Cleanup of the HID telemetry code 2012-08-16 03:43:27 -05:00
James Cotton
3d34a5d280 AndrodGCS: Correctly check HID packet format 2012-08-16 03:43:27 -05:00
James Cotton
5fa36ddd5c AndroidGCS: Make sure not to try and get interface to expired telemetry 2012-08-16 03:43:27 -05:00
James Cotton
90779506be AndroidGCS: Refactor TCP and HID onto a common TelemTask class which handles
most of the logic of setting up the UAVTalk, ObjectMangager, Telemetry and
TelemetryMonitor classes.  Provides a cleaner shutdown too.
2012-08-16 03:43:10 -05:00
James Cotton
4eb846ba93 AndroidGCS: Get HID working properly for PipX 2012-08-16 03:43:10 -05:00
James Cotton
dc90210cfa AndroidGCS: Add support for HID to AndroidGCS 2012-08-16 03:43:10 -05:00
James Cotton
8a5819379a AndroidGCS Telemetry: Fix the determination of whether a transaction is pending 2012-08-15 02:02:05 -05:00
James Cotton
7f028f6d42 AndroidGCS Telemetry: Use a runnable for the transaction timeout. Now all of
telemetry is using handlers nicely, but we still can have multiple
transactions queued for the same object.
2012-08-15 01:21:16 -05:00
James Cotton
1bbfb35446 AndroidGCS: Handler based telemetry. Now reschedule transactions if one is
pending.
2012-08-15 00:01:14 -05:00
James Cotton
653702ac23 AndroidGCS Telemetry: Finish moving telemetry into a runnable. 2012-08-13 23:47:37 -05:00
James Cotton
2d7bb4d3bb AndroidGCS: Start moving the telemetry object queue to a handler and a looper 2012-08-13 15:02:15 -05:00
James Cotton
2f65952952 AndroidGCS HID: Remove more locks to try and prevent HID deadlocking 2012-08-13 02:00:54 -05:00
James Cotton
aa9894c481 AndroidGCS: Add a toast message when connected (all objects downloaded) 2012-08-13 01:37:15 -05:00
James Cotton
3ea9ecd53b AndroidGCS HID: Use the dettached message to shut down HID telemetry properly 2012-08-13 01:25:08 -05:00
James Cotton
daab45d14d AndroidGCS HID: Go back to a read and write thread but now use synchronous
bultTransfer for write which gets rid of the segfaults with running two
asynchronous transfers.
2012-08-13 01:07:09 -05:00
James Cotton
f012248fd1 Updated android objects from merge 2012-08-13 00:09:10 -05:00
James Cotton
ef581342ac AndroidGCS: Add back a few synchronize blocks in telemetry to avoid removing
elements twice.
2012-08-13 00:08:14 -05:00
James Cotton
d77912e4b0 AndroidGCS Controller: Make sure to remove the callback on manual control
settings before updating it.
2012-08-13 00:08:08 -05:00
James Cotton
ae56dc74c2 Make sure the USB scheduling is thread safe. 2012-08-12 14:12:35 -05:00
James Cotton
02a1c94545 HID: Since there is only one usb device connection queue read and write events
onto that single connection and wait for either.
2012-08-12 14:00:50 -05:00
James Cotton
badbadef2f Remove legacy code for supporting two USB interfaces 2012-08-12 13:41:15 -05:00
James Cotton
a0ca56a071 HID: move all the variables to the top 2012-08-12 13:28:38 -05:00
James Cotton
b19a0947fb AndroidGCS: In the telemetry class use a thread safe queue for transations and
removed the synhronized blocks to prevent deadlocks.
2012-08-12 13:23:51 -05:00
James Cotton
e3ab372516 AndroidGCS: Cleanup of the HID telemetry code 2012-08-12 13:23:51 -05:00
James Cotton
75c7c167f0 AndrodGCS: Correctly check HID packet format 2012-08-12 00:32:09 -05:00
James Cotton
4199562534 AndroidGCS: Make sure not to try and get interface to expired telemetry 2012-08-12 00:32:09 -05:00
James Cotton
6fe2cb7738 Merge branch 'android_hid' into android_revo
Conflicts:
	androidgcs/src/org/openpilot/androidgcs/telemetry/OPTelemetryService.java
2012-08-11 14:53:04 -05:00
James Cotton
d0bb6c3813 AndroidGCS: Refactor TCP and HID onto a common TelemTask class which handles
most of the logic of setting up the UAVTalk, ObjectMangager, Telemetry and
TelemetryMonitor classes.  Provides a cleaner shutdown too.
2012-08-11 14:49:35 -05:00
James Cotton
5addc15f60 AndroidGCS: Get HID working properly for PipX 2012-08-11 02:29:26 -05:00
James Cotton
de2f6a64e2 AndroidGCS: Add support for HID to AndroidGCS 2012-08-10 23:19:47 -05:00
James Cotton
cab661e94b AndroidGCS: Update the controller gadget to the newer style updates 2012-08-10 16:16:39 -05:00
James Cotton
9985910969 AndroidGCS TelemetryMonitor: Now that transactions are working more reliably we
can emit the connected signal at the end of fetching all the objects.
2012-08-10 16:11:20 -05:00
James Cotton
38117f6e69 AndroidGCS Telemetry: Telemetry no longer enqueues identical object
transactions multiple times so only the most recent will occur.  Since it
doesn't enqueue the data the end behavior to the UAV should be identical.

Also renamed processObjectUpdates to enqueueObjectUpdates to make it more
intuitive.
2012-08-10 15:58:52 -05:00
James Cotton
1d361a53cd AndroidGCS Telemetry: Make sure when telemetry changes settings it removes it's
listeners before adding more
2012-08-10 15:27:43 -05:00
James Cotton
de26c3297e AndroidGCS Telemetry: Get rid of a tier of redirection through annoymous
classes that was legacy from the GCS port.
2012-08-10 15:22:56 -05:00
James Cotton
6ebf4fe87c AndroidGCS UAVTalk: Pretty thorough clean up focused on how transactions are
handled at the UAVTalk level where there can only be one pending transaction on
the wire.
2012-08-10 14:18:41 -05:00
James Cotton
6b9b49734e Check there is an active telemetry before trying to disconnect it 2012-08-10 10:21:28 -05:00
James Cotton
1bc8553658 Small typo in telemetry merge. 2012-08-10 10:20:45 -05:00
James Cotton
82637ff8ab Now the callbacks disconnect system alarms shouldn't need to check the fields
are not null
2012-08-10 10:20:21 -05:00
James Cotton
d14ad1c354 Check in some missing artwork 2012-08-10 10:15:32 -05:00
James Cotton
d429cc200c Merge branch 'sim_android_telemetry' into sim_android
Conflicts:
	androidgcs/src/org/openpilot/androidgcs/telemetry/OPTelemetryService.java
2012-08-10 10:12:48 -05:00
James Cotton
a8fa1c6b0d Merge branch 'android' into sim_android 2012-08-10 10:10:47 -05:00
James Cotton
29d5365f0a AndroidGCS: More refactoring of ObjectManagerActivity. Now the updates are
disconnected on pause and reestabilished on resume.  This only happens within
an onConnected/onDisconnected life cycle.
2012-08-10 10:04:22 -05:00
James Cotton
176922f41c AndroidGCS: Also make the map disconnect its listeners. 2012-08-10 10:04:17 -05:00
James Cotton
749d695f4d AndroidGCS: ObjectManagerActivity maintains a list of objects it is getting
updates from and disconnects them on onStop().  This should probably move to
onPause / onResume
2012-08-10 10:04:11 -05:00
James Cotton
4bcb5437cd AndroidGCS: More refactoring of ObjectManagerActivity. Now the updates are
disconnected on pause and reestabilished on resume.  This only happens within
an onConnected/onDisconnected life cycle.
2012-08-10 09:48:10 -05:00
James Cotton
4594a59155 AndroidGCS: Also make the map disconnect its listeners. 2012-08-10 08:53:29 -05:00
James Cotton
56dfa62682 AndroidGCS: ObjectManagerActivity maintains a list of objects it is getting
updates from and disconnects them on onStop().  This should probably move to
onPause / onResume
2012-08-10 08:49:40 -05:00
James Cotton
1b8db4eeec AndroidGCS: When priority transmit queue is full this is not a reason to crash. 2012-08-10 02:18:30 -05:00
James Cotton
4bcac07c8c AndroidGCS: Because right now the object updated callbacks are not diconnected
when an activity goes away we need to check the view is valid when processing
the object callbacks.
2012-08-10 02:17:13 -05:00
James Cotton
92209f8e42 AndroidGCS bugfix: Missed a break in a case statement. 2012-08-10 02:17:13 -05:00
James Cotton
5eabb1777d AndroidGCS: Whitespace fixing for TelemetryMonitor 2012-08-10 02:17:12 -05:00
James Cotton
78469aa6a4 AndroidGCS: Use a WeakReference to stop the OPTelemetryService handle leaking. 2012-08-10 02:17:12 -05:00
James Cotton
37c4880fba AndroidGCS: Unregister the activity broadcast receiver onStop(). Create it
onStart() instead.
2012-08-10 02:15:38 -05:00
James Cotton
57b91b7763 AndroidGCS: UAVTalk no longer extends Observable since there is only one
listener anyway we use a setListener pattern.
2012-08-10 02:15:37 -05:00
James Cotton
f13f977177 Fix: Revert change to ObjectBrowser 2012-08-10 02:15:37 -05:00
James Cotton
7a42c7b10e AndroidGCS: Start supporting NAK and having uavTalk emit a transaction failed
and succeeded call.  Had to change the mask on the AndroidGCS side to match the
FC side.
2012-08-10 02:15:37 -05:00
James Cotton
fcff84007e Remove old OPTelemetryService 2012-08-10 02:14:44 -05:00
James Cotton
1c60d4b856 AndroidGCS: When priority transmit queue is full this is not a reason to crash. 2012-08-10 02:09:58 -05:00
James Cotton
7c6b81517e AndroidGCS: Somehow multiple disconnects were triggered. 2012-08-10 02:09:32 -05:00
James Cotton
91a8186e54 AndroidGCS: Because right now the object updated callbacks are not diconnected
when an activity goes away we need to check the view is valid when processing
the object callbacks.
2012-08-10 02:01:27 -05:00
James Cotton
dec044d0fa AndroidGCS bugfix: Missed a break in a case statement. 2012-08-10 02:00:55 -05:00
James Cotton
4313f1a3cc AndroidGCS: Whitespace fixing for TelemetryMonitor 2012-08-10 01:12:20 -05:00
James Cotton
0100b2a085 AndroidGCS: Use a WeakReference to stop the OPTelemetryService handle leaking. 2012-08-10 01:12:20 -05:00
James Cotton
54e239d6cb AndroidGCS: Unregister the activity broadcast receiver onStop(). Create it
onStart() instead.
2012-08-10 01:12:20 -05:00
James Cotton
d46a865229 AndroidGCS: UAVTalk no longer extends Observable since there is only one
listener anyway we use a setListener pattern.
2012-08-09 23:26:36 -05:00
James Cotton
3076a81347 Fix: Revert change to ObjectBrowser 2012-08-09 23:24:36 -05:00
James Cotton
5443dbb4ca AndroidGCS: Start supporting NAK and having uavTalk emit a transaction failed
and succeeded call.  Had to change the mask on the AndroidGCS side to match the
FC side.
2012-08-09 23:23:38 -05:00
James Cotton
c7abc42c5e Remove unused TelemetryManager file 2012-08-08 22:58:00 -05:00
James Cotton
fcb3e8c152 AndroidGCS: Check in a FragmentTester class and add it to the home page.
Use it to the beginnings of the MapPosition fragment.
2012-08-08 19:15:03 -05:00
James Cotton
f530702ce9 Merge branch 'android' into sim_android
Conflicts:
	androidgcs/AndroidManifest.xml
	androidgcs/res/layout/gcs_home.xml
	androidgcs/res/layout/pfd.xml
	androidgcs/res/layout/system_alarms.xml
	androidgcs/src/org/openpilot/androidgcs/AttitudeView.java
	androidgcs/src/org/openpilot/androidgcs/BluetoothDevicePreference.java
	androidgcs/src/org/openpilot/androidgcs/CompassView.java
	androidgcs/src/org/openpilot/androidgcs/Controller.java
	androidgcs/src/org/openpilot/androidgcs/HomePage.java
	androidgcs/src/org/openpilot/androidgcs/Logger.java
	androidgcs/src/org/openpilot/androidgcs/ObjectBrowser.java
	androidgcs/src/org/openpilot/androidgcs/ObjectEditor.java
	androidgcs/src/org/openpilot/androidgcs/ObjectManagerActivity.java
	androidgcs/src/org/openpilot/androidgcs/Preferences.java
	androidgcs/src/org/openpilot/androidgcs/SystemAlarmActivity.java
	androidgcs/src/org/openpilot/androidgcs/TelemetryWidget.java
	androidgcs/src/org/openpilot/androidgcs/UAVLocation.java
	androidgcs/src/org/openpilot/uavtalk/Telemetry.java
	androidgcs/src/org/openpilot/uavtalk/TelemetryMonitor.java
	androidgcs/src/org/openpilot/uavtalk/UAVDataObject.java
	androidgcs/src/org/openpilot/uavtalk/UAVMetaObject.java
	androidgcs/src/org/openpilot/uavtalk/UAVObject.java
	androidgcs/src/org/openpilot/uavtalk/UAVObjectField.java
	androidgcs/src/org/openpilot/uavtalk/UAVObjectManager.java
	androidgcs/src/org/openpilot/uavtalk/UAVTalk.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/AltitudeHoldSettings.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/FirmwareIAPObj.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/FlightBatterySettings.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/FlightBatteryState.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/FlightStatus.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/HomeLocation.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/HwSettings.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/ManualControlSettings.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/OveroSyncStats.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/PositionActual.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/RevoCalibration.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/SystemAlarms.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/TaskInfo.java
	androidgcs/src/org/openpilot/uavtalk/uavobjects/UAVObjectsInitialize.java
	flight/Modules/GPS/GPS.c
2012-08-08 15:50:28 -05:00
James Cotton
41a46258be AndroidGCS: Change Sambas to not crash in AVD for bluetooth or if there are no
devices.
2012-08-08 13:43:09 -05:00
James Cotton
dd0a5b2cf2 AndroidGCS: Make home page buttons more vertical to work better on phones.
Maybe someone could make these automatically space out?
2012-08-08 13:17:30 -05:00
James Cotton
11a08c186c AndroidGCS: Refactor the Fragments into their own package to keep the UI
"components" segregated.  Is this good practice though?  It means making a lot
of functions for the API between ObjectManagerActivity and Fragment public.
2012-08-08 13:14:38 -05:00
James Cotton
95dfc88f95 AndroidGCS: Move the PFD functionality into a fragment and then
programmatically instantiate that from the test PFD activity
2012-08-08 13:14:01 -05:00
James Cotton
ce52b4d199 AndroidGCS: Get telemetry service working again properly when in multiple
packages.  Have to declare the full service name in AndroidManifest.xml which
seems not ideal.
2012-08-08 13:08:19 -05:00
James Cotton
ae36f39f1a AndroidGCS: Show some less shitty graphics for PFD 2012-08-08 12:20:29 -05:00
James Cotton
2e554ebf8e AndroidGCS: Move down some of the debugging output 2012-08-08 10:07:03 -05:00
James Cotton
ddb197a15d AndroidGCS: Move the telemetry functionality into its own package 2012-08-08 10:04:52 -05:00
James Cotton
07074ef41e AndroidGCS: Add copyright header of the other files 2012-08-08 09:22:09 -05:00
James Cotton
dc6b3af707 AndroidGCS: Add copyright headers to the UAVTalk/UAVObject/Telemetry implementations. 2012-08-08 09:06:31 -05:00