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

6394 Commits

Author SHA1 Message Date
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